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 "modules/mediastream/MediaConstraintsImpl.h" | |
6 #include "modules/mediastream/MediaTrackConstraints.h" | |
5 #include "public/platform/WebMediaConstraints.h" | 7 #include "public/platform/WebMediaConstraints.h" |
6 #include "testing/gtest/include/gtest/gtest.h" | 8 #include "testing/gtest/include/gtest/gtest.h" |
9 #include "wtf/Vector.h" | |
tommi (sloooow) - chröme
2016/05/24 13:54:38
if we can avoid adding these includes and use the
hta - Chromium
2016/05/24 14:22:43
These includes are what defines the Vector and Str
| |
10 #include "wtf/text/WTFString.h" | |
7 | 11 |
8 // The MediaTrackConstraintsTest group tests the types declared in | 12 // The MediaTrackConstraintsTest group tests the types declared in |
9 // WebKit/public/platform/WebMediaConstraints.h | 13 // WebKit/public/platform/WebMediaConstraints.h |
10 TEST(MediaTrackConstraintsTest, LongConstraint) | 14 TEST(MediaTrackConstraintsTest, LongConstraint) |
11 { | 15 { |
12 blink::LongConstraint rangeConstraint(nullptr); | 16 blink::LongConstraint rangeConstraint(nullptr); |
13 rangeConstraint.setMin(5); | 17 rangeConstraint.setMin(5); |
14 rangeConstraint.setMax(6); | 18 rangeConstraint.setMax(6); |
15 EXPECT_TRUE(rangeConstraint.matches(5)); | 19 EXPECT_TRUE(rangeConstraint.matches(5)); |
16 EXPECT_TRUE(rangeConstraint.matches(6)); | 20 EXPECT_TRUE(rangeConstraint.matches(6)); |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
107 blink::WebMediaTrackConstraintSet basic; | 111 blink::WebMediaTrackConstraintSet basic; |
108 blink::WebVector<blink::WebMediaTrackConstraintSet> advanced(static_cast<siz e_t>(1)); | 112 blink::WebVector<blink::WebMediaTrackConstraintSet> advanced(static_cast<siz e_t>(1)); |
109 basic.width.setMax(240); | 113 basic.width.setMax(240); |
110 advanced[0].echoCancellation.setExact(true); | 114 advanced[0].echoCancellation.setExact(true); |
111 theConstraints.initialize(basic, advanced); | 115 theConstraints.initialize(basic, advanced); |
112 EXPECT_EQ("{width: {max: 240}, advanced: [{echoCancellation: {exact: true}}] }", theConstraints.toString().utf8()); | 116 EXPECT_EQ("{width: {max: 240}, advanced: [{echoCancellation: {exact: true}}] }", theConstraints.toString().utf8()); |
113 | 117 |
114 blink::WebMediaConstraints nullConstraints; | 118 blink::WebMediaConstraints nullConstraints; |
115 EXPECT_EQ("", nullConstraints.toString().utf8()); | 119 EXPECT_EQ("", nullConstraints.toString().utf8()); |
116 } | 120 } |
121 | |
122 TEST(MediaTrackConstraintsTest, ConvertWebConstraintsBasic) | |
123 { | |
124 blink::WebMediaConstraints input; | |
125 blink::MediaTrackConstraints output; | |
126 | |
127 blink::MediaConstraintsImpl::convertConstraints(input, output); | |
128 } | |
129 | |
130 TEST(MediaTrackConstraintsTest, ConvertWebSingleStringConstraint) | |
131 { | |
132 blink::WebMediaConstraints input; | |
133 blink::MediaTrackConstraints output; | |
134 | |
135 blink::WebMediaTrackConstraintSet basic; | |
136 std::vector<blink::WebMediaTrackConstraintSet> advanced; | |
137 | |
138 basic.facingMode.setIdeal(WTF::Vector<WTF::String>(1, WTF::String("foo"))); | |
tommi (sloooow) - chröme
2016/05/24 13:54:38
The function prototype expects a WebVector and Web
hta - Chromium
2016/05/24 14:22:43
After discovering the "using" statements in the he
| |
139 input.initialize(basic, advanced); | |
140 blink::MediaConstraintsImpl::convertConstraints(input, output); | |
141 ASSERT_TRUE(output.hasFacingMode()); | |
142 ASSERT_TRUE(output.facingMode().isString()); | |
143 EXPECT_EQ("foo", output.facingMode().getAsString()); | |
144 } | |
145 | |
146 TEST(MediaTrackConstraintsTest, ConvertWebDoubleStringConstraint) | |
147 { | |
148 blink::WebMediaConstraints input; | |
149 blink::MediaTrackConstraints output; | |
150 | |
151 blink::WebMediaTrackConstraintSet basic; | |
152 std::vector<blink::WebMediaTrackConstraintSet> advanced; | |
153 WTF::Vector<WTF::String> buffer; | |
154 buffer.append(WTF::String("foo")); | |
155 buffer.append(WTF::String("bar")); | |
156 | |
157 basic.facingMode.setIdeal(buffer); | |
158 input.initialize(basic, advanced); | |
159 blink::MediaConstraintsImpl::convertConstraints(input, output); | |
160 ASSERT_TRUE(output.hasFacingMode()); | |
161 ASSERT_TRUE(output.facingMode().isStringSequence()); | |
162 buffer = output.facingMode().getAsStringSequence(); | |
163 EXPECT_EQ("foo", buffer[0]); | |
164 EXPECT_EQ("bar", buffer[1]); | |
165 } | |
166 | |
167 TEST(MediaTrackConstraintsTest, ConvertBlinkStringConstraint) | |
168 { | |
169 blink::MediaTrackConstraints input; | |
170 blink::WebMediaConstraints output; | |
171 blink::StringOrStringSequenceOrConstrainDOMStringParameters parameter; | |
172 parameter.setString("foo"); | |
173 input.setFacingMode(parameter); | |
174 output = blink::MediaConstraintsImpl::convertConstraintsToWeb(input); | |
175 ASSERT_TRUE(output.basic().facingMode.hasIdeal()); | |
176 ASSERT_EQ(1U, output.basic().facingMode.ideal().size()); | |
177 ASSERT_EQ("foo", output.basic().facingMode.ideal()[0]); | |
178 } | |
179 | |
180 TEST(MediaTrackConstraintsTest, ConvertBlinkComplexStringConstraint) | |
181 { | |
182 blink::MediaTrackConstraints input; | |
183 blink::WebMediaConstraints output; | |
184 blink::StringOrStringSequenceOrConstrainDOMStringParameters parameter; | |
185 blink::ConstrainDOMStringParameters subparameter; | |
186 blink::StringOrStringSequence innerString; | |
187 innerString.setString("foo"); | |
188 subparameter.setIdeal(innerString); | |
189 parameter.setConstrainDOMStringParameters(subparameter); | |
190 input.setFacingMode(parameter); | |
191 output = blink::MediaConstraintsImpl::convertConstraintsToWeb(input); | |
192 ASSERT_TRUE(output.basic().facingMode.hasIdeal()); | |
193 ASSERT_EQ(1U, output.basic().facingMode.ideal().size()); | |
194 ASSERT_EQ("foo", output.basic().facingMode.ideal()[0]); | |
195 | |
196 // Convert this back, and see that it appears as a single string. | |
197 blink::MediaTrackConstraints recycled; | |
198 blink::MediaConstraintsImpl::convertConstraints(output, recycled); | |
199 ASSERT_TRUE(recycled.hasFacingMode()); | |
200 ASSERT_TRUE(recycled.facingMode().isString()); | |
201 ASSERT_EQ("foo", recycled.facingMode().getAsString()); | |
202 } | |
OLD | NEW |