New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 684065 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Dec 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome , Mac
Pri: 1
Type: Bug

Blocking:
issue 632399



Sign in to add a comment

Tracker for Media Remoting integration testing

Project Member Reported by m...@chromium.org, Jan 23 2017

Issue description

The current vision here is to have both:

1. End-to-end tests: Most of the normal media stack's integration tests should be run using a full remoting pipeline sender <--> RPC <--> receiver set-up. This is to confirm the media pipeline behaves correctly whether it is playing back locally or through the remoting pipeline. The end-to-end tests should be testing normal use cases, known-breaking use cases (for correct fallback/abort functionality), and stress testing (such as rapid switching, high-volume data, etc.)

2. Media Router browser tests: Includes an extension that mocks a remoting receiver and confirms all startup/shutdown/RPC plumbing works throughout the renderer/browser process and extension API layer.

OTOH, some big things that need to be done as a prerequisite:

1. Some/most of the receiver-side remoting code should be moved into the Chromium tree. We need to make sure any changes to code structure within the Chromium project is not bound by code that exists in external projects (sans public interfaces designed specifically for that).

2. Clean-up/consolidation of Cast extension APIs. In particular, we should stop sending control messages as plain strings that are parsed in the browser process. Our plethora of rather separate (and needing clean-up) internal extension APIs (streaming session, rtp, cast channel, etc.) should be consolidated into a simpler Mojo-based interface.

 
Labels: -M-58 M-59

Comment 2 by m...@chromium.org, Mar 25 2017

Cc: -x...@chromium.org m...@chromium.org
Owner: x...@chromium.org
Status: Started (was: Assigned)
xjz wrote two changes on this I still need to review. We are putting this on a very short-term hold as we work on other high-priority things.
Project Member

Comment 3 by bugdroid1@chromium.org, Apr 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/60d4e0a63eb3f2be26aca1281be29c64b0f5c670

commit 60d4e0a63eb3f2be26aca1281be29c64b0f5c670
Author: xjz <xjz@chromium.org>
Date: Fri Apr 07 01:37:49 2017

Media Remoting: End to end integration tests.

Add end to end integration tests for Media Remoting. Refactors
PipelineIntegrationTest to test both media and media remoting pipeline.
Re-use current tests. No new tests are added in this CL.

BUG= 684065 

Review-Url: https://codereview.chromium.org/2692593002
Cr-Commit-Position: refs/heads/master@{#462739}

[modify] https://crrev.com/60d4e0a63eb3f2be26aca1281be29c64b0f5c670/media/remoting/BUILD.gn
[add] https://crrev.com/60d4e0a63eb3f2be26aca1281be29c64b0f5c670/media/remoting/end2end_test_renderer.cc
[add] https://crrev.com/60d4e0a63eb3f2be26aca1281be29c64b0f5c670/media/remoting/end2end_test_renderer.h
[add] https://crrev.com/60d4e0a63eb3f2be26aca1281be29c64b0f5c670/media/remoting/receiver.cc
[add] https://crrev.com/60d4e0a63eb3f2be26aca1281be29c64b0f5c670/media/remoting/receiver.h
[add] https://crrev.com/60d4e0a63eb3f2be26aca1281be29c64b0f5c670/media/remoting/stream_provider.cc
[add] https://crrev.com/60d4e0a63eb3f2be26aca1281be29c64b0f5c670/media/remoting/stream_provider.h
[modify] https://crrev.com/60d4e0a63eb3f2be26aca1281be29c64b0f5c670/media/test/BUILD.gn
[modify] https://crrev.com/60d4e0a63eb3f2be26aca1281be29c64b0f5c670/media/test/pipeline_integration_test.cc
[modify] https://crrev.com/60d4e0a63eb3f2be26aca1281be29c64b0f5c670/media/test/pipeline_integration_test_base.cc
[modify] https://crrev.com/60d4e0a63eb3f2be26aca1281be29c64b0f5c670/media/test/pipeline_integration_test_base.h

Project Member

Comment 4 by bugdroid1@chromium.org, Apr 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b1b017627acf79bdb62b1fa273d45e87fed29b5b

commit b1b017627acf79bdb62b1fa273d45e87fed29b5b
Author: findit-for-me <findit-for-me@appspot.gserviceaccount.com>
Date: Fri Apr 07 04:16:31 2017

Revert of Media Remoting: End to end integration tests. (patchset #4 id:120001 of https://codereview.chromium.org/2692593002/ )

Reason for revert:

Findit identified CL at revision 462739 as the culprit for
failures in the build cycles as shown on:
https://findit-for-me.appspot.com/waterfall/culprit?key=ag9zfmZpbmRpdC1mb3ItbWVyRAsSDVdmU3VzcGVjdGVkQ0wiMWNocm9taXVtLzYwZDRlMGE2M2ViM2YyYmUyNmFjYTEyODFiZTI5YzY0YjBmNWM2NzAM

Original issue's description:
> Media Remoting: End to end integration tests.
>
> Add end to end integration tests for Media Remoting. Refactors
> PipelineIntegrationTest to test both media and media remoting pipeline.
> Re-use current tests. No new tests are added in this CL.
>
> BUG= 684065 
>
> Review-Url: https://codereview.chromium.org/2692593002
> Cr-Commit-Position: refs/heads/master@{#462739}
> Committed: https://chromium.googlesource.com/chromium/src/+/60d4e0a63eb3f2be26aca1281be29c64b0f5c670

TBR=miu@chromium.org,sandersd@chromium.org,xjz@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 684065 

Review-Url: https://codereview.chromium.org/2804183002
Cr-Commit-Position: refs/heads/master@{#462744}

[modify] https://crrev.com/b1b017627acf79bdb62b1fa273d45e87fed29b5b/media/remoting/BUILD.gn
[delete] https://crrev.com/c405301b70ada81d162e3c3051e63c0d487c0b94/media/remoting/end2end_test_renderer.cc
[delete] https://crrev.com/c405301b70ada81d162e3c3051e63c0d487c0b94/media/remoting/end2end_test_renderer.h
[delete] https://crrev.com/c405301b70ada81d162e3c3051e63c0d487c0b94/media/remoting/receiver.cc
[delete] https://crrev.com/c405301b70ada81d162e3c3051e63c0d487c0b94/media/remoting/receiver.h
[delete] https://crrev.com/c405301b70ada81d162e3c3051e63c0d487c0b94/media/remoting/stream_provider.cc
[delete] https://crrev.com/c405301b70ada81d162e3c3051e63c0d487c0b94/media/remoting/stream_provider.h
[modify] https://crrev.com/b1b017627acf79bdb62b1fa273d45e87fed29b5b/media/test/BUILD.gn
[modify] https://crrev.com/b1b017627acf79bdb62b1fa273d45e87fed29b5b/media/test/pipeline_integration_test.cc
[modify] https://crrev.com/b1b017627acf79bdb62b1fa273d45e87fed29b5b/media/test/pipeline_integration_test_base.cc
[modify] https://crrev.com/b1b017627acf79bdb62b1fa273d45e87fed29b5b/media/test/pipeline_integration_test_base.h

Comment 5 by sko...@chromium.org, Apr 19 2017

Ping xjz@: what's the status here?

Comment 6 by x...@chromium.org, Apr 19 2017

Labels: -M-59 M-60
Both integration tests and browser tests are in reviewing.
https://codereview.chromium.org/2808583002/
https://codereview.chromium.org/2724173002/
Project Member

Comment 7 by bugdroid1@chromium.org, Apr 21 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/722e67b4d30548006c685f81bfcd6a88858168e1

commit 722e67b4d30548006c685f81bfcd6a88858168e1
Author: xjz <xjz@chromium.org>
Date: Fri Apr 21 01:42:25 2017

RELAND: Media Remoting end to end integration tests.

This is a re-land of https://codereview.chromium.org/2692593002/.
Moved tests for media remoting pipeline out of general
PipelineIntegrationTest.

-------Description of original change follows-------

Media Remoting: End to end integration tests.

Add end to end integration tests for Media Remoting. Refactors
PipelineIntegrationTest to test both media and media remoting pipeline.
Re-use current tests. No new tests are added in this CL.

BUG= 684065 

Review-Url: https://codereview.chromium.org/2808583002
Cr-Commit-Position: refs/heads/master@{#466216}

[modify] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/remoting/BUILD.gn
[add] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/remoting/end2end_test_renderer.cc
[add] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/remoting/end2end_test_renderer.h
[add] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/remoting/integration_test.cc
[add] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/remoting/receiver.cc
[add] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/remoting/receiver.h
[add] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/remoting/stream_provider.cc
[add] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/remoting/stream_provider.h
[modify] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/test/BUILD.gn
[add] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/test/fake_encrypted_media.cc
[add] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/test/fake_encrypted_media.h
[add] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/test/mock_media_source.cc
[add] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/test/mock_media_source.h
[modify] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/test/pipeline_integration_test.cc
[modify] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/test/pipeline_integration_test_base.cc
[modify] https://crrev.com/722e67b4d30548006c685f81bfcd6a88858168e1/media/test/pipeline_integration_test_base.h

What's the latest update on this?

Comment 9 by x...@chromium.org, May 23 2017

Labels: -M-60 M-61
The browser tests CL(https://codereview.chromium.org/2724173002/) was hold off to avoid extra work and merging while a refactoring on mirroring/remoting is on-going.
Any updates? Shall we change the milestone to M62?
Labels: -M-61 M-63
Labels: -M-63 M-64

Comment 13 by x...@chromium.org, Dec 1 2017

Labels: -M-64 M-65

Comment 14 by m...@chromium.org, Dec 4 2017

Status: Fixed (was: Started)
At this point, we've taken this as far as we want to go. There is an in-progress refactoring that will allow us to further improve end-to-end test coverage with much less effort.

Sign in to add a comment