def setup_class(cls):
        cls.controller = BeaconsController()
        cls.persistence = BeaconsMemoryPersistence()

        cls.service = BeaconsHttpServiceV1()
        cls.service.configure(http_config)

        cls.client = BeaconsHttpClientV1()
        cls.client.configure(http_config)

        cls.references = References.from_tuples(
            Descriptor('beacons', 'persistence', 'memory', 'default', '1.0'), cls.persistence,
            Descriptor('beacons', 'controller', 'default', 'default', '1.0'), cls.controller,
            Descriptor('beacons', 'service', 'http', 'default', '1.0'), cls.service,
            Descriptor('beacons', 'client', 'http', 'default', '1.0'), cls.client
        )
        cls.controller.set_references(cls.references)
        cls.client.set_references(cls.references)
        cls.service.set_references(cls.references)

        cls.fixture = BeaconsClientV1Fixture(cls.client)

        cls.persistence.open(None)
        cls.service.open(None)
        cls.client.open(None)
    def test_get_open_api_override(self):
        open_api_content = "swagger yaml content"

        # recreate service with new configuration
        self.service.close(None)

        config = rest_config.set_defaults(
            ConfigParams.from_tuples("swagger.auto", False))

        ctrl = DummyController()

        self.service = DummyCommandableHttpService()
        self.service.configure(config)

        references = References.from_tuples(
            Descriptor('pip-services-dummies', 'controller', 'default',
                       'default', '1.0'), ctrl,
            Descriptor('pip-services-dummies', 'service', 'http', 'default',
                       '1.0'), self.service)
        self.service.set_references(references)

        try:
            self.service.open(None)

            response = requests.request('GET',
                                        'http://localhost:3005/dummy/swagger')
            assert response.text == open_api_content
        finally:
            self.service.close(None)
예제 #3
0
    def setup_class(cls):
        cls._persistence = BeaconsMemoryPersistence()
        cls._controller = BeaconsController()
        references = References.from_tuples(Descriptor('beacons', 'persistence', 'memory', 'default', '1.0'), cls._persistence,
                                            Descriptor('beacons', 'controller', 'default', 'default', '1.0'), cls._controller)

        cls._controller.set_references(references)
        cls._persistence.open(None)
예제 #4
0
    def setup_method(self, method):
        refs = References.from_tuples(
            Descriptor('pip-services-commons', 'logger', 'console', 'default',
                       '1.0'), ConsoleLogger())

        self.counters = LogCounters()
        self.counters.set_references(refs)

        self.fixture = CountersFixture(self.counters)
    def setup_method(self, method):
        log = NullLogger()
        refs = References.from_tuples(
            Descriptor("pip-services", "logger", "null", "default", "1.0"), log
        )

        self.counters = LogCounters()
        self.counters.set_references(refs)

        self.fixture = CountersFixture(self.counters)
예제 #6
0
    def setup_class(cls):
        cls.controller = DummyController()
        
        cls.client = DummyDirectClient()

        cls.references = References.from_tuples(
            Descriptor("pip-services-dummies", "controller", "default", "default", "1.0"), cls.controller, 
            Descriptor("pip-services-dummies", "client", "direct", "default", "1.0"), cls.client
        )
        cls.client.set_references(cls.references)

        cls.fixture = DummyClientFixture(cls.client)
예제 #7
0
    def setup_class(cls):
        cls.controller = DummyController()

        cls.service = DummyRestService()
        cls.service.configure(rest_config)

        references = References.from_tuples(
            Descriptor("pip-services-dummies", "controller", "default",
                       "default", "1.0"), cls.controller,
            Descriptor("pip-services-dummies", "service", "http", "default",
                       "1.0"), cls.service)

        cls.service.set_references(references)
예제 #8
0
    def setup_class(cls):
        cls.controller = DummyController()

        cls.service = DummyCommandableGrpcService()
        cls.service.configure(grpc_config)

        cls.references = References.from_tuples(
            Descriptor('pip-services-dummies', 'controller', 'default',
                       'default', '1.0'), cls.controller,
            Descriptor('pip-services-dummies', 'service', 'grpc', 'default',
                       '1.0'), cls.service)

        cls.service.set_references(cls.references)
        cls.service.open(None)
예제 #9
0
    def setup_class(cls):
        cls.service = StatusRestService()
        cls.service.configure(rest_config)

        contextInfo = ContextInfo()
        contextInfo.name = "Test"
        contextInfo.description = "This is a test container"

        cls.references = References.from_tuples(
            Descriptor("pip-services", "context-info", "default", "default",
                       "1.0"), contextInfo,
            Descriptor("pip-services-dummies", "service", "http", "default",
                       "1.0"), cls.service)

        cls.service.set_references(cls.references)
    def test_get(self):
        refs = References.from_tuples(111, "AAA", 222, "BBB", 333, "CCC", 444,
                                      "DDD")
        assert 4 == len(refs.get_all())

        item = refs.get_one_optional(555)
        assert None == item

        item = refs.get_one_required(111)
        assert "AAA" == item

        items = refs.get_optional(666)
        assert 0 == len(items)

        items = refs.get_required(333)
        assert 1 == len(items)
예제 #11
0
    def setup_class(cls):
        controller = DummyController()

        cls.service = DummyCommandableHttpService()
        cls.service.configure(rest_config)

        references = References.from_tuples(
            Descriptor("pip-services-dummies", "controller", "default", "default", "1.0"), controller,
            Descriptor("pip-services-dummies", "service", "http", "default", "1.0"), cls.service
        )

        cls.service.set_references(references)

        cls.service.open(None)

        time.sleep(0.5)
예제 #12
0
    def test_resolve_depedencies(self):
        ref1 = "AAA"
        ref2 = "BBB"
        refs = References.from_tuples(
            "Reference1", ref1,
            Descriptor("pip-services-commons", "reference", "object", "ref2",
                       "1.0"), ref2)

        resolver = DependencyResolver.from_tuples(
            "ref1", "Reference1", "ref2",
            Descriptor("pip-services-commons", "reference", "*", "*", "*"))
        resolver.set_references(refs)

        assert ref1 == resolver.get_one_required("ref1")
        assert ref2 == resolver.get_one_required("ref2")
        assert None == resolver.get_one_optional("ref3")
    def setup_class(cls):
        cls.controller = DummyController()

        cls.service = DummyGrpcService()
        cls.service.configure(grpc_config)

        cls.references = References.from_tuples(
            Descriptor('pip-services-dummies', 'controller', 'default',
                       'default', '1.0'), cls.controller,
            Descriptor('pip-services-dummies', 'service', 'grpc', 'default',
                       '1.0'), cls.service)

        cls.service.set_references(cls.references)
        cls.service.open(None)

        cls.chanel = grpc.insecure_channel('localhost:' + str(port))
        cls.client = dummies_pb2_grpc.DummiesStub(cls.chanel)
예제 #14
0
    def test_configure_depedencies(self):
        ref1 = "AAA"
        ref2 = "BBB"
        refs = References.from_tuples(
            "Reference1", ref1,
            Descriptor("pip-services-commons", "reference", "object", "ref2",
                       "1.0"), ref2)

        config = ConfigParams.from_tuples(
            "dependencies.ref1", "Reference1", "dependencies.ref2",
            "pip-services-commons:reference:*:*:*", "dependencies.ref3", None)

        resolver = DependencyResolver(config)
        resolver.set_references(refs)

        assert ref1 == resolver.get_one_required("ref1")
        assert ref2 == resolver.get_one_required("ref2")
        assert None == resolver.get_one_optional("ref3")
    def setup_class(cls):
        controller = DummyController()
        cls.service = DummyRestService()
        cls.service.configure(ConfigParams.from_tuples(
            'base_route', '/api/v1'
        ))

        cls.endpoint = HttpEndpoint()
        cls.endpoint.configure(rest_config)

        references = References.from_tuples(
            Descriptor("pip-services-dummies", "controller", "default", "default", "1.0"), controller,
            Descriptor('pip-services-dummies', 'service', 'rest', 'default', '1.0'), cls.service,
            Descriptor('pip-services', 'endpoint', 'http', 'default', '1.0'), cls.endpoint
        )

        cls.service.set_references(references)
        cls.endpoint.open(None)
        cls.service.open(None)
    def setup_class(cls):
        cls.controller = DummyController()

        cls.service = DummyRestService()
        cls.service.configure(rest_config)

        cls.client = DummyRestClient()
        cls.client.configure(rest_config)

        cls.references = References.from_tuples(
            Descriptor("pip-services-dummies", "controller", "default",
                       "default", "1.0"), cls.controller,
            Descriptor("pip-services-dummies", "service", "rest", "default",
                       "1.0"), cls.service,
            Descriptor("pip-services-dummies", "client", "rest", "default",
                       "1.0"), cls.client)
        cls.client.set_references(cls.references)
        cls.service.set_references(cls.references)

        cls.fixture = DummyClientFixture(cls.client)
    def test_get_open_api_spec_from_file(self):
        self.service.close(None)

        open_api_content = 'swagger yaml content from file'
        filename = 'dummy_' + IdGenerator.next_long() + '.tmp'

        # create temp file
        with open(filename, 'w') as f:
            f.write(open_api_content)

        # recreate service with new configuration
        service_config = ConfigParams.from_tuples(
            "connection.protocol",
            "http",
            "connection.host",
            "localhost",
            "connection.port",
            3001,
            "swagger.path",
            filename,  # for test only
            "swagger.enable",
            "true")
        ctrl = DummyController()

        self.service = DummyRestService()
        self.service.configure(service_config)

        references = References.from_tuples(
            Descriptor('pip-services-dummies', 'controller', 'default',
                       'default', '1.0'), ctrl,
            Descriptor('pip-services-dummies', 'service', 'rest', 'default',
                       '1.0'), self.service)
        self.service.set_references(references)

        self.service.open(None)

        response = requests.request('GET', 'http://localhost:3001/swagger')
        assert response.text == open_api_content

        # delete temp file
        os.remove(filename)
    def setup_class(cls):
        cls._persistence = BeaconsMemoryPersistence()
        cls._controller = BeaconsController()
        cls._service = BeaconsHttpServiceV1()

        cls._service.configure(ConfigParams.from_tuples(
            'connection.protocol', 'http',
            'connection.port', 3002,
            'connection.host', 'localhost'))

        references = References.from_tuples(Descriptor('beacons', 'persistence', 'memory', 'default', '1.0'),
                                            cls._persistence,
                                            Descriptor('beacons', 'controller', 'default', 'default', '1.0'),
                                            cls._controller,
                                            Descriptor('beacons', 'service', 'http', 'default', '1.0'),
                                            cls._service)
        cls._controller.set_references(references)
        cls._service.set_references(references)

        cls._persistence.open(None)
        cls._service.open(None)
예제 #19
0
    def setup_class(cls):
        cls.controller = DummyController()

        cls.service = DummyGrpcService()
        cls.service.configure(grpc_config)

        cls.references = References.from_tuples(
            Descriptor('pip-services-dummies', 'controller', 'default',
                       'default', '1.0'), cls.controller,
            Descriptor('pip-services-dummies', 'service', 'grpc', 'default',
                       '1.0'), cls.service)

        cls.service.set_references(cls.references)
        cls.service.open(None)

        with open(get_fullpath('../credentials/ssl_ca_file'), 'rb') as f:
            credentials = f.read()

        credentials = grpc.ssl_channel_credentials(credentials)

        cls.chanel = grpc.secure_channel('localhost:' + str(port),
                                         credentials=credentials)
        cls.client = dummies_pb2_grpc.DummiesStub(cls.chanel)
예제 #20
0
    def setup_class(cls):
        cls.service = PrometheusMetricsService()
        cls.service.configure(rest_config)

        cls.counters = PrometheusCounters()

        context_info = ContextInfo()
        context_info.name = 'Test'
        context_info.description = 'This is a test container'

        references = References.from_tuples(
            Descriptor("pip-services", "context-info", "default", "default",
                       "1.0"), context_info,
            Descriptor("pip-services", "counters", "prometheus", "default",
                       "1.0"), cls.counters,
            Descriptor("pip-services", "metrics-service", "prometheus",
                       "default", "1.0"), cls.service)

        cls.counters.set_references(references)
        cls.service.set_references(references)

        cls.counters.open(None)
        cls.service.open(None)
예제 #21
0
 def setup_method(self):
     self._tracer = LogTracer()
     self._tracer.set_references(
         References.from_tuples(
             Descriptor("pip-services", "logger", "null", "default", "1.0"),
             NullLogger()))