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

Unified Diff: chrome/browser/copresence/chrome_whispernet_client_browsertest.cc

Issue 444373004: Add Audible support to the whispernet client. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/copresence/chrome_whispernet_client_browsertest.cc
diff --git a/chrome/browser/copresence/chrome_whispernet_client_browsertest.cc b/chrome/browser/copresence/chrome_whispernet_client_browsertest.cc
index 469a42d2f14b50d268535cca7fb2c6bce59c84a4..af58438ca36938ca427dd085ae74540b26a6e8ec 100644
--- a/chrome/browser/copresence/chrome_whispernet_client_browsertest.cc
+++ b/chrome/browser/copresence/chrome_whispernet_client_browsertest.cc
@@ -21,6 +21,9 @@
namespace {
+const char kFiveZeros[] = "MDAwMDA=";
+const char kSixZeros[] = "MDAwMDAw";
+
// Copied from src/components/copresence/mediums/audio/audio_recorder.cc
std::string AudioBusToString(scoped_refptr<media::AudioBusRefCounted> source) {
std::string buffer;
@@ -59,32 +62,33 @@ class ChromeWhispernetClientTest : public ExtensionBrowserTest {
EXPECT_TRUE(initialized_);
}
- void EncodeTokenAndSaveSamples() {
+ void EncodeTokenAndSaveSamples(bool audible) {
ASSERT_TRUE(client_);
- // This is the base64 encoding for 000000.
- const std::string kZeroToken = "MDAwMDAw";
+ // Use a 40bit token for audible encoding, 48bit for inaudible.
+ const std::string kZeros = audible ? kFiveZeros : kSixZeros;
run_loop_.reset(new base::RunLoop());
client_->RegisterSamplesCallback(base::Bind(
&ChromeWhispernetClientTest::SamplesCallback, base::Unretained(this)));
- expected_token_ = kZeroToken;
+ expected_token_ = kZeros;
- client_->EncodeToken(kZeroToken);
+ client_->EncodeToken(kZeros);
run_loop_->Run();
EXPECT_GT(saved_samples_->frames(), 0);
}
- void DecodeSamplesAndVerifyToken() {
+ void DecodeSamplesAndVerifyToken(bool audible) {
ASSERT_TRUE(client_);
- const std::string kZeroToken = "MDAwMDAw";
+ // Use a 40bit token for audible encoding, 48bit for inaudible.
+ const std::string kZeros = audible ? kFiveZeros : kSixZeros;
run_loop_.reset(new base::RunLoop());
client_->RegisterTokensCallback(base::Bind(
&ChromeWhispernetClientTest::TokensCallback, base::Unretained(this)));
- expected_token_ = kZeroToken;
+ expected_token_ = kZeros;
Charlie 2014/08/07 17:28:53 nit: You could also replace kZeros with calls to t
rkc 2014/08/07 17:36:58 Done.
Charlie 2014/08/07 17:43:52 I was thinking you could use getToken() everywhere
ASSERT_GT(saved_samples_->frames(), 0);
@@ -162,18 +166,24 @@ IN_PROC_BROWSER_TEST_F(ChromeWhispernetClientTest, Initialize) {
IN_PROC_BROWSER_TEST_F(ChromeWhispernetClientTest, EncodeToken) {
InitializeWhispernet();
- EncodeTokenAndSaveSamples();
+ EncodeTokenAndSaveSamples(false);
}
IN_PROC_BROWSER_TEST_F(ChromeWhispernetClientTest, DecodeSamples) {
InitializeWhispernet();
- EncodeTokenAndSaveSamples();
- DecodeSamplesAndVerifyToken();
+ EncodeTokenAndSaveSamples(false);
+ DecodeSamplesAndVerifyToken(false);
}
IN_PROC_BROWSER_TEST_F(ChromeWhispernetClientTest, DetectBroadcast) {
InitializeWhispernet();
- EncodeTokenAndSaveSamples();
- DecodeSamplesAndVerifyToken();
+ EncodeTokenAndSaveSamples(false);
+ DecodeSamplesAndVerifyToken(false);
DetectBroadcast();
}
+
+IN_PROC_BROWSER_TEST_F(ChromeWhispernetClientTest, Audible) {
+ InitializeWhispernet();
+ EncodeTokenAndSaveSamples(true);
+ DecodeSamplesAndVerifyToken(true);
+}
« no previous file with comments | « chrome/browser/copresence/chrome_whispernet_client.cc ('k') | chrome/browser/resources/whispernet_proxy/js/wrapper.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698