Chromium Code Reviews| Index: services/video_capture/test/device_factory_provider_test.h |
| diff --git a/services/video_capture/test/service_test.h b/services/video_capture/test/device_factory_provider_test.h |
| similarity index 26% |
| rename from services/video_capture/test/service_test.h |
| rename to services/video_capture/test/device_factory_provider_test.h |
| index 3015e333e7d357c468ab8b6a111321b225471cca..7dcd968ffb23dd20cdf19e8f0671d423843f3755 100644 |
| --- a/services/video_capture/test/service_test.h |
| +++ b/services/video_capture/test/device_factory_provider_test.h |
| @@ -2,31 +2,63 @@ |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| -#ifndef SERVICES_VIDEO_CAPTURE_VIDEO_CAPTURE_TEST_SERVICE_TEST_H_ |
| -#define SERVICES_VIDEO_CAPTURE_VIDEO_CAPTURE_TEST_SERVICE_TEST_H_ |
| +#ifndef SERVICES_VIDEO_CAPTURE_VIDEO_CAPTURE_TEST_DEVICE_FACTORY_PROVIDER_TEST_H_ |
| +#define SERVICES_VIDEO_CAPTURE_VIDEO_CAPTURE_TEST_DEVICE_FACTORY_PROVIDER_TEST_H_ |
| +#include "base/run_loop.h" |
| #include "base/test/mock_callback.h" |
| +#include "mojo/public/cpp/bindings/binding.h" |
| #include "services/service_manager/public/cpp/service_test.h" |
| -#include "services/video_capture/public/interfaces/service.mojom.h" |
| +#include "services/service_manager/public/interfaces/service_manager.mojom.h" |
| +#include "services/video_capture/public/interfaces/device_factory_provider.mojom.h" |
| #include "testing/gmock/include/gmock/gmock.h" |
| namespace video_capture { |
| +class ServiceManagerListenerImpl |
|
mcasas
2017/04/27 20:10:02
I think we should forward declare this class and
chfremer
2017/04/27 23:48:14
This class is used by the code in device_factory_p
|
| + : public service_manager::mojom::ServiceManagerListener { |
| + public: |
| + ServiceManagerListenerImpl( |
| + service_manager::mojom::ServiceManagerListenerRequest request, |
| + base::RunLoop* loop); |
| + ~ServiceManagerListenerImpl() override; |
| + |
| + // mojom::ServiceManagerListener implementation. |
| + void OnInit(std::vector<service_manager::mojom::RunningServiceInfoPtr> |
| + instances) override { |
| + loop_->Quit(); |
| + } |
| + void OnServiceCreated( |
| + service_manager::mojom::RunningServiceInfoPtr instance) override {} |
| + void OnServiceStarted(const service_manager::Identity& identity, |
| + uint32_t pid) override {} |
| + void OnServiceFailedToStart( |
| + const service_manager::Identity& identity) override {} |
| + |
| + MOCK_METHOD1(OnServiceStopped, |
| + void(const service_manager::Identity& identity)); |
| + |
| + private: |
| + mojo::Binding<service_manager::mojom::ServiceManagerListener> binding_; |
| + base::RunLoop* loop_; |
| +}; |
| + |
| // Basic test fixture that sets up a connection to the fake device factory. |
| -class ServiceTest : public service_manager::test::ServiceTest { |
| +class DeviceFactoryProviderTest : public service_manager::test::ServiceTest { |
| public: |
| - ServiceTest(); |
| - ~ServiceTest() override; |
| + DeviceFactoryProviderTest(); |
| + ~DeviceFactoryProviderTest() override; |
| void SetUp() override; |
| protected: |
| - mojom::ServicePtr service_; |
| + mojom::DeviceFactoryProviderPtr factory_provider_; |
| mojom::DeviceFactoryPtr factory_; |
| base::MockCallback<mojom::DeviceFactory::GetDeviceInfosCallback> |
| device_info_receiver_; |
| + std::unique_ptr<ServiceManagerListenerImpl> service_state_observer_; |
| }; |
| } // namespace video_capture |
| -#endif // SERVICES_VIDEO_CAPTURE_VIDEO_CAPTURE_TEST_SERVICE_TEST_H_ |
| +#endif // SERVICES_VIDEO_CAPTURE_VIDEO_CAPTURE_TEST_DEVICE_FACTORY_PROVIDER_TEST_H_ |