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

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

Issue 969843002: Two small bugfixes (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixing test name Created 5 years, 10 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
« no previous file with comments | « no previous file | chrome/browser/resources/whispernet_proxy/js/nacl.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 61d3b3cbd5e1af6e1587b31e7f26c4006c802219..20b47215fb97ec71e118d981aac7fe511f506b30 100644
--- a/chrome/browser/copresence/chrome_whispernet_client_browsertest.cc
+++ b/chrome/browser/copresence/chrome_whispernet_client_browsertest.cc
@@ -33,7 +33,7 @@ using audio_modem::TokenParameters;
namespace {
-// TODO(rkc): Add more varied test input.
+// TODO(ckehoe): Use randomly generated tokens instead.
const char kSixZeros[] = "MDAwMDAw";
const char kEightZeros[] = "MDAwMDAwMDA";
const char kNineZeros[] = "MDAwMDAwMDAw";
@@ -114,7 +114,8 @@ class ChromeWhispernetClientTest : public ExtensionBrowserTest,
void EncodeTokenAndSaveSamples(WhispernetClient* client,
bool audible,
- const std::string& token) {
+ const std::string& token,
+ const TokenParameters token_params[2]) {
run_loop_.reset(new base::RunLoop());
client->RegisterSamplesCallback(
base::Bind(&ChromeWhispernetClientTest::SamplesCallback,
@@ -122,7 +123,6 @@ class ChromeWhispernetClientTest : public ExtensionBrowserTest,
expected_token_ = token;
expected_audible_ = audible;
- TokenParameters token_params[2];
client->EncodeToken(token, audible ? AUDIBLE : INAUDIBLE, token_params);
run_loop_->Run();
@@ -236,11 +236,13 @@ class ChromeWhispernetClientTest : public ExtensionBrowserTest,
#define MAYBE_Initialize DISABLED_Initialize
#define MAYBE_EncodeAndDecode DISABLED_EncodeAndDecode
#define MAYBE_TokenLengths DISABLED_TokenLengths
+#define MAYBE_Crc DISABLED_Crc
#define MAYBE_MultipleClients DISABLED_MultipleClients
#else
#define MAYBE_Initialize Initialize
#define MAYBE_EncodeAndDecode EncodeAndDecode
#define MAYBE_TokenLengths TokenLengths
+#define MAYBE_Crc Crc
#define MAYBE_MultipleClients MultipleClients
#endif
@@ -257,10 +259,10 @@ IN_PROC_BROWSER_TEST_F(ChromeWhispernetClientTest, MAYBE_EncodeAndDecode) {
TokenParameters token_params[2];
GetTokenParamsForLengths(kTokenLengths, token_params);
- EncodeTokenAndSaveSamples(client.get(), true, kSixZeros);
+ EncodeTokenAndSaveSamples(client.get(), true, kSixZeros, token_params);
DecodeSamplesAndVerifyToken(client.get(), true, kSixZeros, token_params);
- EncodeTokenAndSaveSamples(client.get(), false, kSixZeros);
+ EncodeTokenAndSaveSamples(client.get(), false, kSixZeros, token_params);
DecodeSamplesAndVerifyToken(client.get(), false, kSixZeros, token_params);
}
@@ -274,13 +276,31 @@ IN_PROC_BROWSER_TEST_F(ChromeWhispernetClientTest, MAYBE_TokenLengths) {
TokenParameters token_params[2];
GetTokenParamsForLengths(kLongTokenLengths, token_params);
- EncodeTokenAndSaveSamples(client.get(), true, kEightZeros);
+ EncodeTokenAndSaveSamples(client.get(), true, kEightZeros, token_params);
DecodeSamplesAndVerifyToken(client.get(), true, kEightZeros, token_params);
- EncodeTokenAndSaveSamples(client.get(), false, kNineZeros);
+ EncodeTokenAndSaveSamples(client.get(), false, kNineZeros, token_params);
DecodeSamplesAndVerifyToken(client.get(), false, kNineZeros, token_params);
}
+IN_PROC_BROWSER_TEST_F(ChromeWhispernetClientTest, MAYBE_Crc) {
+ scoped_ptr<WhispernetClient> client(
+ new ChromeWhispernetClient(browser()->profile()));
+ client->Initialize(base::Bind(&IgnoreResult));
+ SetupDecode();
+
+ TokenParameters token_params[2];
+ GetTokenParamsForLengths(kTokenLengths, token_params);
+ token_params[0].crc = true;
+ token_params[1].crc = true;
+
+ EncodeTokenAndSaveSamples(client.get(), true, kSixZeros, token_params);
+ DecodeSamplesAndVerifyToken(client.get(), true, kSixZeros, token_params);
+
+ EncodeTokenAndSaveSamples(client.get(), false, kSixZeros, token_params);
+ DecodeSamplesAndVerifyToken(client.get(), false, kSixZeros, token_params);
+}
+
IN_PROC_BROWSER_TEST_F(ChromeWhispernetClientTest, MAYBE_MultipleClients) {
scoped_ptr<WhispernetClient> client_1(
new ChromeWhispernetClient(browser()->profile()));
@@ -297,24 +317,21 @@ IN_PROC_BROWSER_TEST_F(ChromeWhispernetClientTest, MAYBE_MultipleClients) {
client_1->Initialize(base::Bind(&IgnoreResult));
client_2->Initialize(base::Bind(&IgnoreResult));
- EncodeTokenAndSaveSamples(client_1.get(), true, kSixZeros);
+ EncodeTokenAndSaveSamples(client_1.get(), true, kSixZeros, token_params);
DecodeSamplesAndVerifyToken(client_1.get(), true, kSixZeros, token_params);
- EncodeTokenAndSaveSamples(client_2.get(), false, kSixZeros);
+ EncodeTokenAndSaveSamples(client_2.get(), false, kSixZeros, token_params);
DecodeSamplesAndVerifyToken(client_2.get(), false, kSixZeros, token_params);
// Test sequential initialization.
client_3->Initialize(base::Bind(&IgnoreResult));
- EncodeTokenAndSaveSamples(client_3.get(), true, kSixZeros);
+ EncodeTokenAndSaveSamples(client_3.get(), true, kSixZeros, token_params);
DecodeSamplesAndVerifyToken(client_3.get(), true, kSixZeros, token_params);
const size_t kLongTokenLengths[2] = {8, 9};
GetTokenParamsForLengths(kLongTokenLengths, token_params);
- EncodeTokenAndSaveSamples(client_2.get(), true, kEightZeros);
+ EncodeTokenAndSaveSamples(client_2.get(), true, kEightZeros, token_params);
DecodeSamplesAndVerifyToken(client_2.get(), true, kEightZeros, token_params);
}
-
-// TODO(ckehoe): Test crc and parity
-// TODO(ckehoe): More multi-client testing
« no previous file with comments | « no previous file | chrome/browser/resources/whispernet_proxy/js/nacl.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698