Newer
Older
from pybis import DataSet
from pybis import Openbis
assert openbis_instance.hostname is not None
new_instance = Openbis(openbis_instance.url)
new_instance.login()
assert new_instance.token is not None
assert new_instance.is_token_valid() is True
new_instance.logout()
assert new_instance.is_token_valid() is False
openbis_instance.save_token()
another_instance = Openbis(openbis_instance.url)
assert another_instance.is_token_valid() is True
def test_get_sample_by_id(openbis_instance):
response = openbis_instance.get_sample('/TEST/TEST-SAMPLE-2-CHILD-1')
assert response.ident == '/TEST/TEST-SAMPLE-2-CHILD-1'
def test_get_sample_by_permid(openbis_instance):
response = openbis_instance.get_sample('20130415091923485-402')
assert response.permid == '20130415091923485-402'
def test_get_sample_parents(openbis_instance):
sample = openbis_instance.get_sample(id)
assert sample is not None
assert 'parents' in sample.data
assert 'identifier' in sample.data['parents'][0]
assert sample.data['parents'][0]['identifier']['identifier'] == '/TEST/TEST-SAMPLE-2-PARENT'
parents = sample.get_parents()
assert isinstance(parents, list)
assert parents[0].ident == '/TEST/TEST-SAMPLE-2-PARENT'
def test_get_sample_children(openbis_instance):
id = '/TEST/TEST-SAMPLE-2'
sample = openbis_instance.get_sample(id)
assert sample is not None
assert 'children' in sample.data
assert 'identifier' in sample.data['children'][0]
assert sample.data['children'][0]['identifier']['identifier'] == '/TEST/TEST-SAMPLE-2-CHILD-1'
children = sample.get_children()
assert isinstance(children, list)
assert children[0].ident == '/TEST/TEST-SAMPLE-2-CHILD-1'
def test_get_dataset_parents(openbis_instance):
permid = '20130415093804724-403'
parent_permid = '20130415100158230-407'
dataset = openbis_instance.get_dataset(permid)
assert dataset is not None
parents = dataset.get_parents()
assert isinstance(parents, list)
assert parents[0] is not None
assert isinstance(parents[0], DataSet)
assert parents[0].permid == parent_permid
children = parents[0].get_children()
assert isinstance(children, list)
assert children[0] is not None
assert isinstance(children[0], DataSet)
def test_get_dataset_by_permid(openbis_instance):
permid = '20130412142942295-198'
dataset = openbis_instance.get_dataset(permid)
assert dataset is not None
assert isinstance(dataset, DataSet)
assert isinstance(dataset, Openbis)
assert 'dataStore' in dataset.data
assert 'downloadUrl' in dataset.data['dataStore']
file_list = dataset.get_file_list(recursive=False)
assert file_list is not None
assert isinstance(file_list, list)
assert len(file_list) == 1
file_list = dataset.get_file_list(recursive=True)
assert file_list is not None
assert len(file_list) > 10
def test_dataset_upload(openbis_instance):
datastores = openbis_instance.get_datastores()
assert datastores is not None
assert isinstance(datastores, list)
filename = 'testfile.txt'
with open(filename, 'w') as f:
f.write('test-data')
# parents are optional
my_dataset.upload_analysis(
name = "My analysis", # !mandatory; name of the container
description = "a description", # optional
sample = sample, # optional, my_dataset.sample is the default
result_files = "~/my_wonderful_results/", # !mandatory; path of my results
# result_files = ["~/my_result.csv"], # !mandatory, if no path was given
result_recursive = True, # default; recursive search if a path was given
result_file_match = "*", # default; match any file if a path was given
notebook_files = "~/notebooks/", # optional,
# notebook_files = ["notebook.ipynb"], # optional, specify a specific notebook
# notebook_files = "~/notebooks" # one single path instead of a list
parents = [parent_dataset1], # other parents are optional, my_dataset is the default parent
)