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

Unified Diff: ppapi/tests/test_network_monitor_private.cc

Issue 9696051: Add NetworkListObserver utility class. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 9 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ppapi/tests/test_network_monitor_private.h ('k') | ppapi/utility/private/DEPS » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ppapi/tests/test_network_monitor_private.cc
diff --git a/ppapi/tests/test_network_monitor_private.cc b/ppapi/tests/test_network_monitor_private.cc
index fa87ec1f4b088f403f617ce446711b3d231bcdb1..6583cc48ea9da30008aa3f55ef18903329737c91 100644
--- a/ppapi/tests/test_network_monitor_private.cc
+++ b/ppapi/tests/test_network_monitor_private.cc
@@ -6,12 +6,14 @@
#include <string.h>
+#include "ppapi/cpp/instance_handle.h"
+#include "ppapi/cpp/module.h"
#include "ppapi/cpp/private/net_address_private.h"
#include "ppapi/cpp/private/network_list_private.h"
#include "ppapi/cpp/private/network_monitor_private.h"
#include "ppapi/tests/testing_instance.h"
#include "ppapi/tests/test_utils.h"
-#include "ppapi/cpp/module.h"
+#include "ppapi/utility/private/network_list_observer_private.h"
REGISTER_TEST_CASE(NetworkMonitorPrivate);
@@ -52,6 +54,22 @@ void TestCallback(void* user_data, PP_Resource network_list) {
static_cast<pp::CompletionCallback>(data->completion_callback).Run(PP_OK);
}
+
+class TestNetworkListObserver : public pp::NetworkListObserverPrivate {
+ public:
+ explicit TestNetworkListObserver(const pp::InstanceHandle& instance)
+ : pp::NetworkListObserverPrivate(instance),
+ completion_callback(instance.pp_instance()) {
+ }
+ virtual void OnNetworkListChanged(const pp::NetworkListPrivate& list) {
+ current_list = list;
+ static_cast<pp::CompletionCallback>(completion_callback).Run(PP_OK);
+ }
+
+ pp::NetworkListPrivate current_list;
+ TestCompletionCallback completion_callback;
+};
+
} // namespace
TestNetworkMonitorPrivate::TestNetworkMonitorPrivate(TestingInstance* instance)
@@ -69,12 +87,17 @@ void TestNetworkMonitorPrivate::RunTests(const std::string& filter) {
RUN_TEST_FORCEASYNC_AND_NOT(Basic, filter);
RUN_TEST_FORCEASYNC_AND_NOT(2Monitors, filter);
RUN_TEST_FORCEASYNC_AND_NOT(DeleteInCallback, filter);
+ RUN_TEST_FORCEASYNC_AND_NOT(ListObserver, filter);
}
-std::string TestNetworkMonitorPrivate::VerifyNetworkList(
- PP_Resource network_resource) {
- pp::NetworkListPrivate network_list(network_resource);
+std::string TestNetworkMonitorPrivate::VerifyNetworkListResource(
+ PP_Resource network_list_resource) {
+ pp::NetworkListPrivate network_list(network_list_resource);
+ return VerifyNetworkList(network_list);
+}
+std::string TestNetworkMonitorPrivate::VerifyNetworkList(
+ const pp::NetworkListPrivate& network_list) {
// Verify that there is at least one network interface.
size_t count = network_list.GetCount();
ASSERT_TRUE(count >= 1U);
@@ -137,7 +160,7 @@ std::string TestNetworkMonitorPrivate::VerifyNetworkList(
const char kFillValue = 123;
memset(&addresses.front(), kFillValue,
addresses.size() * sizeof(PP_NetAddress_Private));
- int result = interface->GetIpAddresses(network_resource, 0,
+ int result = interface->GetIpAddresses(network_list.pp_resource(), 0,
&addresses.front(), i);
ASSERT_EQ(result, static_cast<int>(address_count));
@@ -160,7 +183,8 @@ std::string TestNetworkMonitorPrivate::TestBasic() {
ASSERT_EQ(callback_data.completion_callback.WaitForResult(), PP_OK);
ASSERT_EQ(callback_data.call_counter, 1);
- ASSERT_SUBTEST_SUCCESS(VerifyNetworkList(callback_data.list_resource));
+ ASSERT_SUBTEST_SUCCESS(
+ VerifyNetworkListResource(callback_data.list_resource));
PASS();
}
@@ -173,7 +197,8 @@ std::string TestNetworkMonitorPrivate::Test2Monitors() {
ASSERT_EQ(callback_data.completion_callback.WaitForResult(), PP_OK);
ASSERT_EQ(callback_data.call_counter, 1);
- ASSERT_SUBTEST_SUCCESS(VerifyNetworkList(callback_data.list_resource));
+ ASSERT_SUBTEST_SUCCESS(
+ VerifyNetworkListResource(callback_data.list_resource));
CallbackData callback_data_2(instance_->pp_instance());
@@ -182,7 +207,8 @@ std::string TestNetworkMonitorPrivate::Test2Monitors() {
ASSERT_EQ(callback_data_2.completion_callback.WaitForResult(), PP_OK);
ASSERT_EQ(callback_data_2.call_counter, 1);
- ASSERT_SUBTEST_SUCCESS(VerifyNetworkList(callback_data_2.list_resource));
+ ASSERT_SUBTEST_SUCCESS(
+ VerifyNetworkListResource(callback_data_2.list_resource));
PASS();
}
@@ -198,7 +224,15 @@ std::string TestNetworkMonitorPrivate::TestDeleteInCallback() {
ASSERT_EQ(callback_data.completion_callback.WaitForResult(), PP_OK);
ASSERT_EQ(callback_data.call_counter, 1);
- ASSERT_SUBTEST_SUCCESS(VerifyNetworkList(callback_data.list_resource));
+ ASSERT_SUBTEST_SUCCESS(
+ VerifyNetworkListResource(callback_data.list_resource));
+
+ PASS();
+}
+std::string TestNetworkMonitorPrivate::TestListObserver() {
+ TestNetworkListObserver observer(instance_);
+ ASSERT_EQ(observer.completion_callback.WaitForResult(), PP_OK);
+ ASSERT_SUBTEST_SUCCESS(VerifyNetworkList(observer.current_list));
PASS();
}
« no previous file with comments | « ppapi/tests/test_network_monitor_private.h ('k') | ppapi/utility/private/DEPS » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698