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

Unified Diff: ppapi/tests/test_websocket.cc

Issue 8821010: WebSocket Pepper API: C++ bindings implementation. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: refine documents Created 9 years 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 side-by-side diff with in-line comments
Download patch
« ppapi/shared_impl/var_tracker.cc ('K') | « ppapi/tests/test_websocket.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ppapi/tests/test_websocket.cc
diff --git a/ppapi/tests/test_websocket.cc b/ppapi/tests/test_websocket.cc
index e8e55581d272f11cae4880d1e689cd7a313d7964..e27f49bca85cd6a1cc005a528df0f6bc397a74b9 100644
--- a/ppapi/tests/test_websocket.cc
+++ b/ppapi/tests/test_websocket.cc
@@ -5,6 +5,7 @@
#include "ppapi/tests/test_websocket.h"
#include <string.h>
+#include <vector>
#include "ppapi/c/dev/ppb_websocket_dev.h"
#include "ppapi/c/pp_errors.h"
@@ -12,6 +13,7 @@
#include "ppapi/c/pp_completion_callback.h"
#include "ppapi/c/ppb_core.h"
#include "ppapi/c/ppb_var.h"
+#include "ppapi/cpp/dev/websocket_dev.h"
#include "ppapi/cpp/instance.h"
#include "ppapi/cpp/module.h"
#include "ppapi/tests/test_utils.h"
@@ -61,6 +63,8 @@ void TestWebSocket::RunTests(const std::string& filter) {
RUN_TEST(ValidClose, filter);
RUN_TEST(GetProtocol, filter);
RUN_TEST(TextSendReceive, filter);
+
+ RUN_TEST(CcInterfaces, filter);
}
PP_Var TestWebSocket::CreateVar(const char* string) {
@@ -138,15 +142,18 @@ std::string TestWebSocket::TestUninitializedPropertiesAccess() {
PP_Var close_reason = websocket_interface_->GetCloseReason(ws);
ASSERT_TRUE(AreEqual(close_reason, ""));
+ ReleaseVar(close_reason);
PP_Bool close_was_clean = websocket_interface_->GetCloseWasClean(ws);
ASSERT_EQ(PP_FALSE, close_was_clean);
PP_Var extensions = websocket_interface_->GetExtensions(ws);
ASSERT_TRUE(AreEqual(extensions, ""));
+ ReleaseVar(extensions);
PP_Var protocol = websocket_interface_->GetProtocol(ws);
ASSERT_TRUE(AreEqual(protocol, ""));
+ ReleaseVar(protocol);
PP_WebSocketReadyState_Dev ready_state =
websocket_interface_->GetReadyState(ws);
@@ -154,6 +161,7 @@ std::string TestWebSocket::TestUninitializedPropertiesAccess() {
PP_Var url = websocket_interface_->GetURL(ws);
ASSERT_TRUE(AreEqual(url, ""));
+ ReleaseVar(url);
PASS();
}
@@ -407,3 +415,35 @@ std::string TestWebSocket::TestTextSendReceive() {
// TODO(toyoshim): Add tests for didReceiveMessageError().
// TODO(toyoshim): Add other function tests.
+
+std::string TestWebSocket::TestCcInterfaces() {
+ // C++ bindings is simple straightforward, then just verifies interfaces work
+ // as a interface bridge fine.
+ pp::WebSocket_Dev ws(instance_);
+
+ // Check uninitialized properties access.
+ ASSERT_EQ(0, ws.GetBufferedAmount());
+ ASSERT_EQ(0, ws.GetCloseCode());
+ ASSERT_TRUE(AreEqual(ws.GetCloseReason().pp_var(), ""));
+ ASSERT_TRUE(AreEqual(ws.GetCloseReason().pp_var(), ""));
+ ASSERT_EQ(false, ws.GetCloseWasClean());
+ //ASSERT_TRUE(AreEqual(ws.GetExtensions().pp_var(), ""));
+ //ASSERT_TRUE(AreEqual(ws.GetProtocol().pp_var(), ""));
+ ASSERT_EQ(PP_WEBSOCKETREADYSTATE_INVALID_DEV, ws.GetReadyState());
+ //ASSERT_TRUE(AreEqual(ws.GetURL().pp_var(), ""));
+
+ // Check communication interfaces (connect, send, and receive).
+ TestCompletionCallback connect_callback(instance_->pp_instance());
+ int32_t result = ws.Connect(pp::Var(std::string(kEchoServerURL)), NULL, 0U,
+ connect_callback);
+ ASSERT_EQ(PP_OK_COMPLETIONPENDING, result);
+ //result = connect_callback.WaitForResult();
+ //ASSERT_EQ(PP_OK, result);
+
+ // TODO(toyoshim): Implement.
+
+ // Check initialized properties access.
+ // TODO(toyoshim): Implement.
+
+ PASS();
+}
« ppapi/shared_impl/var_tracker.cc ('K') | « ppapi/tests/test_websocket.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698