OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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 "chrome/browser/profile_resetter/jtl_interpreter.h" | 5 #include "chrome/browser/profile_resetter/jtl_interpreter.h" |
6 | 6 |
7 #include <numeric> | 7 #include <numeric> |
8 | 8 |
9 #include "base/strings/string_util.h" | 9 #include "base/strings/string_util.h" |
10 #include "base/test/values_test_util.h" | 10 #include "base/test/values_test_util.h" |
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
216 { VALUE_TRUE, "{ 'KEY_HASH_1': true }", true }, | 216 { VALUE_TRUE, "{ 'KEY_HASH_1': true }", true }, |
217 { VALUE_FALSE, "{ 'KEY_HASH_1': false }", true }, | 217 { VALUE_FALSE, "{ 'KEY_HASH_1': false }", true }, |
218 { VALUE_TRUE, "{ 'KEY_HASH_1': false }", false }, | 218 { VALUE_TRUE, "{ 'KEY_HASH_1': false }", false }, |
219 { VALUE_TRUE, "{ 'KEY_HASH_1': 'abc' }", false }, | 219 { VALUE_TRUE, "{ 'KEY_HASH_1': 'abc' }", false }, |
220 { VALUE_TRUE, "{ 'KEY_HASH_1': 1 }", false }, | 220 { VALUE_TRUE, "{ 'KEY_HASH_1': 1 }", false }, |
221 { VALUE_TRUE, "{ 'KEY_HASH_1': 1.2 }", false }, | 221 { VALUE_TRUE, "{ 'KEY_HASH_1': 1.2 }", false }, |
222 { VALUE_TRUE, "{ 'KEY_HASH_1': [1] }", false }, | 222 { VALUE_TRUE, "{ 'KEY_HASH_1': [1] }", false }, |
223 { VALUE_TRUE, "{ 'KEY_HASH_1': {'a': 'b'} }", false }, | 223 { VALUE_TRUE, "{ 'KEY_HASH_1': {'a': 'b'} }", false }, |
224 }; | 224 }; |
225 | 225 |
226 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) { | 226 for (size_t i = 0; i < arraysize(cases); ++i) { |
227 SCOPED_TRACE(testing::Message() << "Iteration " << i); | 227 SCOPED_TRACE(testing::Message() << "Iteration " << i); |
228 INIT_INTERPRETER( | 228 INIT_INTERPRETER( |
229 OP_NAVIGATE(KEY_HASH_1) + | 229 OP_NAVIGATE(KEY_HASH_1) + |
230 OP_COMPARE_NODE_BOOL(cases[i].expected_value) + | 230 OP_COMPARE_NODE_BOOL(cases[i].expected_value) + |
231 OP_STORE_BOOL(VAR_HASH_1, VALUE_TRUE), | 231 OP_STORE_BOOL(VAR_HASH_1, VALUE_TRUE), |
232 cases[i].json); | 232 cases[i].json); |
233 EXPECT_EQ(JtlInterpreter::OK, interpreter.result()); | 233 EXPECT_EQ(JtlInterpreter::OK, interpreter.result()); |
234 if (cases[i].expected_success) { | 234 if (cases[i].expected_success) { |
235 base::ExpectDictBooleanValue( | 235 base::ExpectDictBooleanValue( |
236 true, *interpreter.working_memory(), VAR_HASH_1); | 236 true, *interpreter.working_memory(), VAR_HASH_1); |
(...skipping 27 matching lines...) Expand all Loading... |
264 | 264 |
265 { GetHash("1"), "{ 'KEY_HASH_1': 1 }", true }, | 265 { GetHash("1"), "{ 'KEY_HASH_1': 1 }", true }, |
266 { GetHash("1"), "{ 'KEY_HASH_1': 'VALUE_HASH_1' }", false }, | 266 { GetHash("1"), "{ 'KEY_HASH_1': 'VALUE_HASH_1' }", false }, |
267 { GetHash("1"), "{ 'KEY_HASH_1': true }", false }, | 267 { GetHash("1"), "{ 'KEY_HASH_1': true }", false }, |
268 { GetHash("1"), "{ 'KEY_HASH_1': 2 }", false }, | 268 { GetHash("1"), "{ 'KEY_HASH_1': 2 }", false }, |
269 { GetHash("1"), "{ 'KEY_HASH_1': 1.1 }", false }, | 269 { GetHash("1"), "{ 'KEY_HASH_1': 1.1 }", false }, |
270 { GetHash("1"), "{ 'KEY_HASH_1': [1] }", false }, | 270 { GetHash("1"), "{ 'KEY_HASH_1': [1] }", false }, |
271 { GetHash("1"), "{ 'KEY_HASH_1': {'a': 'b'} }", false }, | 271 { GetHash("1"), "{ 'KEY_HASH_1': {'a': 'b'} }", false }, |
272 }; | 272 }; |
273 | 273 |
274 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) { | 274 for (size_t i = 0; i < arraysize(cases); ++i) { |
275 SCOPED_TRACE(testing::Message() << "Iteration " << i); | 275 SCOPED_TRACE(testing::Message() << "Iteration " << i); |
276 INIT_INTERPRETER( | 276 INIT_INTERPRETER( |
277 OP_NAVIGATE(KEY_HASH_1) + | 277 OP_NAVIGATE(KEY_HASH_1) + |
278 OP_COMPARE_NODE_HASH(cases[i].expected_value) + | 278 OP_COMPARE_NODE_HASH(cases[i].expected_value) + |
279 OP_STORE_BOOL(VAR_HASH_1, VALUE_TRUE), | 279 OP_STORE_BOOL(VAR_HASH_1, VALUE_TRUE), |
280 cases[i].json); | 280 cases[i].json); |
281 EXPECT_EQ(JtlInterpreter::OK, interpreter.result()); | 281 EXPECT_EQ(JtlInterpreter::OK, interpreter.result()); |
282 if (cases[i].expected_success) { | 282 if (cases[i].expected_success) { |
283 base::ExpectDictBooleanValue( | 283 base::ExpectDictBooleanValue( |
284 true, *interpreter.working_memory(), VAR_HASH_1); | 284 true, *interpreter.working_memory(), VAR_HASH_1); |
285 } else { | 285 } else { |
286 EXPECT_FALSE(interpreter.working_memory()->HasKey(VAR_HASH_1)); | 286 EXPECT_FALSE(interpreter.working_memory()->HasKey(VAR_HASH_1)); |
287 } | 287 } |
288 } | 288 } |
289 | 289 |
290 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) { | 290 for (size_t i = 0; i < arraysize(cases); ++i) { |
291 SCOPED_TRACE(testing::Message() << "Negated, Iteration " << i); | 291 SCOPED_TRACE(testing::Message() << "Negated, Iteration " << i); |
292 INIT_INTERPRETER( | 292 INIT_INTERPRETER( |
293 OP_NAVIGATE(KEY_HASH_1) + | 293 OP_NAVIGATE(KEY_HASH_1) + |
294 OP_COMPARE_NODE_HASH_NOT(cases[i].expected_value) + | 294 OP_COMPARE_NODE_HASH_NOT(cases[i].expected_value) + |
295 OP_STORE_BOOL(VAR_HASH_1, VALUE_TRUE), | 295 OP_STORE_BOOL(VAR_HASH_1, VALUE_TRUE), |
296 cases[i].json); | 296 cases[i].json); |
297 EXPECT_EQ(JtlInterpreter::OK, interpreter.result()); | 297 EXPECT_EQ(JtlInterpreter::OK, interpreter.result()); |
298 if (!cases[i].expected_success) { | 298 if (!cases[i].expected_success) { |
299 base::ExpectDictBooleanValue( | 299 base::ExpectDictBooleanValue( |
300 true, *interpreter.working_memory(), VAR_HASH_1); | 300 true, *interpreter.working_memory(), VAR_HASH_1); |
(...skipping 11 matching lines...) Expand all Loading... |
312 } cases[] = { | 312 } cases[] = { |
313 { true, "{ 'KEY_HASH_1': true }", true }, | 313 { true, "{ 'KEY_HASH_1': true }", true }, |
314 { false, "{ 'KEY_HASH_1': false }", true }, | 314 { false, "{ 'KEY_HASH_1': false }", true }, |
315 { false, "{ 'KEY_HASH_1': 'abc' }", false }, | 315 { false, "{ 'KEY_HASH_1': 'abc' }", false }, |
316 { false, "{ 'KEY_HASH_1': 1 }", false }, | 316 { false, "{ 'KEY_HASH_1': 1 }", false }, |
317 { false, "{ 'KEY_HASH_1': 1.2 }", false }, | 317 { false, "{ 'KEY_HASH_1': 1.2 }", false }, |
318 { false, "{ 'KEY_HASH_1': [1] }", false }, | 318 { false, "{ 'KEY_HASH_1': [1] }", false }, |
319 { false, "{ 'KEY_HASH_1': {'a': 'b'} }", false }, | 319 { false, "{ 'KEY_HASH_1': {'a': 'b'} }", false }, |
320 }; | 320 }; |
321 | 321 |
322 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) { | 322 for (size_t i = 0; i < arraysize(cases); ++i) { |
323 SCOPED_TRACE(testing::Message() << "Iteration " << i); | 323 SCOPED_TRACE(testing::Message() << "Iteration " << i); |
324 INIT_INTERPRETER( | 324 INIT_INTERPRETER( |
325 OP_NAVIGATE(KEY_HASH_1) + | 325 OP_NAVIGATE(KEY_HASH_1) + |
326 OP_STORE_NODE_BOOL(VAR_HASH_1) + | 326 OP_STORE_NODE_BOOL(VAR_HASH_1) + |
327 OP_STORE_BOOL(VAR_HASH_2, VALUE_TRUE), | 327 OP_STORE_BOOL(VAR_HASH_2, VALUE_TRUE), |
328 cases[i].json); | 328 cases[i].json); |
329 EXPECT_EQ(JtlInterpreter::OK, interpreter.result()); | 329 EXPECT_EQ(JtlInterpreter::OK, interpreter.result()); |
330 if (cases[i].expected_success) { | 330 if (cases[i].expected_success) { |
331 base::ExpectDictBooleanValue( | 331 base::ExpectDictBooleanValue( |
332 cases[i].expected_value, *interpreter.working_memory(), VAR_HASH_1); | 332 cases[i].expected_value, *interpreter.working_memory(), VAR_HASH_1); |
(...skipping 25 matching lines...) Expand all Loading... |
358 { GetHash("1"), "{ 'KEY_HASH_1': true }", false }, | 358 { GetHash("1"), "{ 'KEY_HASH_1': true }", false }, |
359 { GetHash("1.2"), "{ 'KEY_HASH_1': true }", false }, | 359 { GetHash("1.2"), "{ 'KEY_HASH_1': true }", false }, |
360 | 360 |
361 { VALUE_TRUE, "{ 'KEY_HASH_1': 'VALUE_HASH_1' }", false }, | 361 { VALUE_TRUE, "{ 'KEY_HASH_1': 'VALUE_HASH_1' }", false }, |
362 { VALUE_TRUE, "{ 'KEY_HASH_1': 1 }", false }, | 362 { VALUE_TRUE, "{ 'KEY_HASH_1': 1 }", false }, |
363 { VALUE_TRUE, "{ 'KEY_HASH_1': 1.2 }", false }, | 363 { VALUE_TRUE, "{ 'KEY_HASH_1': 1.2 }", false }, |
364 { VALUE_TRUE, "{ 'KEY_HASH_1': [1] }", false }, | 364 { VALUE_TRUE, "{ 'KEY_HASH_1': [1] }", false }, |
365 { VALUE_TRUE, "{ 'KEY_HASH_1': {'a': 'b'} }", false }, | 365 { VALUE_TRUE, "{ 'KEY_HASH_1': {'a': 'b'} }", false }, |
366 }; | 366 }; |
367 | 367 |
368 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) { | 368 for (size_t i = 0; i < arraysize(cases); ++i) { |
369 SCOPED_TRACE(testing::Message() << "Iteration " << i); | 369 SCOPED_TRACE(testing::Message() << "Iteration " << i); |
370 std::string store_op; | 370 std::string store_op; |
371 if (cases[i].stored_value == VALUE_TRUE || | 371 if (cases[i].stored_value == VALUE_TRUE || |
372 cases[i].stored_value == VALUE_FALSE) | 372 cases[i].stored_value == VALUE_FALSE) |
373 store_op = OP_STORE_BOOL(VAR_HASH_1, cases[i].stored_value); | 373 store_op = OP_STORE_BOOL(VAR_HASH_1, cases[i].stored_value); |
374 else if (!cases[i].stored_value.empty()) | 374 else if (!cases[i].stored_value.empty()) |
375 store_op = OP_STORE_HASH(VAR_HASH_1, cases[i].stored_value); | 375 store_op = OP_STORE_HASH(VAR_HASH_1, cases[i].stored_value); |
376 INIT_INTERPRETER( | 376 INIT_INTERPRETER( |
377 store_op + | 377 store_op + |
378 OP_NAVIGATE(KEY_HASH_1) + | 378 OP_NAVIGATE(KEY_HASH_1) + |
(...skipping 18 matching lines...) Expand all Loading... |
397 } cases[] = { | 397 } cases[] = { |
398 { VALUE_HASH_1, "{ 'KEY_HASH_1': 'VALUE_HASH_1' }", true }, | 398 { VALUE_HASH_1, "{ 'KEY_HASH_1': 'VALUE_HASH_1' }", true }, |
399 { VALUE_HASH_2, "{ 'KEY_HASH_1': 'VALUE_HASH_2' }", true }, | 399 { VALUE_HASH_2, "{ 'KEY_HASH_1': 'VALUE_HASH_2' }", true }, |
400 { GetHash("1"), "{ 'KEY_HASH_1': 1 }", true }, | 400 { GetHash("1"), "{ 'KEY_HASH_1': 1 }", true }, |
401 { GetHash("1.2"), "{ 'KEY_HASH_1': 1.2 }", true }, | 401 { GetHash("1.2"), "{ 'KEY_HASH_1': 1.2 }", true }, |
402 { std::string(), "{ 'KEY_HASH_1': true }", false }, | 402 { std::string(), "{ 'KEY_HASH_1': true }", false }, |
403 { std::string(), "{ 'KEY_HASH_1': [1] }", false }, | 403 { std::string(), "{ 'KEY_HASH_1': [1] }", false }, |
404 { std::string(), "{ 'KEY_HASH_1': {'a': 'b'} }", false }, | 404 { std::string(), "{ 'KEY_HASH_1': {'a': 'b'} }", false }, |
405 }; | 405 }; |
406 | 406 |
407 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) { | 407 for (size_t i = 0; i < arraysize(cases); ++i) { |
408 SCOPED_TRACE(testing::Message() << "Iteration " << i); | 408 SCOPED_TRACE(testing::Message() << "Iteration " << i); |
409 INIT_INTERPRETER( | 409 INIT_INTERPRETER( |
410 OP_NAVIGATE(KEY_HASH_1) + | 410 OP_NAVIGATE(KEY_HASH_1) + |
411 OP_STORE_NODE_HASH(VAR_HASH_1) + | 411 OP_STORE_NODE_HASH(VAR_HASH_1) + |
412 OP_STORE_BOOL(VAR_HASH_2, VALUE_TRUE), | 412 OP_STORE_BOOL(VAR_HASH_2, VALUE_TRUE), |
413 cases[i].json); | 413 cases[i].json); |
414 EXPECT_EQ(JtlInterpreter::OK, interpreter.result()); | 414 EXPECT_EQ(JtlInterpreter::OK, interpreter.result()); |
415 if (cases[i].expected_success) { | 415 if (cases[i].expected_success) { |
416 base::ExpectDictStringValue( | 416 base::ExpectDictStringValue( |
417 cases[i].expected_value, *interpreter.working_memory(), VAR_HASH_1); | 417 cases[i].expected_value, *interpreter.working_memory(), VAR_HASH_1); |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
463 { VALUE_TRUE, "{ 'KEY_HASH_1': 'VALUE_HASH_1' }", false }, | 463 { VALUE_TRUE, "{ 'KEY_HASH_1': 'VALUE_HASH_1' }", false }, |
464 { VALUE_TRUE, "{ 'KEY_HASH_1': 1 }", false }, | 464 { VALUE_TRUE, "{ 'KEY_HASH_1': 1 }", false }, |
465 { VALUE_TRUE, "{ 'KEY_HASH_1': 1.3 }", false }, | 465 { VALUE_TRUE, "{ 'KEY_HASH_1': 1.3 }", false }, |
466 { VALUE_TRUE, "{ 'KEY_HASH_1': [1] }", false }, | 466 { VALUE_TRUE, "{ 'KEY_HASH_1': [1] }", false }, |
467 { VALUE_TRUE, "{ 'KEY_HASH_1': {'a': 'b'} }", false }, | 467 { VALUE_TRUE, "{ 'KEY_HASH_1': {'a': 'b'} }", false }, |
468 | 468 |
469 { VALUE_TRUE, "{ 'KEY_HASH_1': true }", false }, | 469 { VALUE_TRUE, "{ 'KEY_HASH_1': true }", false }, |
470 { VALUE_FALSE, "{ 'KEY_HASH_1': false }", false }, | 470 { VALUE_FALSE, "{ 'KEY_HASH_1': false }", false }, |
471 }; | 471 }; |
472 | 472 |
473 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) { | 473 for (size_t i = 0; i < arraysize(cases); ++i) { |
474 SCOPED_TRACE(testing::Message() << "Iteration " << i); | 474 SCOPED_TRACE(testing::Message() << "Iteration " << i); |
475 std::string store_op; | 475 std::string store_op; |
476 if (cases[i].stored_value == VALUE_TRUE || | 476 if (cases[i].stored_value == VALUE_TRUE || |
477 cases[i].stored_value == VALUE_FALSE) | 477 cases[i].stored_value == VALUE_FALSE) |
478 store_op = OP_STORE_BOOL(VAR_HASH_1, cases[i].stored_value); | 478 store_op = OP_STORE_BOOL(VAR_HASH_1, cases[i].stored_value); |
479 else if (!cases[i].stored_value.empty()) | 479 else if (!cases[i].stored_value.empty()) |
480 store_op = OP_STORE_HASH(VAR_HASH_1, cases[i].stored_value); | 480 store_op = OP_STORE_HASH(VAR_HASH_1, cases[i].stored_value); |
481 INIT_INTERPRETER( | 481 INIT_INTERPRETER( |
482 store_op + | 482 store_op + |
483 OP_NAVIGATE(KEY_HASH_1) + | 483 OP_NAVIGATE(KEY_HASH_1) + |
(...skipping 24 matching lines...) Expand all Loading... |
508 { "acd", "{ 'KEY_HASH_1': 'abcdefghijklmnopqrstuvwxyz' }", false }, | 508 { "acd", "{ 'KEY_HASH_1': 'abcdefghijklmnopqrstuvwxyz' }", false }, |
509 { "waaaaaaay_too_long", "{ 'KEY_HASH_1': 'abc' }", false }, | 509 { "waaaaaaay_too_long", "{ 'KEY_HASH_1': 'abc' }", false }, |
510 | 510 |
511 { VALUE_HASH_1, "{ 'KEY_HASH_1': true }", false }, | 511 { VALUE_HASH_1, "{ 'KEY_HASH_1': true }", false }, |
512 { VALUE_HASH_1, "{ 'KEY_HASH_1': 1 }", false }, | 512 { VALUE_HASH_1, "{ 'KEY_HASH_1': 1 }", false }, |
513 { VALUE_HASH_1, "{ 'KEY_HASH_1': 1.1 }", false }, | 513 { VALUE_HASH_1, "{ 'KEY_HASH_1': 1.1 }", false }, |
514 { VALUE_HASH_1, "{ 'KEY_HASH_1': [1] }", false }, | 514 { VALUE_HASH_1, "{ 'KEY_HASH_1': [1] }", false }, |
515 { VALUE_HASH_1, "{ 'KEY_HASH_1': {'a': 'b'} }", false }, | 515 { VALUE_HASH_1, "{ 'KEY_HASH_1': {'a': 'b'} }", false }, |
516 }; | 516 }; |
517 | 517 |
518 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) { | 518 for (size_t i = 0; i < arraysize(cases); ++i) { |
519 SCOPED_TRACE(testing::Message() << "Iteration " << i); | 519 SCOPED_TRACE(testing::Message() << "Iteration " << i); |
520 std::string pattern = cases[i].pattern; | 520 std::string pattern = cases[i].pattern; |
521 uint32 pattern_sum = std::accumulate( | 521 uint32 pattern_sum = std::accumulate( |
522 pattern.begin(), pattern.end(), static_cast<uint32>(0u)); | 522 pattern.begin(), pattern.end(), static_cast<uint32>(0u)); |
523 INIT_INTERPRETER( | 523 INIT_INTERPRETER( |
524 OP_NAVIGATE(KEY_HASH_1) + | 524 OP_NAVIGATE(KEY_HASH_1) + |
525 OP_COMPARE_NODE_SUBSTRING(GetHash(pattern), | 525 OP_COMPARE_NODE_SUBSTRING(GetHash(pattern), |
526 EncodeUint32(pattern.size()), | 526 EncodeUint32(pattern.size()), |
527 EncodeUint32(pattern_sum)) + | 527 EncodeUint32(pattern_sum)) + |
528 OP_STORE_BOOL(VAR_HASH_1, VALUE_TRUE), | 528 OP_STORE_BOOL(VAR_HASH_1, VALUE_TRUE), |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
562 { std::string(), "{ 'KEY_HASH_1': 'http://127.0.0.1/path' }", false }, | 562 { std::string(), "{ 'KEY_HASH_1': 'http://127.0.0.1/path' }", false }, |
563 { std::string(), "{ 'KEY_HASH_1': 'file:///C:/bar.html' }", false }, | 563 { std::string(), "{ 'KEY_HASH_1': 'file:///C:/bar.html' }", false }, |
564 | 564 |
565 { std::string(), "{ 'KEY_HASH_1': 1 }", false }, | 565 { std::string(), "{ 'KEY_HASH_1': 1 }", false }, |
566 { std::string(), "{ 'KEY_HASH_1': 1.2 }", false }, | 566 { std::string(), "{ 'KEY_HASH_1': 1.2 }", false }, |
567 { std::string(), "{ 'KEY_HASH_1': true }", false }, | 567 { std::string(), "{ 'KEY_HASH_1': true }", false }, |
568 { std::string(), "{ 'KEY_HASH_1': [1] }", false }, | 568 { std::string(), "{ 'KEY_HASH_1': [1] }", false }, |
569 { std::string(), "{ 'KEY_HASH_1': {'a': 'b'} }", false }, | 569 { std::string(), "{ 'KEY_HASH_1': {'a': 'b'} }", false }, |
570 }; | 570 }; |
571 | 571 |
572 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(cases); ++i) { | 572 for (size_t i = 0; i < arraysize(cases); ++i) { |
573 SCOPED_TRACE(testing::Message() << "Iteration " << i); | 573 SCOPED_TRACE(testing::Message() << "Iteration " << i); |
574 INIT_INTERPRETER( | 574 INIT_INTERPRETER( |
575 OP_NAVIGATE(KEY_HASH_1) + | 575 OP_NAVIGATE(KEY_HASH_1) + |
576 OP_STORE_NODE_REGISTERABLE_DOMAIN_HASH(VAR_HASH_1) + | 576 OP_STORE_NODE_REGISTERABLE_DOMAIN_HASH(VAR_HASH_1) + |
577 OP_STORE_BOOL(VAR_HASH_2, VALUE_TRUE), | 577 OP_STORE_BOOL(VAR_HASH_2, VALUE_TRUE), |
578 cases[i].json); | 578 cases[i].json); |
579 EXPECT_EQ(JtlInterpreter::OK, interpreter.result()); | 579 EXPECT_EQ(JtlInterpreter::OK, interpreter.result()); |
580 if (cases[i].expected_success) { | 580 if (cases[i].expected_success) { |
581 base::ExpectDictStringValue( | 581 base::ExpectDictStringValue( |
582 cases[i].expected_value, *interpreter.working_memory(), VAR_HASH_1); | 582 cases[i].expected_value, *interpreter.working_memory(), VAR_HASH_1); |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
680 TEST(JtlInterpreter, CalculateProgramChecksum) { | 680 TEST(JtlInterpreter, CalculateProgramChecksum) { |
681 const char kTestSeed[] = "Irrelevant seed value."; | 681 const char kTestSeed[] = "Irrelevant seed value."; |
682 const char kTestProgram[] = "The quick brown fox jumps over the lazy dog."; | 682 const char kTestProgram[] = "The quick brown fox jumps over the lazy dog."; |
683 // This program is invalid, but we are not actually executing it. | 683 // This program is invalid, but we are not actually executing it. |
684 base::DictionaryValue input; | 684 base::DictionaryValue input; |
685 JtlInterpreter interpreter(kTestSeed, kTestProgram, &input); | 685 JtlInterpreter interpreter(kTestSeed, kTestProgram, &input); |
686 EXPECT_EQ(0xef537f, interpreter.CalculateProgramChecksum()); | 686 EXPECT_EQ(0xef537f, interpreter.CalculateProgramChecksum()); |
687 } | 687 } |
688 | 688 |
689 } // namespace | 689 } // namespace |
OLD | NEW |