Chromium Code Reviews| Index: Source/core/css/RuleSetTest.cpp |
| diff --git a/Source/core/css/RuleSetTest.cpp b/Source/core/css/RuleSetTest.cpp |
| index e9b70df4b3a214603d70ea31681689d8f0bb0ab8..d02a726158e154f48df5b4969e7a27b2bc67b4ab 100644 |
| --- a/Source/core/css/RuleSetTest.cpp |
| +++ b/Source/core/css/RuleSetTest.cpp |
| @@ -136,4 +136,58 @@ TEST(RuleSetTest, findBestRuleSetAndAdd_DivWithContent) |
| ASSERT_EQ(valueStr, rules->at(0).selector().value()); |
| } |
| +TEST(RuleSetTest, findBestRuleSetAndAdd_Host) |
| +{ |
| + CSSTestHelper helper; |
| + |
| + helper.addCSSRules(":host { }"); |
| + RuleSet& ruleSet = helper.ruleSet(); |
| + const Vector<RuleData>* rules = ruleSet.shadowHostRules(); |
| + ASSERT_EQ(1u, rules->size()); |
| +} |
| + |
| +TEST(RuleSetTest, findBestRuleSetAndAdd_HostWithId) |
| +{ |
| + CSSTestHelper helper; |
| + |
| + helper.addCSSRules(":host(#x) { }"); |
| + RuleSet& ruleSet = helper.ruleSet(); |
| + const Vector<RuleData>* rules = ruleSet.shadowHostRules(); |
| + ASSERT_EQ(1u, rules->size()); |
| +} |
|
kochi
2014/12/12 09:54:40
How about adding a test for ".foo:host {}" will re
rune
2014/12/12 15:44:02
Done.
|
| + |
| +TEST(RuleSetTest, findBestRuleSetAndAdd_HostContext) |
| +{ |
| + CSSTestHelper helper; |
| + |
| + helper.addCSSRules(":host-context(*) { }"); |
| + RuleSet& ruleSet = helper.ruleSet(); |
| + const Vector<RuleData>* rules = ruleSet.shadowHostRules(); |
| + ASSERT_EQ(1u, rules->size()); |
| +} |
| + |
| +TEST(RuleSetTest, findBestRuleSetAndAdd_HostContextWithId) |
| +{ |
| + CSSTestHelper helper; |
| + |
| + helper.addCSSRules(":host-context(#x) { }"); |
| + RuleSet& ruleSet = helper.ruleSet(); |
| + const Vector<RuleData>* rules = ruleSet.shadowHostRules(); |
| + ASSERT_EQ(1u, rules->size()); |
| +} |
| + |
| +TEST(RuleSetTest, findBestRuleSetAndAdd_HostAndHostContextNotInRightmost) |
| +{ |
| + CSSTestHelper helper; |
| + |
| + helper.addCSSRules(":host-context(#x) .y, :host(.a) > #b { }"); |
| + RuleSet& ruleSet = helper.ruleSet(); |
| + const Vector<RuleData>* shadowRules = ruleSet.shadowHostRules(); |
| + const TerminatedArray<RuleData>* idRules = ruleSet.idRules("b"); |
| + const TerminatedArray<RuleData>* classRules = ruleSet.classRules("y"); |
| + ASSERT_EQ(0u, shadowRules->size()); |
| + ASSERT_EQ(1u, idRules->size()); |
| + ASSERT_EQ(1u, classRules->size()); |
| +} |
| + |
| } // namespace blink |