本文整理汇总了Python中datalad.api.Dataset.get_subdatasets方法的典型用法代码示例。如果您正苦于以下问题:Python Dataset.get_subdatasets方法的具体用法?Python Dataset.get_subdatasets怎么用?Python Dataset.get_subdatasets使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类datalad.api.Dataset
的用法示例。
在下文中一共展示了Dataset.get_subdatasets方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_ignore_nondatasets
# 需要导入模块: from datalad.api import Dataset [as 别名]
# 或者: from datalad.api.Dataset import get_subdatasets [as 别名]
def test_ignore_nondatasets(path):
# we want to ignore the version/commits for this test
def _kill_time(meta):
for m in meta:
for k in ('version', 'dcterms:modified'):
if k in m:
del m[k]
return meta
ds = Dataset(path).create()
meta = _kill_time(get_metadata(ds))
n_subm = 0
# placing another repo in the dataset has no effect on metadata
for cls, subpath in ((GitRepo, 'subm'), (AnnexRepo, 'annex_subm')):
subm_path = opj(ds.path, subpath)
r = cls(subm_path, create=True)
with open(opj(subm_path, 'test'), 'w') as f:
f.write('test')
r.add('test')
r.commit('some')
assert_true(Dataset(subm_path).is_installed())
assert_equal(meta, _kill_time(get_metadata(ds)))
# making it a submodule has no effect either
ds.add(subpath)
assert_equal(len(ds.get_subdatasets()), n_subm + 1)
assert_equal(meta, _kill_time(get_metadata(ds)))
n_subm += 1
示例2: test_dont_trip_over_missing_subds
# 需要导入模块: from datalad.api import Dataset [as 别名]
# 或者: from datalad.api.Dataset import get_subdatasets [as 别名]
def test_dont_trip_over_missing_subds(path):
ds1 = Dataset(opj(path, 'ds1')).create()
ds2 = Dataset(opj(path, 'ds2')).create()
subds2 = ds1.install(source=ds2.path, path='subds2')
assert_true(subds2.is_installed())
assert_in('subds2', ds1.get_subdatasets())
subds2.uninstall()
assert_in('subds2', ds1.get_subdatasets())
assert_false(subds2.is_installed())
# this will deinit the submodule
ds1.save(files=['subds2'])
# see if it wants to talk to github (and fail), or if it trips over something
# before
assert_raises(gh.BadCredentialsException, ds1.create_sibling_github, 'bogus', recursive=True, github_user='')
# inject remote config prior run
assert_not_in('github', ds1.repo.get_remotes())
# fail on existing
ds1.repo.add_remote('github', 'http://nothere')
assert_raises(ValueError, ds1.create_sibling_github, 'bogus', recursive=True, github_user='')
# talk to github when existing is OK
assert_raises(gh.BadCredentialsException, ds1.create_sibling_github, 'bogus', recursive=True, github_user='', existing='reconfigure')
# return happy emptiness when all is skipped
assert_equal(ds1.create_sibling_github('bogus', recursive=True, github_user='', existing='skip'), [])