Chromium Code Reviews| Index: ppapi/tests/test_transport.cc |
| =================================================================== |
| --- ppapi/tests/test_transport.cc (revision 68979) |
| +++ ppapi/tests/test_transport.cc (working copy) |
| @@ -9,11 +9,11 @@ |
| #include <string> |
| #include "ppapi/c/dev/ppb_testing_dev.h" |
| -#include "ppapi/c/dev/ppb_transport_dev.h" |
| #include "ppapi/c/pp_errors.h" |
| #include "ppapi/cpp/completion_callback.h" |
| #include "ppapi/cpp/instance.h" |
| #include "ppapi/cpp/module.h" |
| +#include "ppapi/cpp/dev/transport_dev.h" |
| #include "ppapi/tests/test_utils.h" |
| #include "ppapi/tests/testing_instance.h" |
| @@ -26,11 +26,64 @@ |
| } |
| void TestTransport::RunTest() { |
| - RUN_TEST(FirstTransport); |
| + RUN_TEST(Basics); |
| // TODO(juberti): more Transport tests here... |
| } |
| -std::string TestTransport::TestFirstTransport() { |
| - // TODO(juberti): actual test |
| +std::string TestTransport::TestBasics() { |
| + pp::Transport_Dev t1("test", ""), t2("test", ""); |
| + TestCompletionCallback c1, c2, gna1, gna2; |
| + PP_Var a1, a2; |
| + int32_t rv; |
| + |
| + rv = t1.Connect(c1); |
| + if (rv != PP_ERROR_WOULDBLOCK) { |
| + return ReportError("Transport::Connect", rv); |
| + } |
| + rv = t2.Connect(c2); |
| + if (rv != PP_ERROR_WOULDBLOCK) { |
| + return ReportError("Transport::Connect", rv); |
| + } |
| + rv = t1.GetNextAddress(&a1, gna1); |
| + if (rv != PP_ERROR_WOULDBLOCK) { |
| + return ReportError("Transport::GetNextAddress", rv); |
| + } |
| + rv = t2.GetNextAddress(&a2, gna2); |
| + if (rv != PP_ERROR_WOULDBLOCK) { |
| + return ReportError("Transport::GetNextAddress", rv); |
| + } |
| + rv = gna1.WaitForResult(); |
| + if (rv != 0) { |
| + return ReportError("Transport::GetNextAddress", rv); |
| + } |
| + rv = gna2.WaitForResult(); |
| + if (rv != 0) { |
| + return ReportError("Transport::GetNextAddress", rv); |
| + } |
| + rv = t1.ReceiveRemoteAddress(a2); |
| + if (rv != 0) { |
| + return ReportError("Transport::ReceiveRemoteAddress", rv); |
| + } |
| + rv = t2.ReceiveRemoteAddress(a1); |
| + if (rv != 0) { |
| + return ReportError("Transport::ReceiveRemoteAddress", rv); |
| + } |
| + rv = c1.WaitForResult(); |
| + if (rv != 0) { |
| + return ReportError("Transport::Connect", rv); |
| + } |
| + rv = c2.WaitForResult(); |
| + if (rv != 0) { |
| + return ReportError("Transport::Connect", rv); |
| + } |
| + if (!t1.IsWritable()) { |
| + return ReportError("Transport::IsWritable", 0); |
| + } |
| + if (!t2.IsWritable()) { |
| + return ReportError("Transport::IsWritable", 0); |
| + } |
| + /*rv = t1.Send(kTestData, sizeof(kTestData), IsWritable()) { |
|
brettw
2010/12/21 21:55:50
This should be either uncommented or have a commen
|
| + return ReportError("Transport::IsWritable", 0); |
| + }*/ |
| return ""; |
| } |