""" Test init command produced artifacts and options """ from drivers.alr import run_alr from drivers.asserts import assert_eq from drivers.helpers import compare, contents # Get crate from tarball and check contents run_alr('get', 'libhello=1.0.0-tarball') compare(contents('libhello_1.0.0_filesystem'), [ 'libhello_1.0.0_filesystem/alire', 'libhello_1.0.0_filesystem/alire.lock', 'libhello_1.0.0_filesystem/alire.toml', 'libhello_1.0.0_filesystem/libhello.gpr', 'libhello_1.0.0_filesystem/src', 'libhello_1.0.0_filesystem/src/libhello.adb', 'libhello_1.0.0_filesystem/src/libhello.ads', ]) print('SUCCESS')
p = run_alr('get', 'main') assert_eq('', p.out) dir_content = contents('main_1.0.0_filesystem/') # The directrory for the external dependencies 'make' contains a version number # that can be different depending on the platform or version of the # distribution. We search through the content to find that directory and use it # in the expected output. make_dep_dir = "__MAKE_DEPENDENCY_DIR_NOT_FOUND_" for elt in dir_content: if re.match('^.*/alire/cache/dependencies/make_.*_external$', elt): make_dep_dir = elt # Check folder contents compare(dir_content, [ 'main_1.0.0_filesystem/alire', 'main_1.0.0_filesystem/alire.toml', 'main_1.0.0_filesystem/alire/alire.lock', 'main_1.0.0_filesystem/alire/cache', 'main_1.0.0_filesystem/alire/cache/dependencies', make_dep_dir, make_dep_dir + "/alire", 'main_1.0.0_filesystem/alire/config.toml', 'main_1.0.0_filesystem/config', 'main_1.0.0_filesystem/config/main_config.ads', 'main_1.0.0_filesystem/config/main_config.gpr', 'main_1.0.0_filesystem/config/main_config.h', 'main_1.0.0_filesystem/noop.gpr', 'main_1.0.0_filesystem/src', 'main_1.0.0_filesystem/src/noop.adb' ]) print('SUCCESS')
Retrieve a release from a local git repository """ from glob import glob from drivers.alr import run_alr from drivers.asserts import assert_match from drivers.helpers import compare, contents # Get the release p = run_alr('get', 'libfoo') # Check expected contents (excepting .git contents) compare( list( filter(lambda str: ".git" not in str, contents('libfoo_1.0.0_9ddda32b'))), [ 'libfoo_1.0.0_9ddda32b/a', 'libfoo_1.0.0_9ddda32b/alire', 'libfoo_1.0.0_9ddda32b/alire.lock', 'libfoo_1.0.0_9ddda32b/alire.toml', 'libfoo_1.0.0_9ddda32b/b', 'libfoo_1.0.0_9ddda32b/b/x', 'libfoo_1.0.0_9ddda32b/b/y', 'libfoo_1.0.0_9ddda32b/b/y/p', 'libfoo_1.0.0_9ddda32b/b/y/q', 'libfoo_1.0.0_9ddda32b/b/z', 'libfoo_1.0.0_9ddda32b/c', 'libfoo_1.0.0_9ddda32b/config', 'libfoo_1.0.0_9ddda32b/config/libfoo_config.ads', 'libfoo_1.0.0_9ddda32b/config/libfoo_config.gpr', 'libfoo_1.0.0_9ddda32b/config/libfoo_config.h' ]) print('SUCCESS')
import os.path from drivers.alr import run_alr from drivers.asserts import assert_eq, assert_match from drivers.helpers import compare, contents test_dir = os.getcwd() # Invalid crate name #run_alr('init', '--bin', 'invalid-name') # Plain init run_alr('init', '--bin', 'xxx') compare(contents('xxx'), [ 'xxx/.gitignore', 'xxx/alire', 'xxx/alire.lock', 'xxx/alire.toml', 'xxx/src', 'xxx/src/xxx.adb', 'xxx/xxx.gpr' ]) # Plain init, existing empty dir os.mkdir('aaa') run_alr('init', '--bin', 'aaa') compare(contents('aaa'), [ 'aaa/.gitignore', 'aaa/aaa.gpr', 'aaa/alire', 'aaa/alire.lock', 'aaa/alire.toml', 'aaa/src', 'aaa/src/aaa.adb' ]) # Init without skeleton run_alr('init', '--bin', '--no-skel', 'yyy') compare(contents('yyy'), ['yyy/alire', 'yyy/alire.lock', 'yyy/alire.toml']) # Init with existing crate
""" Test init command produced artifacts and options """ import os.path from drivers.alr import run_alr from drivers.asserts import assert_eq from drivers.helpers import compare, contents # Plain init run_alr('init', '--bin', 'xxx') compare(contents('xxx'), [ 'xxx/alire', 'xxx/alire.lock', 'xxx/alire.toml', 'xxx/src', 'xxx/src/xxx.adb', 'xxx/xxx.gpr' ]) # Init without skeleton run_alr('init', '--bin', '--no-skel', 'yyy') compare(contents('yyy'), ['yyy/alire', 'yyy/alire.lock', 'yyy/alire.toml']) # Init in place os.mkdir('zzz') os.chdir('zzz') run_alr('init', '--bin', '--in-place', 'zzz') compare(contents('.'), ['./alire', './alire.lock', './alire.toml']) print('SUCCESS')