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

Side by Side Diff: third_party/WebKit/Source/modules/websockets/DOMWebSocketTest.cpp

Issue 2143483002: Use the single char overload of append() when possible. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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 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 "modules/websockets/DOMWebSocket.h" 5 #include "modules/websockets/DOMWebSocket.h"
6 6
7 #include "bindings/core/v8/ExceptionState.h" 7 #include "bindings/core/v8/ExceptionState.h"
8 #include "bindings/core/v8/V8Binding.h" 8 #include "bindings/core/v8/V8Binding.h"
9 #include "bindings/core/v8/V8BindingForTesting.h" 9 #include "bindings/core/v8/V8BindingForTesting.h"
10 #include "core/dom/DOMTypedArray.h" 10 #include "core/dom/DOMTypedArray.h"
11 #include "core/dom/Document.h" 11 #include "core/dom/Document.h"
12 #include "core/dom/ExceptionCode.h" 12 #include "core/dom/ExceptionCode.h"
13 #include "core/dom/SecurityContext.h" 13 #include "core/dom/SecurityContext.h"
14 #include "core/fileapi/Blob.h" 14 #include "core/fileapi/Blob.h"
15 #include "core/inspector/ConsoleTypes.h" 15 #include "core/inspector/ConsoleTypes.h"
16 #include "core/testing/DummyPageHolder.h" 16 #include "core/testing/DummyPageHolder.h"
17 #include "platform/heap/Handle.h" 17 #include "platform/heap/Handle.h"
18 #include "public/platform/WebInsecureRequestPolicy.h" 18 #include "public/platform/WebInsecureRequestPolicy.h"
19 #include "testing/gmock/include/gmock/gmock.h" 19 #include "testing/gmock/include/gmock/gmock.h"
20 #include "testing/gtest/include/gtest/gtest.h" 20 #include "testing/gtest/include/gtest/gtest.h"
21 #include "wtf/Vector.h" 21 #include "wtf/Vector.h"
22 #include "wtf/text/CString.h" 22 #include "wtf/text/CString.h"
23 #include "wtf/text/StringBuilder.h"
23 #include "wtf/text/WTFString.h" 24 #include "wtf/text/WTFString.h"
24 #include <memory> 25 #include <memory>
25 #include <v8.h> 26 #include <v8.h>
26 27
27 using testing::_; 28 using testing::_;
28 using testing::AnyNumber; 29 using testing::AnyNumber;
29 using testing::InSequence; 30 using testing::InSequence;
30 using testing::Ref; 31 using testing::Ref;
31 using testing::Return; 32 using testing::Return;
32 33
(...skipping 318 matching lines...) Expand 10 before | Expand all | Expand 10 after
351 352
352 TEST(DOMWebSocketTest, maximumReasonSize) 353 TEST(DOMWebSocketTest, maximumReasonSize)
353 { 354 {
354 V8TestingScope scope; 355 V8TestingScope scope;
355 DOMWebSocketTestScope webSocketScope(scope.getExecutionContext()); 356 DOMWebSocketTestScope webSocketScope(scope.getExecutionContext());
356 { 357 {
357 InSequence s; 358 InSequence s;
358 EXPECT_CALL(webSocketScope.channel(), connect(KURL(KURL(), "ws://example .com/"), String())).WillOnce(Return(true)); 359 EXPECT_CALL(webSocketScope.channel(), connect(KURL(KURL(), "ws://example .com/"), String())).WillOnce(Return(true));
359 EXPECT_CALL(webSocketScope.channel(), failMock(_, _, _)); 360 EXPECT_CALL(webSocketScope.channel(), failMock(_, _, _));
360 } 361 }
361 String reason; 362 StringBuilder reason;
362 for (size_t i = 0; i < 123; ++i) 363 for (size_t i = 0; i < 123; ++i)
363 reason.append("a"); 364 reason.append('a');
364 webSocketScope.socket().connect("ws://example.com/", Vector<String>(), scope .getExceptionState()); 365 webSocketScope.socket().connect("ws://example.com/", Vector<String>(), scope .getExceptionState());
365 366
366 EXPECT_FALSE(scope.getExceptionState().hadException()); 367 EXPECT_FALSE(scope.getExceptionState().hadException());
367 EXPECT_EQ(DOMWebSocket::CONNECTING, webSocketScope.socket().readyState()); 368 EXPECT_EQ(DOMWebSocket::CONNECTING, webSocketScope.socket().readyState());
368 369
369 webSocketScope.socket().close(1000, reason, scope.getExceptionState()); 370 webSocketScope.socket().close(1000, reason.toString(), scope.getExceptionSta te());
370 371
371 EXPECT_FALSE(scope.getExceptionState().hadException()); 372 EXPECT_FALSE(scope.getExceptionState().hadException());
372 EXPECT_EQ(DOMWebSocket::CLOSING, webSocketScope.socket().readyState()); 373 EXPECT_EQ(DOMWebSocket::CLOSING, webSocketScope.socket().readyState());
373 } 374 }
374 375
375 TEST(DOMWebSocketTest, reasonSizeExceeding) 376 TEST(DOMWebSocketTest, reasonSizeExceeding)
376 { 377 {
377 V8TestingScope scope; 378 V8TestingScope scope;
378 DOMWebSocketTestScope webSocketScope(scope.getExecutionContext()); 379 DOMWebSocketTestScope webSocketScope(scope.getExecutionContext());
379 { 380 {
380 InSequence s; 381 InSequence s;
381 EXPECT_CALL(webSocketScope.channel(), connect(KURL(KURL(), "ws://example .com/"), String())).WillOnce(Return(true)); 382 EXPECT_CALL(webSocketScope.channel(), connect(KURL(KURL(), "ws://example .com/"), String())).WillOnce(Return(true));
382 } 383 }
383 String reason; 384 StringBuilder reason;
384 for (size_t i = 0; i < 124; ++i) 385 for (size_t i = 0; i < 124; ++i)
385 reason.append("a"); 386 reason.append('a');
386 webSocketScope.socket().connect("ws://example.com/", Vector<String>(), scope .getExceptionState()); 387 webSocketScope.socket().connect("ws://example.com/", Vector<String>(), scope .getExceptionState());
387 388
388 EXPECT_FALSE(scope.getExceptionState().hadException()); 389 EXPECT_FALSE(scope.getExceptionState().hadException());
389 EXPECT_EQ(DOMWebSocket::CONNECTING, webSocketScope.socket().readyState()); 390 EXPECT_EQ(DOMWebSocket::CONNECTING, webSocketScope.socket().readyState());
390 391
391 webSocketScope.socket().close(1000, reason, scope.getExceptionState()); 392 webSocketScope.socket().close(1000, reason.toString(), scope.getExceptionSta te());
392 393
393 EXPECT_TRUE(scope.getExceptionState().hadException()); 394 EXPECT_TRUE(scope.getExceptionState().hadException());
394 EXPECT_EQ(SyntaxError, scope.getExceptionState().code()); 395 EXPECT_EQ(SyntaxError, scope.getExceptionState().code());
395 EXPECT_EQ("The message must not be greater than 123 bytes.", scope.getExcept ionState().message()); 396 EXPECT_EQ("The message must not be greater than 123 bytes.", scope.getExcept ionState().message());
396 EXPECT_EQ(DOMWebSocket::CONNECTING, webSocketScope.socket().readyState()); 397 EXPECT_EQ(DOMWebSocket::CONNECTING, webSocketScope.socket().readyState());
397 } 398 }
398 399
399 TEST(DOMWebSocketTest, closeWhenConnecting) 400 TEST(DOMWebSocketTest, closeWhenConnecting)
400 { 401 {
401 V8TestingScope scope; 402 V8TestingScope scope;
(...skipping 406 matching lines...) Expand 10 before | Expand all | Expand 10 after
808 EXPECT_EQ(InvalidAccessError, scope.getExceptionState().code()); 809 EXPECT_EQ(InvalidAccessError, scope.getExceptionState().code());
809 EXPECT_EQ(String::format("The code must be either 1000, or between 3000 and 4999. %d is neither.", GetParam()), scope.getExceptionState().message()); 810 EXPECT_EQ(String::format("The code must be either 1000, or between 3000 and 4999. %d is neither.", GetParam()), scope.getExceptionState().message());
810 EXPECT_EQ(DOMWebSocket::CONNECTING, webSocketScope.socket().readyState()); 811 EXPECT_EQ(DOMWebSocket::CONNECTING, webSocketScope.socket().readyState());
811 } 812 }
812 813
813 INSTANTIATE_TEST_CASE_P(DOMWebSocketInvalidClosingCode, DOMWebSocketInvalidClosi ngCodeTest, ::testing::Values(0, 1, 998, 999, 1001, 2999, 5000, 9999, 65535)); 814 INSTANTIATE_TEST_CASE_P(DOMWebSocketInvalidClosingCode, DOMWebSocketInvalidClosi ngCodeTest, ::testing::Values(0, 1, 998, 999, 1001, 2999, 5000, 9999, 65535));
814 815
815 } // namespace 816 } // namespace
816 817
817 } // namespace blink 818 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698