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

Side by Side Diff: third_party/WebKit/Source/core/css/MediaQueryEvaluatorTest.cpp

Issue 2873433003: Move MediaQuery classes off BlinkGC heap (Closed)
Patch Set: Created 3 years, 7 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 unified diff | Download patch
OLDNEW
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
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
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
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
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/css/MediaQueryEvaluator.cpp ('k') | third_party/WebKit/Source/core/css/MediaQueryExp.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698