Index: third_party/WebKit/Source/core/css/MediaQueryEvaluatorTest.cpp |
diff --git a/third_party/WebKit/Source/core/css/MediaQueryEvaluatorTest.cpp b/third_party/WebKit/Source/core/css/MediaQueryEvaluatorTest.cpp |
index 97a814ac0ce1e398b0f2cf07ea4288e23d8cee3c..8b858680a0f29b8988a2b9e6ef31eec6a28dd59c 100644 |
--- a/third_party/WebKit/Source/core/css/MediaQueryEvaluatorTest.cpp |
+++ b/third_party/WebKit/Source/core/css/MediaQueryEvaluatorTest.cpp |
@@ -71,6 +71,12 @@ TestCase g_screen_test_cases[] = { |
{0, 0} // Do not remove the terminator line. |
}; |
+TestCase g_monochrome_test_cases[] = { |
+ {"(color)", 0}, |
+ {"(monochrome)", 1}, |
+ {0, 0} // Do not remove the terminator line. |
+}; |
+ |
TestCase g_viewport_test_cases[] = { |
{"all and (min-width: 500px)", 1}, |
{"(min-width: 500px)", 1}, |
@@ -146,7 +152,8 @@ void TestMQEvaluator(TestCase* test_cases, |
RefPtr<MediaQuerySet> query_set = nullptr; |
for (unsigned i = 0; test_cases[i].input; ++i) { |
query_set = MediaQuerySet::Create(test_cases[i].input); |
- EXPECT_EQ(test_cases[i].output, media_query_evaluator.Eval(*query_set)); |
+ EXPECT_EQ(test_cases[i].output, media_query_evaluator.Eval(*query_set)) |
+ << "Query: " << test_cases[i].input; |
} |
} |
@@ -167,16 +174,34 @@ TEST(MediaQueryEvaluatorTest, Cached) { |
data.strict_mode = true; |
data.display_mode = kWebDisplayModeBrowser; |
data.display_shape = kDisplayShapeRect; |
- MediaValues* media_values = MediaValuesCached::Create(data); |
- MediaQueryEvaluator media_query_evaluator(*media_values); |
- TestMQEvaluator(g_screen_test_cases, media_query_evaluator); |
- TestMQEvaluator(g_viewport_test_cases, media_query_evaluator); |
+ // Default values. |
+ { |
+ MediaValues* media_values = MediaValuesCached::Create(data); |
+ MediaQueryEvaluator media_query_evaluator(*media_values); |
+ TestMQEvaluator(g_screen_test_cases, media_query_evaluator); |
+ TestMQEvaluator(g_viewport_test_cases, media_query_evaluator); |
+ } |
- data.media_type = MediaTypeNames::print; |
- media_values = MediaValuesCached::Create(data); |
- MediaQueryEvaluator print_media_query_evaluator(*media_values); |
- TestMQEvaluator(g_print_test_cases, print_media_query_evaluator); |
+ // Print values. |
+ { |
+ data.media_type = MediaTypeNames::print; |
+ MediaValues* media_values = MediaValuesCached::Create(data); |
+ MediaQueryEvaluator media_query_evaluator(*media_values); |
+ TestMQEvaluator(g_print_test_cases, media_query_evaluator); |
+ data.media_type = MediaTypeNames::screen; |
+ } |
+ |
+ // Monochrome values. |
+ { |
+ data.color_bits_per_component = 0; |
+ data.monochrome_bits_per_component = 8; |
+ MediaValues* media_values = MediaValuesCached::Create(data); |
+ MediaQueryEvaluator media_query_evaluator(*media_values); |
+ TestMQEvaluator(g_monochrome_test_cases, media_query_evaluator); |
+ data.color_bits_per_component = 24; |
+ data.monochrome_bits_per_component = 0; |
+ } |
} |
TEST(MediaQueryEvaluatorTest, Dynamic) { |