Пример #1
0
    def get_service_starter(self, service_name, run_from, proxy, classifier=None, service_mapping_ports=None, port=None, admin_port=None, version=None, append_args=None):
        service = self.get_service(service_name)
        run_from = self.get_run_from_service_override_value_or_use_default(service, run_from)

        if not service_mapping_ports:
            service_mapping_ports = {}

        service_type = self.service_type(service_name)

        if (not self.is_test) and service.is_started_on_default_port():
            print service_name + " is already running on its default port, not starting a new one"
            return None

        if service_type == "external":
            starter = SmExternalServiceStarter(self, service_name, append_args)
        elif service_type == "dropwizard":
            starter = SmDropwizardServiceStarter(self, service_name, run_from, port, admin_port, classifier, service_mapping_ports, version, proxy, append_args)
        elif service_type == "play":
            starter = SmPlayServiceStarter(self, service_name, run_from, port, classifier, service_mapping_ports, version, proxy, append_args)
        elif service_type == "assets":
            proxy = None
            starter = SmPythonServiceStarter(self, service_name, run_from, port, classifier, service_mapping_ports, version, proxy, append_args)
        else:
            raise self.exception("Unknown service type '%s' for service '%s' - please check services.json" % (service_type, service_name))

        return starter
class TestSmPlayService(unittest.TestCase):
    test_dir = os.path.join(os.path.dirname(__file__), "../")

    def setUp(self):
        sm_application = SmApplication(self.test_dir + "conf/", features={})
        sm_context = SmContext(sm_application, "")
        self.sm_play_service = SmPlayServiceStarter(
            sm_context, "PLAY_NEXUS_END_TO_END_TEST", "", "", 9000, "", "", "",
            "")

    def test_closed_assets_config(self):
        assert_that(
            self.sm_play_service._get_assets_version(self.test_dir +
                                                     "testapps/basicplayapp"),
            contains_inanyorder("2.149.0", "2.150.0"),
        )

    def test_open_assets_config(self):
        assert_that(
            self.sm_play_service._get_assets_version(self.test_dir +
                                                     "testapps/openplayapp"),
            has_item("2.150.0"),
        )
 def setUp(self):
     sm_application = SmApplication(self.test_dir + "conf/", features={})
     sm_context = SmContext(sm_application, "")
     self.sm_play_service = SmPlayServiceStarter(
         sm_context, "PLAY_NEXUS_END_TO_END_TEST", "", "", 9000, "", "", "",
         "")