Example #1
0
class TestSBusServerMain(unittest.TestCase):
    def _get_test_server(self):
        return SBusServer(self.sbus_path, self.logger)

    def setUp(self):
        self.logger = FakeLogger()
        self.sbus_path = 'fake_path'
        self.server = self._get_test_server()

    def _test_main_loop_stop(self, stop_command):
        metadata = [FDMetadata(SBUS_FD_SERVICE_OUT).to_dict()]
        scenario = [
            ('create', 1),
            ('listen', 1),
            ('receive',
             SBusServiceDatagram(command=stop_command,
                                 fds=[1],
                                 metadata=metadata,
                                 params=None,
                                 task_id=None)),
        ]

        fake_sbus_class = create_fake_sbus_class(scenario)
        with mock.patch('storlets.agent.common.server.SBus', fake_sbus_class):
            with mock.patch('os.fdopen'):
                ret = self.server.main_loop()

        self.assertEqual(EXIT_SUCCESS, ret)
        # sanity for no error and no warning
        self.assertEqual([], self.logger.get_log_lines('error'))
        self.assertEqual([], self.logger.get_log_lines('warn'))
Example #2
0
 def setUp(self):
     self.pipe_path = tempfile.mktemp()
     self.log_file = tempfile.mktemp()
     self.logger = FakeLogger()
     self.storlet_id = 'Storlet-1.0.jar'
     self.options = {'storlet_main': 'org.openstack.storlet.Storlet',
                     'storlet_dependency': 'dep1,dep2',
                     'storlet_language': 'java',
                     'file_manager': FakeFileManager('storlet', 'dep')}
     storlet_request = DockerStorletRequest(
         self.storlet_id, {}, {}, iter(StringIO()), options=self.options)
     self.protocol = StorletInvocationProtocol(
         storlet_request, self.pipe_path, self.log_file, 1, self.logger)
Example #3
0
    def setUp(self):
        if six.PY3:
            self.skipTest(
                "swift.common.internal_client.InternalClient for testing"
                "doesn't suppoert py3 yet")
        # TODO(takashi): take these values from config file
        self.tempdir = mkdtemp()
        self.sconf = {
            'host_root': self.tempdir,
            'swift_dir': self.tempdir,
            'storlet_timeout': '9',
            'storlet_container': 'storlet',
            'storlet_dependency': 'dependency',
            'reseller_prefix': 'AUTH'
        }
        self.logger = FakeLogger()

        self.storlet_container = self.sconf['storlet_container']
        self.storlet_dependency = self.sconf['storlet_dependency']

        self.version = 'v1'
        self.account = 'AUTH_account'
        self.container = 'container'
        self.obj = 'object'
        self.sobj = 'storlet-1.0.jar'

        # TODO(kota_): should be 'storlet-internal-client.conf' actually
        ic_conf_path = os.path.join(self.tempdir, 'storlet-proxy-server.conf')
        with open(ic_conf_path, 'w') as f:
            f.write("""
[DEFAULT]
[pipeline:main]
pipeline = catch_errors proxy-logging cache proxy-server

[app:proxy-server]
use = egg:swift#proxy

[filter:cache]
use = egg:swift#memcache

[filter:proxy-logging]
use = egg:swift#proxy_logging

[filter:catch_errors]
use = egg:swift#catch_errors
""")

        self.gateway = StorletGatewayDocker(self.sconf, self.logger,
                                            self.account)
Example #4
0
 def setUp(self):
     self.logger = FakeLogger()
     # TODO(takashi): take these values from config file
     self.conf = {'docker_repo': 'localhost:5001'}
     self.scope = '0123456789abc'
     self.sbox = RunTimeSandbox(self.scope, self.conf, self.logger)
Example #5
0
 def setUp(self):
     self.logger = FakeLogger()
     self.manager = SwiftFileManager('a', 'storlet', 'dependency', 'log',
                                     'client.conf', self.logger)
Example #6
0
 def setUp(self):
     self.logger = FakeLogger()
     self.pipe_path = 'path/to/pipe'
     self.container_id = 'contid'
     self.dfactory = StorletDaemonFactory(self.pipe_path, self.logger,
                                          self.container_id)
Example #7
0
 def setUp(self):
     self.logger = FakeLogger()
     self.sbus_path = 'path/to/pipe'
     self.server = SBusServer(self.sbus_path, self.logger)
Example #8
0
 def setUp(self):
     self.logger = FakeLogger()
     self.sbus_path = 'fake_path'
     self.server = self._get_test_server()
Example #9
0
 def setUp(self, exec_server='proxy'):
     self.exec_server = exec_server
     self.conf = create_handler_config(exec_server)
     self.logger = FakeLogger()
     self.base_app = FakeApp()
Example #10
0
 def setUp(self):
     self.logger = FakeLogger()