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

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

Issue 2140073002: [Typed-OM] Add compound type of CSSVariableReferenceValue and String with some tests (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@CSSTokenStreamValue
Patch Set: Removed unused variables Created 4 years, 5 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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/cssom/CSSTokenStreamValue.h" 5 #include "core/css/cssom/CSSTokenStreamValue.h"
6 6
7 #include "core/css/cssom/CSSStyleVariableReferenceValue.h" 7 #include "core/css/cssom/CSSStyleVariableReferenceValue.h"
8 #include "testing/gtest/include/gtest/gtest.h" 8 #include "testing/gtest/include/gtest/gtest.h"
9 9
10 namespace blink { 10 namespace blink {
11 11
12 namespace { 12 namespace {
13 13
14 StringOrCSSVariableReferenceValue getStringOrCSSVariableReferenceValue(String st r)
15 {
16 StringOrCSSVariableReferenceValue temp;
17 temp.setString(str);
18 return temp;
19 }
20
21 StringOrCSSVariableReferenceValue getStringOrCSSVariableReferenceValue(CSSStyleV ariableReferenceValue* ref)
22 {
23 StringOrCSSVariableReferenceValue temp;
24 temp.setCSSVariableReferenceValue(ref);
25 return temp;
26 }
27
14 CSSTokenStreamValue* tokenStreamValueFromString(String str) 28 CSSTokenStreamValue* tokenStreamValueFromString(String str)
15 { 29 {
16 HeapVector<StringOrCSSVariableReferenceValue> listOfStrings; 30 HeapVector<StringOrCSSVariableReferenceValue> listOfStrings;
17 31 listOfStrings.append(getStringOrCSSVariableReferenceValue(str));
18 StringOrCSSVariableReferenceValue temp;
19 temp.setString(str);
20 listOfStrings.append(tmp);
21
22 return CSSTokenStreamValue::create(listOfStrings); 32 return CSSTokenStreamValue::create(listOfStrings);
23 } 33 }
24 34
25 CSSTokenStreamValue* tokenStreamValueFromCSSVariableReferenceValue() 35 CSSTokenStreamValue* tokenStreamValueFromCSSVariableReferenceValue(CSSStyleVaria bleReferenceValue* ref)
26 { 36 {
27 HeapVector<StringOrCSSVariableReferenceValue> listOfReferences; 37 HeapVector<StringOrCSSVariableReferenceValue> listOfReferences;
28 38 listOfReferences.append(getStringOrCSSVariableReferenceValue(ref));
29 StringOrCSSVariableReferenceValue temp; 39 return CSSTokenStreamValue::create(listOfReferences);
30 temp.setCSSVariableReferenceValue(CSSStyleVariableReferenceValue::create("Re f", tokenStreamValueFromString("Str")));
31 } 40 }
32 41
33 TEST(CSSTokenStreamValueTest, EmptyList) 42 TEST(CSSTokenStreamValueTest, EmptyList)
34 { 43 {
35 HeapVector<StringOrCSSVariableReferenceValue> listOfReferences; 44 HeapVector<StringOrCSSVariableReferenceValue> listOfReferences;
36 45
37 CSSTokenStreamValue* tokenStreamValue = CSSTokenStreamValue::create(listOfRe ferences); 46 CSSTokenStreamValue* tokenStreamValue = CSSTokenStreamValue::create(listOfRe ferences);
38 47
39 EXPECT_EQ(tokenStreamValue->size(), 0UL); 48 EXPECT_EQ(tokenStreamValue->size(), 0UL);
40 } 49 }
41 50
42 TEST(CSSTokenStreamValueTest, ListOfString) 51 TEST(CSSTokenStreamValueTest, ListOfString)
43 { 52 {
44 HeapVector<StringOrCSSVariableReferenceValue> listOfReferences; 53 CSSTokenStreamValue* tokenStreamValue = tokenStreamValueFromString("Str");
45
46 StringOrCSSVariableReferenceValue temp;
47 temp.setString("str");
48 listOfReferences.append(temp);
49
50 CSSTokenStreamValue* tokenStreamValue = CSSTokenStreamValue::create(listOfRe ferences);
51 54
52 EXPECT_EQ(tokenStreamValue->size(), 1UL); 55 EXPECT_EQ(tokenStreamValue->size(), 1UL);
53 56
54 EXPECT_TRUE(tokenStreamValue->referenceAtIndex(0).isString()); 57 EXPECT_TRUE(tokenStreamValue->referenceAtIndex(0).isString());
55 EXPECT_FALSE(tokenStreamValue->referenceAtIndex(0).isNull()); 58 EXPECT_FALSE(tokenStreamValue->referenceAtIndex(0).isNull());
56 EXPECT_FALSE(tokenStreamValue->referenceAtIndex(0).isCSSVariableReferenceVal ue()); 59 EXPECT_FALSE(tokenStreamValue->referenceAtIndex(0).isCSSVariableReferenceVal ue());
57 60
58 EXPECT_EQ(tokenStreamValue->referenceAtIndex(0).getAsString(), "str"); 61 EXPECT_EQ(tokenStreamValue->referenceAtIndex(0).getAsString(), "Str");
59 } 62 }
60 63
61 TEST(CSSTokenStreamValueTest, ListOfCSSVariableReferenceValue) 64 TEST(CSSTokenStreamValueTest, ListOfCSSVariableReferenceValue)
62 { 65 {
63 HeapVector<StringOrCSSVariableReferenceValue> listOfStrings; 66 CSSStyleVariableReferenceValue* ref = CSSStyleVariableReferenceValue::create ("Ref");
64 67
65 StringOrCSSVariableReferenceValue tempString; 68 CSSTokenStreamValue* tokenStreamValue = tokenStreamValueFromCSSVariableRefer enceValue(ref);
66 tempString.setString("str");
67 listOfReferences.append(tempString);
68
69 CSSTokenStreamValue* tokenStreamValueString = CSSTokenStreamValue::create(li stOfStrings);
70
71 StringOrCSSVariableReferenceValue temp;
72 CSSStyleVariableReferenceValue* ref = CSSStyleVariableReferenceValue::create ("Ref", tokenStreamValueString);
73 temp.setCSSVariableReferenceValue(ref);
74 listOfReferences.append(temp);
75
76 CSSTokenStreamValue* tokenStreamValue = CSSTokenStreamValue::create(listOfRe ferences);
77 69
78 EXPECT_EQ(tokenStreamValue->size(), 1UL); 70 EXPECT_EQ(tokenStreamValue->size(), 1UL);
79 71
80 EXPECT_FALSE(tokenStreamValue->referenceAtIndex(0).isString()); 72 EXPECT_FALSE(tokenStreamValue->referenceAtIndex(0).isString());
81 EXPECT_FALSE(tokenStreamValue->referenceAtIndex(0).isNull()); 73 EXPECT_FALSE(tokenStreamValue->referenceAtIndex(0).isNull());
82 EXPECT_TRUE(tokenStreamValue->referenceAtIndex(0).isCSSVariableReferenceValu e()); 74 EXPECT_TRUE(tokenStreamValue->referenceAtIndex(0).isCSSVariableReferenceValu e());
83 75
84 EXPECT_EQ(tokenStreamValue->referenceAtIndex(0).getAsCSSVariableReferenceVal ue(), ref); 76 EXPECT_EQ(tokenStreamValue->referenceAtIndex(0).getAsCSSVariableReferenceVal ue(), ref);
85 } 77 }
86 78
87 TEST(CSSTokenStreamValueTest, MixedContents) 79 TEST(CSSTokenStreamValueTest, MixedContents)
88 { 80 {
89 HeapVector<StringOrCSSVariableReferenceValue> listOfReferences; 81 HeapVector<StringOrCSSVariableReferenceValue> listOfReferences;
90 82
91 StringOrCSSVariableReferenceValue x; 83 StringOrCSSVariableReferenceValue x = getStringOrCSSVariableReferenceValue(" Str");
92 x.setString("1234");
93 listOfReferences.append(x);
94 84
95 StringOrCSSVariableReferenceValue y;
96 CSSStyleVariableReferenceValue* ref = CSSStyleVariableReferenceValue::create ("Ref"); 85 CSSStyleVariableReferenceValue* ref = CSSStyleVariableReferenceValue::create ("Ref");
97 y.setCSSVariableReferenceValue(ref); 86 StringOrCSSVariableReferenceValue y = getStringOrCSSVariableReferenceValue(r ef);
98 listOfReferences.append(y);
99 87
100 StringOrCSSVariableReferenceValue z; 88 StringOrCSSVariableReferenceValue z;
89
90 listOfReferences.append(x);
91 listOfReferences.append(y);
101 listOfReferences.append(z); 92 listOfReferences.append(z);
102 93
103 CSSTokenStreamValue* tokenStreamValue = CSSTokenStreamValue::create(listOfRe ferences); 94 CSSTokenStreamValue* tokenStreamValue = CSSTokenStreamValue::create(listOfRe ferences);
104 95
105 EXPECT_EQ(tokenStreamValue->size(), listOfReferences.size()); 96 EXPECT_EQ(tokenStreamValue->size(), listOfReferences.size());
106 97
107 EXPECT_TRUE(tokenStreamValue->referenceAtIndex(0).isString()); 98 EXPECT_TRUE(tokenStreamValue->referenceAtIndex(0).isString());
108 EXPECT_FALSE(tokenStreamValue->referenceAtIndex(0).isCSSVariableReferenceVal ue()); 99 EXPECT_FALSE(tokenStreamValue->referenceAtIndex(0).isCSSVariableReferenceVal ue());
109 EXPECT_EQ(tokenStreamValue->referenceAtIndex(0).getAsString(), "1234"); 100 EXPECT_EQ(tokenStreamValue->referenceAtIndex(0).getAsString(), "Str");
110 101
111 EXPECT_TRUE(tokenStreamValue->referenceAtIndex(1).isCSSVariableReferenceValu e()); 102 EXPECT_TRUE(tokenStreamValue->referenceAtIndex(1).isCSSVariableReferenceValu e());
112 EXPECT_FALSE(tokenStreamValue->referenceAtIndex(1).isString()); 103 EXPECT_FALSE(tokenStreamValue->referenceAtIndex(1).isString());
113 EXPECT_EQ(tokenStreamValue->referenceAtIndex(1).getAsCSSVariableReferenceVal ue(), ref); 104 EXPECT_EQ(tokenStreamValue->referenceAtIndex(1).getAsCSSVariableReferenceVal ue(), ref);
114 105
115 EXPECT_TRUE(tokenStreamValue->referenceAtIndex(2).isNull()); 106 EXPECT_TRUE(tokenStreamValue->referenceAtIndex(2).isNull());
116 } 107 }
117 108
118 } // namespace 109 } // namespace
119 110
120 } // namespace blink 111 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698