aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--osp/impl/mdns_responder_service_unittest.cc1
-rw-r--r--osp/impl/presentation/presentation_connection_unittest.cc11
-rw-r--r--osp/impl/presentation/presentation_controller.cc4
-rw-r--r--osp/impl/presentation/presentation_controller_unittest.cc9
-rw-r--r--osp/impl/presentation/presentation_receiver_unittest.cc4
-rw-r--r--osp/impl/presentation/testing/mock_connection_delegate.h2
-rw-r--r--osp/impl/presentation/url_availability_requester_unittest.cc30
-rw-r--r--osp/impl/quic/testing/quic_test_support.h8
-rw-r--r--osp/impl/service_listener_impl_unittest.cc20
-rw-r--r--osp/impl/service_publisher_impl_unittest.cc8
-rw-r--r--platform/base/logging.cc2
-rw-r--r--tools/cddl/logging.cc1
12 files changed, 71 insertions, 29 deletions
diff --git a/osp/impl/mdns_responder_service_unittest.cc b/osp/impl/mdns_responder_service_unittest.cc
index 2628a323..cebf6890 100644
--- a/osp/impl/mdns_responder_service_unittest.cc
+++ b/osp/impl/mdns_responder_service_unittest.cc
@@ -682,6 +682,7 @@ TEST_F(MdnsResponderServiceTest, ServiceQueriesStoppedPtrFirst) {
}
TEST_F(MdnsResponderServiceTest, MultipleInterfaceRemove) {
+ EXPECT_CALL(observer_, OnStarted());
service_listener_->Start();
auto* mdns_responder = mdns_responder_factory_->last_mdns_responder();
diff --git a/osp/impl/presentation/presentation_connection_unittest.cc b/osp/impl/presentation/presentation_connection_unittest.cc
index e52fed48..0c5096cf 100644
--- a/osp/impl/presentation/presentation_connection_unittest.cc
+++ b/osp/impl/presentation/presentation_connection_unittest.cc
@@ -22,8 +22,11 @@ namespace presentation {
using ::testing::_;
using ::testing::Invoke;
+using ::testing::NiceMock;
-class MockParentDelegate final : public Connection::ParentDelegate {
+namespace {
+
+class MockParentDelegate : public Connection::ParentDelegate {
public:
MockParentDelegate() = default;
~MockParentDelegate() override = default;
@@ -49,6 +52,8 @@ class MockConnectRequest final
MOCK_METHOD1(OnConnectionFailed, void(uint64_t request_id));
};
+} // namespace
+
class ConnectionTest : public ::testing::Test {
protected:
void SetUp() override {
@@ -76,8 +81,8 @@ class ConnectionTest : public ::testing::Test {
quic_bridge_.controller_demuxer.get()};
ConnectionManager receiver_connection_manager_{
quic_bridge_.receiver_demuxer.get()};
- MockParentDelegate mock_controller_;
- MockParentDelegate mock_receiver_;
+ NiceMock<MockParentDelegate> mock_controller_;
+ NiceMock<MockParentDelegate> mock_receiver_;
};
TEST_F(ConnectionTest, ConnectAndSend) {
diff --git a/osp/impl/presentation/presentation_controller.cc b/osp/impl/presentation/presentation_controller.cc
index de10290b..fa62a3df 100644
--- a/osp/impl/presentation/presentation_controller.cc
+++ b/osp/impl/presentation/presentation_controller.cc
@@ -679,8 +679,8 @@ ErrorOr<size_t> Controller::TerminationListener::OnStreamMessage(
// static
std::string Controller::MakePresentationId(const std::string& url,
const std::string& service_id) {
- OSP_UNIMPLEMENTED();
- // TODO(btolsch): This is just a placeholder for the demo.
+ // TODO(btolsch): This is just a placeholder for the demo. It should
+ // eventually become a GUID/unguessable token routine.
std::string safe_id = service_id;
for (auto& c : safe_id)
if (c < ' ' || c > '~')
diff --git a/osp/impl/presentation/presentation_controller_unittest.cc b/osp/impl/presentation/presentation_controller_unittest.cc
index e1758c85..5b09d10c 100644
--- a/osp/impl/presentation/presentation_controller_unittest.cc
+++ b/osp/impl/presentation/presentation_controller_unittest.cc
@@ -23,6 +23,9 @@ namespace presentation {
using std::chrono::seconds;
using ::testing::_;
using ::testing::Invoke;
+using ::testing::NiceMock;
+
+namespace {
const char kTestUrl[] = "https://example.foo";
@@ -68,6 +71,8 @@ class MockRequestDelegate final : public RequestDelegate {
MOCK_METHOD1(OnError, void(const Error& error));
};
+} // namespace
+
class ControllerTest : public ::testing::Test {
protected:
void SetUp() override {
@@ -381,7 +386,7 @@ TEST_F(ControllerTest, ReceiverWatchCancel) {
TEST_F(ControllerTest, StartPresentation) {
MockMessageCallback mock_callback;
- MockConnectionDelegate mock_connection_delegate;
+ NiceMock<MockConnectionDelegate> mock_connection_delegate;
std::unique_ptr<Connection> connection;
StartPresentation(&mock_callback, &mock_connection_delegate, &connection);
}
@@ -461,7 +466,7 @@ TEST_F(ControllerTest, CloseConnection) {
TEST_F(ControllerTest, Reconnect) {
MockMessageCallback mock_callback;
- MockConnectionDelegate mock_connection_delegate;
+ NiceMock<MockConnectionDelegate> mock_connection_delegate;
std::unique_ptr<Connection> connection;
StartPresentation(&mock_callback, &mock_connection_delegate, &connection);
diff --git a/osp/impl/presentation/presentation_receiver_unittest.cc b/osp/impl/presentation/presentation_receiver_unittest.cc
index 9a6e0dbd..51e01aa9 100644
--- a/osp/impl/presentation/presentation_receiver_unittest.cc
+++ b/osp/impl/presentation/presentation_receiver_unittest.cc
@@ -20,10 +20,12 @@
namespace openscreen {
namespace presentation {
+
namespace {
using ::testing::_;
using ::testing::Invoke;
+using ::testing::NiceMock;
class MockConnectRequest final
: public ProtocolConnectionClient::ConnectionRequestCallback {
@@ -170,7 +172,7 @@ TEST_F(PresentationReceiverTest, StartPresentation) {
EXPECT_EQ(presentation_id, info.id);
EXPECT_EQ(url1_, info.url);
- MockConnectionDelegate null_connection_delegate;
+ NiceMock<MockConnectionDelegate> null_connection_delegate;
Connection connection(Connection::PresentationInfo{presentation_id, url1_},
&null_connection_delegate, Receiver::Get());
Receiver::Get()->OnPresentationStarted(presentation_id, &connection,
diff --git a/osp/impl/presentation/testing/mock_connection_delegate.h b/osp/impl/presentation/testing/mock_connection_delegate.h
index 85c3c113..08960686 100644
--- a/osp/impl/presentation/testing/mock_connection_delegate.h
+++ b/osp/impl/presentation/testing/mock_connection_delegate.h
@@ -11,7 +11,7 @@
namespace openscreen {
namespace presentation {
-class MockConnectionDelegate final : public Connection::Delegate {
+class MockConnectionDelegate : public Connection::Delegate {
public:
~MockConnectionDelegate() override = default;
diff --git a/osp/impl/presentation/url_availability_requester_unittest.cc b/osp/impl/presentation/url_availability_requester_unittest.cc
index 5b8c2f8f..9732fc38 100644
--- a/osp/impl/presentation/url_availability_requester_unittest.cc
+++ b/osp/impl/presentation/url_availability_requester_unittest.cc
@@ -24,9 +24,12 @@ namespace presentation {
using ::testing::_;
using ::testing::Invoke;
+using ::testing::Mock;
using ::testing::Test;
-class MockReceiverObserver final : public ReceiverObserver {
+namespace {
+
+class MockReceiverObserver : public ReceiverObserver {
public:
~MockReceiverObserver() override = default;
@@ -37,14 +40,7 @@ class MockReceiverObserver final : public ReceiverObserver {
void(const std::string&, const std::string&));
};
-class NullObserver final : public ProtocolConnectionServiceObserver {
- public:
- ~NullObserver() override = default;
- void OnRunning() override {}
- void OnStopped() override {}
- void OnMetrics(const NetworkMetrics& metrics) override {}
- void OnError(const Error& error) override {}
-};
+} // namespace
class UrlAvailabilityRequesterTest : public Test {
public:
@@ -367,12 +363,15 @@ TEST_F(UrlAvailabilityRequesterTest, RemoveObserverUrls) {
EXPECT_CALL(mock_observer1, OnReceiverUnavailable(url1_, service_id_))
.Times(0);
quic_bridge_.RunTasksUntilIdle();
+ Mock::VerifyAndClearExpectations(&mock_observer1);
MockReceiverObserver mock_observer2;
+ EXPECT_CALL(mock_observer2, OnReceiverAvailable(url1_, service_id_));
listener_.AddObserver({url1_, url2_}, &mock_observer2);
ExpectStreamMessage(&mock_callback_, &request);
quic_bridge_.RunTasksUntilIdle();
+ Mock::VerifyAndClearExpectations(&mock_observer2);
EXPECT_EQ(std::vector<std::string>{url2_}, request.urls);
@@ -385,6 +384,8 @@ TEST_F(UrlAvailabilityRequesterTest, RemoveObserverUrls) {
EXPECT_CALL(mock_observer2, OnReceiverAvailable(_, service_id_)).Times(0);
EXPECT_CALL(mock_observer2, OnReceiverUnavailable(url2_, service_id_));
quic_bridge_.RunTasksUntilIdle();
+ Mock::VerifyAndClearExpectations(&mock_observer1);
+ Mock::VerifyAndClearExpectations(&mock_observer2);
SendAvailabilityEvent(
url1_watch_id,
@@ -395,6 +396,8 @@ TEST_F(UrlAvailabilityRequesterTest, RemoveObserverUrls) {
.Times(0);
EXPECT_CALL(mock_observer2, OnReceiverUnavailable(url1_, service_id_));
quic_bridge_.RunTasksUntilIdle();
+ Mock::VerifyAndClearExpectations(&mock_observer1);
+ Mock::VerifyAndClearExpectations(&mock_observer2);
}
TEST_F(UrlAvailabilityRequesterTest, RemoveObserver) {
@@ -421,12 +424,15 @@ TEST_F(UrlAvailabilityRequesterTest, RemoveObserver) {
EXPECT_CALL(mock_observer1, OnReceiverUnavailable(url1_, service_id_))
.Times(0);
quic_bridge_.RunTasksUntilIdle();
+ Mock::VerifyAndClearExpectations(&mock_observer1);
MockReceiverObserver mock_observer2;
+ EXPECT_CALL(mock_observer2, OnReceiverAvailable(url1_, service_id_));
listener_.AddObserver({url1_, url2_}, &mock_observer2);
ExpectStreamMessage(&mock_callback_, &request);
quic_bridge_.RunTasksUntilIdle();
+ Mock::VerifyAndClearExpectations(&mock_observer2);
uint64_t url2_watch_id = request.watch_id;
EXPECT_EQ(std::vector<std::string>{url2_}, request.urls);
@@ -440,6 +446,8 @@ TEST_F(UrlAvailabilityRequesterTest, RemoveObserver) {
EXPECT_CALL(mock_observer2, OnReceiverAvailable(_, service_id_)).Times(0);
EXPECT_CALL(mock_observer2, OnReceiverUnavailable(url2_, service_id_));
quic_bridge_.RunTasksUntilIdle();
+ Mock::VerifyAndClearExpectations(&mock_observer1);
+ Mock::VerifyAndClearExpectations(&mock_observer2);
SendAvailabilityEvent(
url1_watch_id,
@@ -450,6 +458,8 @@ TEST_F(UrlAvailabilityRequesterTest, RemoveObserver) {
.Times(0);
EXPECT_CALL(mock_observer2, OnReceiverUnavailable(url1_, service_id_));
quic_bridge_.RunTasksUntilIdle();
+ Mock::VerifyAndClearExpectations(&mock_observer1);
+ Mock::VerifyAndClearExpectations(&mock_observer2);
listener_.RemoveObserver(&mock_observer2);
@@ -466,6 +476,8 @@ TEST_F(UrlAvailabilityRequesterTest, RemoveObserver) {
EXPECT_CALL(mock_observer1, OnReceiverUnavailable(_, service_id_)).Times(0);
EXPECT_CALL(mock_observer2, OnReceiverUnavailable(_, service_id_)).Times(0);
quic_bridge_.RunTasksUntilIdle();
+ Mock::VerifyAndClearExpectations(&mock_observer1);
+ Mock::VerifyAndClearExpectations(&mock_observer2);
}
TEST_F(UrlAvailabilityRequesterTest, EventUpdate) {
diff --git a/osp/impl/quic/testing/quic_test_support.h b/osp/impl/quic/testing/quic_test_support.h
index 9ee59e20..6f1720b9 100644
--- a/osp/impl/quic/testing/quic_test_support.h
+++ b/osp/impl/quic/testing/quic_test_support.h
@@ -21,7 +21,7 @@
namespace openscreen {
-class MockServiceObserver final : public ProtocolConnectionServiceObserver {
+class MockServiceObserver : public ProtocolConnectionServiceObserver {
public:
~MockServiceObserver() override = default;
@@ -31,7 +31,7 @@ class MockServiceObserver final : public ProtocolConnectionServiceObserver {
MOCK_METHOD1(OnError, void(const Error& error));
};
-class MockServerObserver final : public ProtocolConnectionServer::Observer {
+class MockServerObserver : public ProtocolConnectionServer::Observer {
public:
~MockServerObserver() override = default;
@@ -65,8 +65,8 @@ class FakeQuicBridge {
std::unique_ptr<QuicClient> quic_client;
std::unique_ptr<QuicServer> quic_server;
std::unique_ptr<FakeQuicConnectionFactoryBridge> fake_bridge;
- MockServiceObserver mock_client_observer;
- MockServerObserver mock_server_observer;
+ ::testing::NiceMock<MockServiceObserver> mock_client_observer;
+ ::testing::NiceMock<MockServerObserver> mock_server_observer;
};
} // namespace openscreen
diff --git a/osp/impl/service_listener_impl_unittest.cc b/osp/impl/service_listener_impl_unittest.cc
index da91150d..3f3cf571 100644
--- a/osp/impl/service_listener_impl_unittest.cc
+++ b/osp/impl/service_listener_impl_unittest.cc
@@ -15,9 +15,13 @@ namespace {
using ::testing::_;
using ::testing::ElementsAre;
using ::testing::Expectation;
+using ::testing::Mock;
+using ::testing::NiceMock;
using State = ServiceListener::State;
+namespace {
+
class MockObserver final : public ServiceListener::Observer {
public:
~MockObserver() = default;
@@ -37,7 +41,7 @@ class MockObserver final : public ServiceListener::Observer {
MOCK_METHOD1(OnMetrics, void(ServiceListener::Metrics));
};
-class MockMdnsDelegate final : public ServiceListenerImpl::Delegate {
+class MockMdnsDelegate : public ServiceListenerImpl::Delegate {
public:
MockMdnsDelegate() = default;
~MockMdnsDelegate() override = default;
@@ -53,13 +57,15 @@ class MockMdnsDelegate final : public ServiceListenerImpl::Delegate {
MOCK_METHOD0(RunTasksListener, void());
};
+} // namespace
+
class ServiceListenerImplTest : public ::testing::Test {
protected:
void SetUp() override {
service_listener_ = std::make_unique<ServiceListenerImpl>(&mock_delegate_);
}
- MockMdnsDelegate mock_delegate_;
+ NiceMock<MockMdnsDelegate> mock_delegate_;
std::unique_ptr<ServiceListenerImpl> service_listener_;
};
@@ -280,23 +286,31 @@ TEST_F(ServiceListenerImplTest, ObserveFromSearching) {
MockObserver observer;
service_listener_->AddObserver(&observer);
+ EXPECT_CALL(observer, OnStarted());
service_listener_->Start();
mock_delegate_.SetState(State::kRunning);
+ Mock::VerifyAndClearExpectations(&observer);
+ EXPECT_CALL(observer, OnSearching());
service_listener_->SearchNow();
mock_delegate_.SetState(State::kSearching);
+ Mock::VerifyAndClearExpectations(&observer);
- service_listener_->Suspend();
EXPECT_CALL(observer, OnSuspended());
+ service_listener_->Suspend();
mock_delegate_.SetState(State::kSuspended);
+ Mock::VerifyAndClearExpectations(&observer);
+ EXPECT_CALL(observer, OnSearching());
EXPECT_TRUE(service_listener_->SearchNow());
mock_delegate_.SetState(State::kSearching);
+ Mock::VerifyAndClearExpectations(&observer);
service_listener_->Resume();
EXPECT_CALL(observer, OnStarted());
mock_delegate_.SetState(State::kRunning);
service_listener_->RemoveObserver(&observer);
+ Mock::VerifyAndClearExpectations(&observer);
}
TEST_F(ServiceListenerImplTest, ReceiverObserverPassThrough) {
diff --git a/osp/impl/service_publisher_impl_unittest.cc b/osp/impl/service_publisher_impl_unittest.cc
index 004c7204..8f838bcc 100644
--- a/osp/impl/service_publisher_impl_unittest.cc
+++ b/osp/impl/service_publisher_impl_unittest.cc
@@ -13,6 +13,8 @@ namespace openscreen {
namespace {
using ::testing::Expectation;
+using ::testing::NiceMock;
+
using State = ServicePublisher::State;
class MockObserver final : public ServicePublisher::Observer {
@@ -28,7 +30,7 @@ class MockObserver final : public ServicePublisher::Observer {
MOCK_METHOD1(OnMetrics, void(ServicePublisher::Metrics));
};
-class MockMdnsDelegate final : public ServicePublisherImpl::Delegate {
+class MockMdnsDelegate : public ServicePublisherImpl::Delegate {
public:
MockMdnsDelegate() = default;
~MockMdnsDelegate() override = default;
@@ -50,7 +52,7 @@ class ServicePublisherImplTest : public ::testing::Test {
std::make_unique<ServicePublisherImpl>(nullptr, &mock_delegate_);
}
- MockMdnsDelegate mock_delegate_;
+ NiceMock<MockMdnsDelegate> mock_delegate_;
std::unique_ptr<ServicePublisherImpl> service_publisher_;
};
@@ -131,7 +133,7 @@ TEST_F(ServicePublisherImplTest, SuspendAndResume) {
TEST_F(ServicePublisherImplTest, ObserverTransitions) {
MockObserver observer;
- MockMdnsDelegate mock_delegate;
+ NiceMock<MockMdnsDelegate> mock_delegate;
service_publisher_ =
std::make_unique<ServicePublisherImpl>(&observer, &mock_delegate);
diff --git a/platform/base/logging.cc b/platform/base/logging.cc
index 5d8bf86f..2b447e79 100644
--- a/platform/base/logging.cc
+++ b/platform/base/logging.cc
@@ -14,7 +14,7 @@ namespace openscreen {
namespace platform {
namespace {
-LogLevel g_log_level = LogLevel::kInfo;
+LogLevel g_log_level = LogLevel::kWarning;
std::ostream& operator<<(std::ostream& os, const LogLevel& level) {
os << LogLevelToString(level);
diff --git a/tools/cddl/logging.cc b/tools/cddl/logging.cc
index 4cb694e6..a984c409 100644
--- a/tools/cddl/logging.cc
+++ b/tools/cddl/logging.cc
@@ -35,6 +35,7 @@ void Logger::VerifyInitialized() {
Logger::Logger() {
this->is_initialized_ = false;
openscreen::platform::LogInit(nullptr);
+ openscreen::platform::SetLogLevel(openscreen::platform::LogLevel::kInfo);
}
// Static:
Logger* Logger::Get() {