Пример #1
0
 def setUpClass(cls):
     token = os.environ.get('KB_AUTH_TOKEN', None)
     config_file = os.environ.get('KB_DEPLOYMENT_CONFIG', None)
     cls.cfg = {}
     config = ConfigParser()
     config.read(config_file)
     for nameval in config.items('sample_uploader'):
         cls.cfg[nameval[0]] = nameval[1]
     # Getting username from Auth profile for token
     authServiceUrl = cls.cfg['auth-service-url']
     auth_client = _KBaseAuth(authServiceUrl)
     user_id = auth_client.get_user(token)
     # WARNING: don't call any logging methods on the context object,
     # it'll result in a NoneType error
     cls.ctx = MethodContext(None)
     cls.ctx.update({
         'token':
         token,
         'user_id':
         user_id,
         'provenance': [{
             'service': 'sample_uploader',
             'method': 'please_never_use_it_in_production',
             'method_params': []
         }],
         'authenticated':
         1
     })
     cls.curr_dir = os.path.dirname(os.path.realpath(__file__))
     cls.wsURL = cls.cfg['workspace-url']
     cls.wsClient = Workspace(cls.wsURL, token=token)
     cls.serviceImpl = sample_uploader(cls.cfg)
     # cls.curr_dir = os.path.dirname(os.path.realpath(__file__))
     cls.scratch = cls.cfg['scratch']
     # cls.wiz_url = cls.cfg['srv-wiz-url']
     cls.sample_url = cls.cfg['kbase-endpoint'] + '/sampleservice'
     cls.callback_url = os.environ['SDK_CALLBACK_URL']
     suffix = int(time.time() * 1000)
     cls.wsName = "test_ContigFilter_" + str(suffix)
     ret = cls.wsClient.create_workspace({'workspace': cls.wsName})  # noqa
     cls.wsID = ret[0]
Пример #2
0
 def setUpClass(cls):
     token = os.environ.get('KB_AUTH_TOKEN', None)
     config_file = os.environ.get('KB_DEPLOYMENT_CONFIG', None)
     cls.cfg = {}
     config = ConfigParser()
     config.read(config_file)
     for nameval in config.items('sample_uploader'):
         cls.cfg[nameval[0]] = nameval[1]
     # Getting username from Auth profile for token
     authServiceUrl = cls.cfg['auth-service-url']
     auth_client = _KBaseAuth(authServiceUrl)
     user_id = auth_client.get_user(token)
     # WARNING: don't call any logging methods on the context object,
     # it'll result in a NoneType error
     cls.ctx = MethodContext(None)
     cls.ctx.update({
         'token':
         token,
         'user_id':
         user_id,
         'provenance': [{
             'service': 'sample_uploader',
             'method': 'please_never_use_it_in_production',
             'method_params': []
         }],
         'authenticated':
         1
     })
     cls.wsURL = cls.cfg['workspace-url']
     cls.wsClient = Workspace(cls.wsURL, token=token)
     cls.serviceImpl = sample_uploader(cls.cfg)
     cls.curr_dir = os.path.dirname(os.path.realpath(__file__))
     cls.scratch = cls.cfg['scratch']
     cls.wiz_url = cls.cfg['srv-wiz-url']
     cls.sample_url = cls.cfg['kbase-endpoint'] + '/sampleservice'
     cls.callback_url = os.environ['SDK_CALLBACK_URL']
     suffix = int(time.time() * 1000)
     cls.wsName = "test_sample_uploader_" + str(suffix)
     ret = cls.wsClient.create_workspace({'workspace': cls.wsName})  # noqa
     cls.wsID = ret[0]
     cls.sesar_sample_file = os.path.join(cls.curr_dir, "data",
                                          "fake_samples.tsv")
     cls.sample_set_name = "test_sample_set_1"
     params = {
         'workspace_name': cls.wsName,
         'workspace_id': cls.wsID,
         'sample_file': cls.sesar_sample_file,
         'file_format': "sesar",
         'header_row_index': 2,
         'set_name': cls.sample_set_name,
         'description': "this is a test sample set.",
         'output_format': "",
         'name_field': "test name field",
         'incl_input_in_output': 1,
         'share_within_workspace': 1,
     }
     ret = cls.serviceImpl.import_samples(cls.ctx, params)[0]
     cls.sample_set = ret['sample_set']
     cls.a_sample_id = ret['sample_set']['samples'][0]['id']
     cls.sample_set_ref = ret['sample_set_ref']
     # add new user to test permissions
     cls.wsClient.set_permissions({
         "id": cls.wsID,
         "new_permission": "w",
         "users": ["psdehal"]
     })
def get_config():
    if not get_config_file():
        return None
    retconfig = {}
    config = ConfigParser()
    config.read(get_config_file())
    for nameval in config.items(get_service_name() or 'sample_uploader'):
        retconfig[nameval[0]] = nameval[1]
    return retconfig


config = get_config()

from sample_uploader.sample_uploaderImpl import sample_uploader  # noqa @IgnorePep8
impl_sample_uploader = sample_uploader(config)


class JSONObjectEncoder(json.JSONEncoder):
    def default(self, obj):
        if isinstance(obj, set):
            return list(obj)
        if isinstance(obj, frozenset):
            return list(obj)
        if hasattr(obj, 'toJSONable'):
            return obj.toJSONable()
        return json.JSONEncoder.default(self, obj)


class JSONRPCServiceCustom(JSONRPCService):
    def call(self, ctx, jsondata):