OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "base/basictypes.h" | 5 #include "base/basictypes.h" |
6 #include "sync/internal_api/public/base/ordinal.h" | 6 #include "sync/internal_api/public/base/ordinal.h" |
7 #include "testing/gtest/include/gtest/gtest.h" | 7 #include "testing/gtest/include/gtest/gtest.h" |
8 | 8 |
9 #include <algorithm> | 9 #include <algorithm> |
10 #include <cctype> | 10 #include <cctype> |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
80 LargeOrdinalkMidDigitValue_incorrect); | 80 LargeOrdinalkMidDigitValue_incorrect); |
81 COMPILE_ASSERT(LargeOrdinal::kMaxDigitValue == 255, | 81 COMPILE_ASSERT(LargeOrdinal::kMaxDigitValue == 255, |
82 LargeOrdinalkMaxDigitValue_incorrect); | 82 LargeOrdinalkMaxDigitValue_incorrect); |
83 COMPILE_ASSERT(LargeOrdinal::kRadix == 256, | 83 COMPILE_ASSERT(LargeOrdinal::kRadix == 256, |
84 LargeOrdinalkRadix_incorrect); | 84 LargeOrdinalkRadix_incorrect); |
85 | 85 |
86 // Create Ordinals that satisfy all but one criterion for validity. | 86 // Create Ordinals that satisfy all but one criterion for validity. |
87 // IsValid() should return false for all of them. | 87 // IsValid() should return false for all of them. |
88 TEST(Ordinal, Invalid) { | 88 TEST(Ordinal, Invalid) { |
89 // Length criterion. | 89 // Length criterion. |
90 EXPECT_FALSE(TestOrdinal("").IsValid()); | 90 EXPECT_FALSE(TestOrdinal(std::string()).IsValid()); |
91 EXPECT_FALSE(LongOrdinal("0001").IsValid()); | 91 EXPECT_FALSE(LongOrdinal("0001").IsValid()); |
92 | 92 |
93 const char kBeforeZero[] = { '0' - 1, '\0' }; | 93 const char kBeforeZero[] = { '0' - 1, '\0' }; |
94 const char kAfterNine[] = { '9' + 1, '\0' }; | 94 const char kAfterNine[] = { '9' + 1, '\0' }; |
95 | 95 |
96 // Character criterion. | 96 // Character criterion. |
97 EXPECT_FALSE(TestOrdinal(kBeforeZero).IsValid()); | 97 EXPECT_FALSE(TestOrdinal(kBeforeZero).IsValid()); |
98 EXPECT_FALSE(TestOrdinal("4").IsValid()); | 98 EXPECT_FALSE(TestOrdinal("4").IsValid()); |
99 EXPECT_FALSE(LongOrdinal(std::string("0000") + kBeforeZero).IsValid()); | 99 EXPECT_FALSE(LongOrdinal(std::string("0000") + kBeforeZero).IsValid()); |
100 EXPECT_FALSE(LongOrdinal(std::string("0000") + kAfterNine).IsValid()); | 100 EXPECT_FALSE(LongOrdinal(std::string("0000") + kAfterNine).IsValid()); |
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
367 std::vector<LongOrdinal> ordinals = sorted_ordinals; | 367 std::vector<LongOrdinal> ordinals = sorted_ordinals; |
368 std::random_shuffle(ordinals.begin(), ordinals.end()); | 368 std::random_shuffle(ordinals.begin(), ordinals.end()); |
369 std::sort(ordinals.begin(), ordinals.end(), LongOrdinal::LessThanFn()); | 369 std::sort(ordinals.begin(), ordinals.end(), LongOrdinal::LessThanFn()); |
370 EXPECT_TRUE(std::equal(ordinals.begin(), ordinals.end(), | 370 EXPECT_TRUE(std::equal(ordinals.begin(), ordinals.end(), |
371 sorted_ordinals.begin(), LongOrdinal::EqualsFn())); | 371 sorted_ordinals.begin(), LongOrdinal::EqualsFn())); |
372 } | 372 } |
373 | 373 |
374 } // namespace | 374 } // namespace |
375 | 375 |
376 } // namespace syncer | 376 } // namespace syncer |
OLD | NEW |