Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(435)

Side by Side Diff: chrome/browser/media/webrtc/webrtc_audio_quality_browsertest.cc

Issue 2840333004: Allow IO thread usage in WebRTC browsertests (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <stddef.h> 5 #include <stddef.h>
6 6
7 #include <ctime> 7 #include <ctime>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/files/file_enumerator.h" 10 #include "base/files/file_enumerator.h"
(...skipping 18 matching lines...) Expand all
29 #include "chrome/common/chrome_paths.h" 29 #include "chrome/common/chrome_paths.h"
30 #include "chrome/common/chrome_switches.h" 30 #include "chrome/common/chrome_switches.h"
31 #include "chrome/test/base/ui_test_utils.h" 31 #include "chrome/test/base/ui_test_utils.h"
32 #include "content/public/common/content_switches.h" 32 #include "content/public/common/content_switches.h"
33 #include "content/public/test/browser_test_utils.h" 33 #include "content/public/test/browser_test_utils.h"
34 #include "media/base/audio_parameters.h" 34 #include "media/base/audio_parameters.h"
35 #include "media/base/media_switches.h" 35 #include "media/base/media_switches.h"
36 #include "net/test/embedded_test_server/embedded_test_server.h" 36 #include "net/test/embedded_test_server/embedded_test_server.h"
37 #include "testing/perf/perf_test.h" 37 #include "testing/perf/perf_test.h"
38 38
39 #if defined(OS_MACOSX)
40 #include "base/threading/thread_restrictions.h"
41 #endif // defined(OS_MACOSX)
42
39 namespace { 43 namespace {
40 44
41 static const base::FilePath::CharType kReferenceFile[] = 45 static const base::FilePath::CharType kReferenceFile[] =
42 FILE_PATH_LITERAL("speech_44kHz_16bit_stereo.wav"); 46 FILE_PATH_LITERAL("speech_44kHz_16bit_stereo.wav");
43 47
44 // The javascript will load the reference file relative to its location, 48 // The javascript will load the reference file relative to its location,
45 // which is in /webrtc on the web server. The files we are looking for are in 49 // which is in /webrtc on the web server. The files we are looking for are in
46 // webrtc/resources in the chrome/test/data folder. 50 // webrtc/resources in the chrome/test/data folder.
47 static const char kReferenceFileRelativeUrl[] = 51 static const char kReferenceFileRelativeUrl[] =
48 "resources/speech_44kHz_16bit_stereo.wav"; 52 "resources/speech_44kHz_16bit_stereo.wav";
(...skipping 625 matching lines...) Expand 10 before | Expand all | Expand 10 after
674 ASSERT_NO_FATAL_FAILURE(SetupAndRecordAudioCall( 678 ASSERT_NO_FATAL_FAILURE(SetupAndRecordAudioCall(
675 reference_file, recording, constraints, 679 reference_file, recording, constraints,
676 base::TimeDelta::FromSeconds(30))); 680 base::TimeDelta::FromSeconds(30)));
677 681
678 ComputeAndPrintPesqResults(reference_file, recording, perf_modifier); 682 ComputeAndPrintPesqResults(reference_file, recording, perf_modifier);
679 DeleteFileUnlessTestFailed(recording, false); 683 DeleteFileUnlessTestFailed(recording, false);
680 } 684 }
681 685
682 IN_PROC_BROWSER_TEST_F(MAYBE_WebRtcAudioQualityBrowserTest, 686 IN_PROC_BROWSER_TEST_F(MAYBE_WebRtcAudioQualityBrowserTest,
683 MANUAL_TestCallQualityWithAudioFromFakeDevice) { 687 MANUAL_TestCallQualityWithAudioFromFakeDevice) {
688 // crbug.com/684680
689 #if defined(OS_MACOSX)
690 base::ThreadRestrictions::ScopedAllowIO allow_io;
691 #endif // defined(OS_MACOSX)
684 TestWithFakeDeviceGetUserMedia(kAudioOnlyCallConstraints, "_getusermedia"); 692 TestWithFakeDeviceGetUserMedia(kAudioOnlyCallConstraints, "_getusermedia");
685 } 693 }
686 694
687 IN_PROC_BROWSER_TEST_F(MAYBE_WebRtcAudioQualityBrowserTest, 695 IN_PROC_BROWSER_TEST_F(MAYBE_WebRtcAudioQualityBrowserTest,
688 MANUAL_TestCallQualityWithAudioFromWebAudio) { 696 MANUAL_TestCallQualityWithAudioFromWebAudio) {
697 // crbug.com/684680
698 #if defined(OS_MACOSX)
699 base::ThreadRestrictions::ScopedAllowIO allow_io;
700 #endif // defined(OS_MACOSX)
689 if (OnWin8()) { 701 if (OnWin8()) {
690 // http://crbug.com/379798. 702 // http://crbug.com/379798.
691 LOG(ERROR) << "This test is not implemented for Windows XP/Win8."; 703 LOG(ERROR) << "This test is not implemented for Windows XP/Win8.";
692 return; 704 return;
693 } 705 }
694 ASSERT_TRUE(test::HasReferenceFilesInCheckout()); 706 ASSERT_TRUE(test::HasReferenceFilesInCheckout());
695 ASSERT_TRUE(embedded_test_server()->Start()); 707 ASSERT_TRUE(embedded_test_server()->Start());
696 708
697 ASSERT_TRUE(ForceMicrophoneVolumeTo100Percent()); 709 ASSERT_TRUE(ForceMicrophoneVolumeTo100Percent());
698 710
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
794 AnalyzeSegmentsAndPrintResult( 806 AnalyzeSegmentsAndPrintResult(
795 ref_segments, actual_segments, reference_file, perf_modifier); 807 ref_segments, actual_segments, reference_file, perf_modifier);
796 808
797 DeleteFileUnlessTestFailed(recording, false); 809 DeleteFileUnlessTestFailed(recording, false);
798 DeleteFileUnlessTestFailed(actual_files_dir, true); 810 DeleteFileUnlessTestFailed(actual_files_dir, true);
799 } 811 }
800 812
801 // The AGC should apply non-zero gain here. 813 // The AGC should apply non-zero gain here.
802 IN_PROC_BROWSER_TEST_F(MAYBE_WebRtcAudioQualityBrowserTest, 814 IN_PROC_BROWSER_TEST_F(MAYBE_WebRtcAudioQualityBrowserTest,
803 MANUAL_TestAutoGainControlOnLowAudio) { 815 MANUAL_TestAutoGainControlOnLowAudio) {
816 // crbug.com/684680
817 #if defined(OS_MACOSX)
818 base::ThreadRestrictions::ScopedAllowIO allow_io;
819 #endif // defined(OS_MACOSX)
804 ASSERT_NO_FATAL_FAILURE(TestAutoGainControl( 820 ASSERT_NO_FATAL_FAILURE(TestAutoGainControl(
805 kReferenceFile, kAudioOnlyCallConstraints, "_with_agc")); 821 kReferenceFile, kAudioOnlyCallConstraints, "_with_agc"));
806 } 822 }
807 823
808 // Since the AGC is off here there should be no gain at all. 824 // Since the AGC is off here there should be no gain at all.
809 IN_PROC_BROWSER_TEST_F(MAYBE_WebRtcAudioQualityBrowserTest, 825 IN_PROC_BROWSER_TEST_F(MAYBE_WebRtcAudioQualityBrowserTest,
810 MANUAL_TestAutoGainIsOffWithAudioProcessingOff) { 826 MANUAL_TestAutoGainIsOffWithAudioProcessingOff) {
827 // crbug.com/684680
828 #if defined(OS_MACOSX)
829 base::ThreadRestrictions::ScopedAllowIO allow_io;
830 #endif // defined(OS_MACOSX)
811 const char* kAudioCallWithoutAudioProcessing = 831 const char* kAudioCallWithoutAudioProcessing =
812 "{audio: { mandatory: { echoCancellation: false } } }"; 832 "{audio: { mandatory: { echoCancellation: false } } }";
813 ASSERT_NO_FATAL_FAILURE(TestAutoGainControl( 833 ASSERT_NO_FATAL_FAILURE(TestAutoGainControl(
814 kReferenceFile, kAudioCallWithoutAudioProcessing, "_no_agc")); 834 kReferenceFile, kAudioCallWithoutAudioProcessing, "_no_agc"));
815 } 835 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698