OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2013, Google Inc. All rights reserved. | 2 * Copyright (c) 2013, Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 21 matching lines...) Expand all Loading... |
32 | 32 |
33 #include "bindings/core/v8/ExceptionState.h" | 33 #include "bindings/core/v8/ExceptionState.h" |
34 #include "testing/gtest/include/gtest/gtest.h" | 34 #include "testing/gtest/include/gtest/gtest.h" |
35 #include <sstream> | 35 #include <sstream> |
36 | 36 |
37 namespace blink { | 37 namespace blink { |
38 | 38 |
39 static std::string ToString(const TimeRanges& ranges) { | 39 static std::string ToString(const TimeRanges& ranges) { |
40 std::stringstream ss; | 40 std::stringstream ss; |
41 ss << "{"; | 41 ss << "{"; |
42 for (unsigned i = 0; i < ranges.length(); ++i) | 42 for (unsigned i = 0; i < ranges.length(); ++i) { |
43 ss << " [" << ranges.start(i, IGNORE_EXCEPTION) << "," | 43 ss << " [" << ranges.start(i, IGNORE_EXCEPTION_FOR_TESTING) << "," |
44 << ranges.end(i, IGNORE_EXCEPTION) << ")"; | 44 << ranges.end(i, IGNORE_EXCEPTION_FOR_TESTING) << ")"; |
| 45 } |
45 ss << " }"; | 46 ss << " }"; |
46 | 47 |
47 return ss.str(); | 48 return ss.str(); |
48 } | 49 } |
49 | 50 |
50 #define ASSERT_RANGE(expected, range) ASSERT_EQ(expected, ToString(*range)) | 51 #define ASSERT_RANGE(expected, range) ASSERT_EQ(expected, ToString(*range)) |
51 | 52 |
52 TEST(TimeRangesTest, Empty) { | 53 TEST(TimeRangesTest, Empty) { |
53 ASSERT_RANGE("{ }", TimeRanges::create()); | 54 ASSERT_RANGE("{ }", TimeRanges::create()); |
54 } | 55 } |
(...skipping 16 matching lines...) Expand all Loading... |
71 TimeRanges* rangeB = TimeRanges::create(); | 72 TimeRanges* rangeB = TimeRanges::create(); |
72 | 73 |
73 rangeA->add(0, 2); | 74 rangeA->add(0, 2); |
74 rangeA->add(3, 4); | 75 rangeA->add(3, 4); |
75 rangeA->add(5, 100); | 76 rangeA->add(5, 100); |
76 | 77 |
77 std::string expected = "{ [0,2) [3,4) [5,100) }"; | 78 std::string expected = "{ [0,2) [3,4) [5,100) }"; |
78 ASSERT_RANGE(expected, rangeA); | 79 ASSERT_RANGE(expected, rangeA); |
79 | 80 |
80 // Add the values in rangeA to rangeB in reverse order. | 81 // Add the values in rangeA to rangeB in reverse order. |
81 for (int i = rangeA->length() - 1; i >= 0; --i) | 82 for (int i = rangeA->length() - 1; i >= 0; --i) { |
82 rangeB->add(rangeA->start(i, IGNORE_EXCEPTION), | 83 rangeB->add(rangeA->start(i, IGNORE_EXCEPTION_FOR_TESTING), |
83 rangeA->end(i, IGNORE_EXCEPTION)); | 84 rangeA->end(i, IGNORE_EXCEPTION_FOR_TESTING)); |
| 85 } |
84 | 86 |
85 ASSERT_RANGE(expected, rangeB); | 87 ASSERT_RANGE(expected, rangeB); |
86 } | 88 } |
87 | 89 |
88 TEST(TimeRangesTest, OverlappingAdds) { | 90 TEST(TimeRangesTest, OverlappingAdds) { |
89 TimeRanges* ranges = TimeRanges::create(); | 91 TimeRanges* ranges = TimeRanges::create(); |
90 | 92 |
91 ranges->add(0, 2); | 93 ranges->add(0, 2); |
92 ranges->add(10, 11); | 94 ranges->add(10, 11); |
93 ASSERT_RANGE("{ [0,2) [10,11) }", ranges); | 95 ASSERT_RANGE("{ [0,2) [10,11) }", ranges); |
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
296 ASSERT_EQ(5, ranges->nearest(5, 0)); | 298 ASSERT_EQ(5, ranges->nearest(5, 0)); |
297 ASSERT_EQ(7, ranges->nearest(8, 0)); | 299 ASSERT_EQ(7, ranges->nearest(8, 0)); |
298 | 300 |
299 ranges->add(9, 11); | 301 ranges->add(9, 11); |
300 ASSERT_EQ(7, ranges->nearest(8, 6)); | 302 ASSERT_EQ(7, ranges->nearest(8, 6)); |
301 ASSERT_EQ(7, ranges->nearest(8, 8)); | 303 ASSERT_EQ(7, ranges->nearest(8, 8)); |
302 ASSERT_EQ(9, ranges->nearest(8, 10)); | 304 ASSERT_EQ(9, ranges->nearest(8, 10)); |
303 } | 305 } |
304 | 306 |
305 } // namespace blink | 307 } // namespace blink |
OLD | NEW |