| 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 "sky/engine/config.h" | 5 #include "sky/engine/config.h" |
| 6 #include "sky/engine/core/css/parser/BisonCSSParser.h" | 6 #include "sky/engine/core/css/parser/BisonCSSParser.h" |
| 7 | 7 |
| 8 #include "sky/engine/core/css/CSSTimingFunctionValue.h" | 8 #include "sky/engine/core/css/CSSTimingFunctionValue.h" |
| 9 #include "sky/engine/core/css/MediaList.h" | 9 #include "sky/engine/core/css/MediaList.h" |
| 10 #include "sky/engine/core/css/StyleRule.h" | 10 #include "sky/engine/core/css/StyleRule.h" |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 77 String queryText = queryVector[i]->cssText(); | 77 String queryText = queryVector[i]->cssText(); |
| 78 output.append(queryText); | 78 output.append(queryText); |
| 79 ++i; | 79 ++i; |
| 80 if (i >= queryVectorSize) | 80 if (i >= queryVectorSize) |
| 81 break; | 81 break; |
| 82 output.appendLiteral(", "); | 82 output.appendLiteral(", "); |
| 83 } | 83 } |
| 84 ASSERT_STREQ(expected, output.toString().ascii().data()); | 84 ASSERT_STREQ(expected, output.toString().ascii().data()); |
| 85 } | 85 } |
| 86 | 86 |
| 87 TEST(BisonCSSParserTest, MediaQuery) | |
| 88 { | |
| 89 struct { | |
| 90 const char* input; | |
| 91 const char* output; | |
| 92 } testCases[] = { | |
| 93 {"@media s} {}", "not all"}, | |
| 94 {"@media } {}", "not all"}, | |
| 95 {"@media tv {}", "tv"}, | |
| 96 {"@media tv, screen {}", "tv, screen"}, | |
| 97 {"@media s}, tv {}", "not all, tv"}, | |
| 98 {"@media tv, screen and (}) {}", "tv, not all"}, | |
| 99 }; | |
| 100 | |
| 101 BisonCSSParser parser(strictCSSParserContext()); | |
| 102 | |
| 103 for (unsigned i = 0; i < ARRAY_SIZE(testCases); ++i) { | |
| 104 RefPtr<StyleRuleBase> rule = parser.parseRule(nullptr, String(testCases[
i].input)); | |
| 105 | |
| 106 EXPECT_TRUE(rule->isMediaRule()); | |
| 107 testMediaQuery(testCases[i].output, *static_cast<StyleRuleMedia*>(rule.g
et())->mediaQueries()); | |
| 108 } | |
| 109 } | |
| 110 | |
| 111 } // namespace blink | 87 } // namespace blink |
| OLD | NEW |