Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/RuleFeature.h" | 5 #include "core/css/RuleFeature.h" |
| 6 | 6 |
| 7 #include "core/css/CSSSelectorList.h" | 7 #include "core/css/CSSSelectorList.h" |
| 8 #include "core/css/RuleSet.h" | 8 #include "core/css/RuleSet.h" |
| 9 #include "core/css/StylePropertySet.h" | 9 #include "core/css/StylePropertySet.h" |
| 10 #include "core/css/StyleRule.h" | 10 #include "core/css/StyleRule.h" |
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 106 } | 106 } |
| 107 | 107 |
| 108 void expectClassInvalidation(const AtomicString& className, InvalidationSetV ector& invalidationSets) | 108 void expectClassInvalidation(const AtomicString& className, InvalidationSetV ector& invalidationSets) |
| 109 { | 109 { |
| 110 EXPECT_EQ(1u, invalidationSets.size()); | 110 EXPECT_EQ(1u, invalidationSets.size()); |
| 111 HashSet<AtomicString> classes = classSet(*invalidationSets[0]); | 111 HashSet<AtomicString> classes = classSet(*invalidationSets[0]); |
| 112 EXPECT_EQ(1u, classes.size()); | 112 EXPECT_EQ(1u, classes.size()); |
| 113 EXPECT_TRUE(classes.contains(className)); | 113 EXPECT_TRUE(classes.contains(className)); |
| 114 } | 114 } |
| 115 | 115 |
| 116 void expectNoClassInvalidation(const AtomicString& className, InvalidationSe tVector& invalidationSets) | |
|
Eric Willigers
2016/01/07 03:50:00
This isn't being used.
Perhaps call it from a tes
rune
2016/01/07 09:55:18
The reason I didn't use it was because it will cra
| |
| 117 { | |
| 118 EXPECT_EQ(1u, invalidationSets.size()); | |
| 119 HashSet<AtomicString> classes = classSet(*invalidationSets[0]); | |
| 120 EXPECT_EQ(0u, classes.size()); | |
| 121 } | |
| 122 | |
| 116 void expectSiblingInvalidation(unsigned maxDirectAdjacentSelectors, const At omicString& siblingName, InvalidationSetVector& invalidationSets) | 123 void expectSiblingInvalidation(unsigned maxDirectAdjacentSelectors, const At omicString& siblingName, InvalidationSetVector& invalidationSets) |
| 117 { | 124 { |
| 118 EXPECT_EQ(1u, invalidationSets.size()); | 125 EXPECT_EQ(1u, invalidationSets.size()); |
| 119 const SiblingInvalidationSet& siblingInvalidationSet = toSiblingInvalida tionSet(*invalidationSets[0]); | 126 const SiblingInvalidationSet& siblingInvalidationSet = toSiblingInvalida tionSet(*invalidationSets[0]); |
| 120 HashSet<AtomicString> classes = classSet(siblingInvalidationSet); | 127 HashSet<AtomicString> classes = classSet(siblingInvalidationSet); |
| 121 EXPECT_EQ(1u, classes.size()); | 128 EXPECT_EQ(1u, classes.size()); |
| 122 EXPECT_TRUE(classes.contains(siblingName)); | 129 EXPECT_TRUE(classes.contains(siblingName)); |
| 123 EXPECT_EQ(maxDirectAdjacentSelectors, siblingInvalidationSet.maxDirectAd jacentSelectors()); | 130 EXPECT_EQ(maxDirectAdjacentSelectors, siblingInvalidationSet.maxDirectAd jacentSelectors()); |
| 124 } | 131 } |
| 125 | 132 |
| (...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 314 | 321 |
| 315 TEST_F(RuleFeatureSetTest, tagName) | 322 TEST_F(RuleFeatureSetTest, tagName) |
| 316 { | 323 { |
| 317 updateInvalidationSets(":valid e"); | 324 updateInvalidationSets(":valid e"); |
| 318 | 325 |
| 319 InvalidationLists invalidationLists; | 326 InvalidationLists invalidationLists; |
| 320 collectInvalidationSetsForPseudoClass(invalidationLists, CSSSelector::Pseudo Valid); | 327 collectInvalidationSetsForPseudoClass(invalidationLists, CSSSelector::Pseudo Valid); |
| 321 expectTagNameInvalidation("e", invalidationLists.descendants); | 328 expectTagNameInvalidation("e", invalidationLists.descendants); |
| 322 } | 329 } |
| 323 | 330 |
| 331 TEST_F(RuleFeatureSetTest, contentPseudo) | |
| 332 { | |
| 333 updateInvalidationSets(".a ::content .b"); | |
| 334 updateInvalidationSets(".a .c"); | |
| 335 | |
| 336 InvalidationLists invalidationLists; | |
| 337 collectInvalidationSetsForClass(invalidationLists, "a"); | |
| 338 expectClassInvalidation("c", invalidationLists.descendants); | |
| 339 | |
| 340 updateInvalidationSets(".a .b"); | |
| 341 | |
| 342 invalidationLists.descendants.clear(); | |
| 343 collectInvalidationSetsForClass(invalidationLists, "a"); | |
| 344 expectClassesInvalidation("b", "c", invalidationLists.descendants); | |
| 345 } | |
| 346 | |
| 324 } // namespace blink | 347 } // namespace blink |
| OLD | NEW |