| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "core/css/MediaQueryEvaluator.h" | 5 #include "core/css/MediaQueryEvaluator.h" |
| 6 | 6 |
| 7 #include "core/MediaTypeNames.h" | 7 #include "core/MediaTypeNames.h" |
| 8 #include "core/css/MediaList.h" | 8 #include "core/css/MediaList.h" |
| 9 #include "core/css/MediaValuesCached.h" | 9 #include "core/css/MediaValuesCached.h" |
| 10 #include "core/css/MediaValuesInitialViewport.h" | 10 #include "core/css/MediaValuesInitialViewport.h" |
| (...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 132 | 132 |
| 133 TestCase printTestCases[] = { | 133 TestCase printTestCases[] = { |
| 134 {"print and (min-resolution: 1dppx)", 1}, | 134 {"print and (min-resolution: 1dppx)", 1}, |
| 135 {"print and (min-resolution: 118dpcm)", 1}, | 135 {"print and (min-resolution: 118dpcm)", 1}, |
| 136 {"print and (min-resolution: 119dpcm)", 0}, | 136 {"print and (min-resolution: 119dpcm)", 0}, |
| 137 {0, 0} // Do not remove the terminator line. | 137 {0, 0} // Do not remove the terminator line. |
| 138 }; | 138 }; |
| 139 | 139 |
| 140 void testMQEvaluator(TestCase* testCases, | 140 void testMQEvaluator(TestCase* testCases, |
| 141 const MediaQueryEvaluator& mediaQueryEvaluator) { | 141 const MediaQueryEvaluator& mediaQueryEvaluator) { |
| 142 Persistent<MediaQuerySet> querySet = nullptr; | 142 RefPtr<MediaQuerySet> querySet = nullptr; |
| 143 for (unsigned i = 0; testCases[i].input; ++i) { | 143 for (unsigned i = 0; testCases[i].input; ++i) { |
| 144 querySet = MediaQuerySet::create(testCases[i].input); | 144 querySet = MediaQuerySet::create(testCases[i].input); |
| 145 EXPECT_EQ(testCases[i].output, mediaQueryEvaluator.eval(querySet.get())); | 145 EXPECT_EQ(testCases[i].output, mediaQueryEvaluator.eval(*querySet)); |
| 146 } | 146 } |
| 147 } | 147 } |
| 148 | 148 |
| 149 TEST(MediaQueryEvaluatorTest, Cached) { | 149 TEST(MediaQueryEvaluatorTest, Cached) { |
| 150 MediaValuesCached::MediaValuesCachedData data; | 150 MediaValuesCached::MediaValuesCachedData data; |
| 151 data.viewportWidth = 500; | 151 data.viewportWidth = 500; |
| 152 data.viewportHeight = 500; | 152 data.viewportHeight = 500; |
| 153 data.deviceWidth = 500; | 153 data.deviceWidth = 500; |
| 154 data.deviceHeight = 500; | 154 data.deviceHeight = 500; |
| 155 data.devicePixelRatio = 2.0; | 155 data.devicePixelRatio = 2.0; |
| (...skipping 30 matching lines...) Expand all Loading... |
| 186 testMQEvaluator(printTestCases, mediaQueryEvaluator); | 186 testMQEvaluator(printTestCases, mediaQueryEvaluator); |
| 187 } | 187 } |
| 188 | 188 |
| 189 TEST(MediaQueryEvaluatorTest, DynamicNoView) { | 189 TEST(MediaQueryEvaluatorTest, DynamicNoView) { |
| 190 std::unique_ptr<DummyPageHolder> pageHolder = | 190 std::unique_ptr<DummyPageHolder> pageHolder = |
| 191 DummyPageHolder::create(IntSize(500, 500)); | 191 DummyPageHolder::create(IntSize(500, 500)); |
| 192 LocalFrame* frame = &pageHolder->frame(); | 192 LocalFrame* frame = &pageHolder->frame(); |
| 193 pageHolder.reset(); | 193 pageHolder.reset(); |
| 194 ASSERT_EQ(nullptr, frame->view()); | 194 ASSERT_EQ(nullptr, frame->view()); |
| 195 MediaQueryEvaluator mediaQueryEvaluator(frame); | 195 MediaQueryEvaluator mediaQueryEvaluator(frame); |
| 196 MediaQuerySet* querySet = MediaQuerySet::create("foobar"); | 196 RefPtr<MediaQuerySet> querySet = MediaQuerySet::create("foobar"); |
| 197 EXPECT_FALSE(mediaQueryEvaluator.eval(querySet)); | 197 EXPECT_FALSE(mediaQueryEvaluator.eval(*querySet)); |
| 198 } | 198 } |
| 199 | 199 |
| 200 TEST(MediaQueryEvaluatorTest, CachedFloatViewport) { | 200 TEST(MediaQueryEvaluatorTest, CachedFloatViewport) { |
| 201 MediaValuesCached::MediaValuesCachedData data; | 201 MediaValuesCached::MediaValuesCachedData data; |
| 202 data.viewportWidth = 600.5; | 202 data.viewportWidth = 600.5; |
| 203 data.viewportHeight = 700.125; | 203 data.viewportHeight = 700.125; |
| 204 MediaValues* mediaValues = MediaValuesCached::create(data); | 204 MediaValues* mediaValues = MediaValuesCached::create(data); |
| 205 | 205 |
| 206 MediaQueryEvaluator mediaQueryEvaluator(*mediaValues); | 206 MediaQueryEvaluator mediaQueryEvaluator(*mediaValues); |
| 207 testMQEvaluator(floatViewportTestCases, mediaQueryEvaluator); | 207 testMQEvaluator(floatViewportTestCases, mediaQueryEvaluator); |
| (...skipping 17 matching lines...) Expand all Loading... |
| 225 pageHolder->frameView().setInitialViewportSize(IntSize(500, 500)); | 225 pageHolder->frameView().setInitialViewportSize(IntSize(500, 500)); |
| 226 pageHolder->frameView().setLayoutSize(IntSize(800, 800)); | 226 pageHolder->frameView().setLayoutSize(IntSize(800, 800)); |
| 227 pageHolder->frameView().setFrameRect(IntRect(0, 0, 800, 800)); | 227 pageHolder->frameView().setFrameRect(IntRect(0, 0, 800, 800)); |
| 228 | 228 |
| 229 MediaQueryEvaluator mediaQueryEvaluator( | 229 MediaQueryEvaluator mediaQueryEvaluator( |
| 230 MediaValuesInitialViewport::create(pageHolder->frame())); | 230 MediaValuesInitialViewport::create(pageHolder->frame())); |
| 231 testMQEvaluator(viewportTestCases, mediaQueryEvaluator); | 231 testMQEvaluator(viewportTestCases, mediaQueryEvaluator); |
| 232 } | 232 } |
| 233 | 233 |
| 234 } // namespace blink | 234 } // namespace blink |
| OLD | NEW |