def test_version(): """Test version assertions """ assert_raises(TypeError, assert_version, 1) assert_raises(TypeError, assert_version, '1' * 8) assert_raises(AssertionError, assert_version, 'x' * 7) assert_version(__version__[-7:]) v = 'c18133c' if not _has_git: assert_raises(ImportError, download_version, v, tempdir) else: assert_raises(IOError, download_version, v, op.join(tempdir, 'foo')) assert_raises(RuntimeError, download_version, 'x' * 7, tempdir) download_version(v, tempdir) ex_dir = op.join(tempdir, 'expyfun') assert_true(op.isdir(ex_dir)) assert_true(op.isfile(op.join(ex_dir, '__init__.py'))) with open(op.join(ex_dir, '_version.py')) as fid: line = fid.readline().strip() assert_equal(line.split(' = ')[1][-8:-1], v) # auto dir determination orig_dir = os.getcwd() os.chdir(tempdir) try: assert_true(op.isdir('expyfun')) assert_raises(IOError, download_version, v) finally: os.chdir(orig_dir)
def test_version(): """Test version assertions """ assert_raises(TypeError, assert_version, 1) assert_raises(TypeError, assert_version, '1' * 8) assert_raises(AssertionError, assert_version, 'x' * 7) assert_version(__version__[-7:]) v = '1088717' if not _has_git: assert_raises(ImportError, download_version, v, tempdir) else: assert_raises(IOError, download_version, v, op.join(tempdir, 'foo')) assert_raises(RuntimeError, download_version, 'x' * 7, tempdir) download_version(v, tempdir) ex_dir = op.join(tempdir, 'expyfun') assert_true(op.isdir(ex_dir)) assert_true(op.isfile(op.join(ex_dir, '__init__.py'))) with open(op.join(ex_dir, '_version.py')) as fid: line = fid.readline().strip() assert_equal(line.split(' = ')[1][-8:-1], v) # auto dir determination orig_dir = os.getcwd() os.chdir(tempdir) try: assert_true(op.isdir('expyfun')) assert_raises(IOError, download_version, v) finally: os.chdir(orig_dir) # make sure we can get latest version download_version(dest_dir=tempdir_2)
def test_version(): """Test version assertions """ assert_raises(TypeError, assert_version, 1) assert_raises(TypeError, assert_version, '1' * 8) assert_raises(AssertionError, assert_version, 'x' * 7) assert_version(__version__[-7:]) v = 'b798e65' f = 'drammock' if not _has_git: assert_raises(ImportError, download_version, v, tempdir, f) else: assert_raises(IOError, download_version, v, op.join(tempdir, 'foo'), f) assert_raises(RuntimeError, download_version, 'x' * 7, tempdir, f) download_version(v, tempdir, f) ex_dir = op.join(tempdir, 'expyfun') assert_true(op.isdir(ex_dir)) assert_true(op.isfile(op.join(ex_dir, '__init__.py'))) with open(op.join(ex_dir, '_version.py')) as fid: line1 = fid.readline().strip() line2 = fid.readline().strip() assert_equal(line1.split(' = ')[1][-8:-1], v) assert_equal(line2.split(' = ')[1].strip('\''), f) # auto dir determination orig_dir = os.getcwd() os.chdir(tempdir) try: assert_true(op.isdir('expyfun')) assert_raises(IOError, download_version, v) finally: os.chdir(orig_dir) # make sure we can get latest version download_version(dest_dir=tempdir_2)
def test_version_assertions(): """Test version assertions.""" with warnings.catch_warnings(record=True) as w: warnings.simplefilter('always') pytest.raises(TypeError, assert_version, 1) pytest.raises(TypeError, assert_version, '1' * 8) pytest.raises(AssertionError, assert_version, 'x' * 7) assert_version(__version__[-7:]) assert all('actual' in str(ww.message) for ww in w) # old, broken, new for wi, want_version in enumerate(('090948e', 'cae6bc3', 'b6e8a81')): print('Running %s' % want_version) tempdir = _TempDir() if not _has_git: pytest.raises(ImportError, download_version, want_version, tempdir) else: pytest.raises(IOError, download_version, want_version, op.join(tempdir, 'foo')) pytest.raises(RuntimeError, download_version, 'x' * 7, tempdir) ex_dir = op.join(tempdir, 'expyfun') assert not op.isdir(ex_dir) download_version(want_version, tempdir) assert op.isdir(ex_dir) assert op.isfile(op.join(ex_dir, '__init__.py')) got_fname = op.join(ex_dir, '_version.py') with open(got_fname) as fid: line1 = fid.readline().strip() got_version = line1.split(' = ')[1][-8:-1] ex = want_version if want_version == 'cae6bc3': ex = (ex, '.dev0+c') assert got_version in ex, got_fname # auto dir determination orig_dir = os.getcwd() os.chdir(tempdir) try: assert op.isdir('expyfun') pytest.raises(IOError, download_version, want_version) finally: os.chdir(orig_dir) # make sure we can get latest version tempdir_2 = _TempDir() if _has_git: pytest.raises(IOError, download_version, dest_dir=tempdir) download_version(dest_dir=tempdir_2)
def test_version_assertions(): """Test version assertions.""" pytest.raises(TypeError, assert_version, 1) pytest.raises(TypeError, assert_version, '1' * 8) pytest.raises(AssertionError, assert_version, 'x' * 7) assert_version(__version__[-7:]) # old, broken, new for wi, want_version in enumerate(('090948e', 'cae6bc3', 'b6e8a81')): print('Running %s' % want_version) tempdir = _TempDir() if not _has_git: pytest.raises(ImportError, download_version, want_version, tempdir) else: pytest.raises(IOError, download_version, want_version, op.join(tempdir, 'foo')) pytest.raises(RuntimeError, download_version, 'x' * 7, tempdir) ex_dir = op.join(tempdir, 'expyfun') assert not op.isdir(ex_dir) with pytest.warns(None): # Sometimes warns download_version(want_version, tempdir) assert op.isdir(ex_dir) assert op.isfile(op.join(ex_dir, '__init__.py')) got_fname = op.join(ex_dir, '_version.py') with open(got_fname) as fid: line1 = fid.readline().strip() got_version = line1.split(' = ')[1][-8:-1] ex = want_version if want_version == 'cae6bc3': ex = (ex, '.dev0+c') assert got_version in ex, got_fname # auto dir determination orig_dir = os.getcwd() os.chdir(tempdir) try: assert op.isdir('expyfun') pytest.raises(IOError, download_version, want_version) finally: os.chdir(orig_dir) # make sure we can get latest version tempdir_2 = _TempDir() if _has_git: pytest.raises(IOError, download_version, dest_dir=tempdir) download_version(dest_dir=tempdir_2)
def test_version(): """Test version assertions.""" with warnings.catch_warnings(record=True) as w: warnings.simplefilter('always') assert_raises(TypeError, assert_version, 1) assert_raises(TypeError, assert_version, '1' * 8) assert_raises(AssertionError, assert_version, 'x' * 7) assert_version(__version__[-7:]) assert_true(all('actual' in str(ww.message) for ww in w)) for want_version in ('090948e', 'cae6bc3', 'b6e8a81'): # old, broken, new tempdir = _TempDir() if not _has_git: assert_raises(ImportError, download_version, want_version, tempdir) else: assert_raises(IOError, download_version, want_version, op.join(tempdir, 'foo')) assert_raises(RuntimeError, download_version, 'x' * 7, tempdir) ex_dir = op.join(tempdir, 'expyfun') assert_true(not op.isdir(ex_dir)) download_version(want_version, tempdir) assert_true(op.isdir(ex_dir)) assert_true(op.isfile(op.join(ex_dir, '__init__.py'))) got_fname = op.join(ex_dir, '_version.py') with open(got_fname) as fid: line1 = fid.readline().strip() got_version = line1.split(' = ')[1][-8:-1] ex = want_version if want_version != 'cae6bc3' else '.dev0+c' assert_equal(got_version, ex, msg='File {0}: {1} != {2}'.format(got_fname, got_version, ex)) # auto dir determination orig_dir = os.getcwd() os.chdir(tempdir) try: assert_true(op.isdir('expyfun')) assert_raises(IOError, download_version, want_version) finally: os.chdir(orig_dir) # make sure we can get latest version tempdir_2 = _TempDir() if _has_git: assert_raises(IOError, download_version, dest_dir=tempdir) download_version(dest_dir=tempdir_2)
# License: BSD (3-clause) print(__doc__) import tempfile from expyfun import download_version, run_subprocess # Let's say we want to fix our experiment to use a specific version of # expyfun. First we'd want to install that version (referenced by the # commit number) to the proper directory. Here we'll use a temporary # directory so we don't break any other code examples, but usually you'd # want to do it in the experiment directory: temp_dir = tempfile.mkdtemp() download_version('c18133c', temp_dir) # Now we would normally need to restart Python so the next ``import expyfun`` # call imported the proper version. We'd want to add an ``assert_version`` # call to the top of our script We can simulate that here just by # launching a new Python instance in the ``temp_dir`` and using our assertion # function: cmd = """ from expyfun import assert_version assert_version('c18133c') """ try: run_subprocess(['python', '-c', cmd], cwd=temp_dir) except Exception as exp:
# # License: BSD (3-clause) import tempfile from expyfun import download_version, run_subprocess print(__doc__) # Let's say we want to fix our experiment to use a specific version of # expyfun. First we'd want to install that version (referenced by the # commit number) to the proper directory. Here we'll use a temporary # directory so we don't break any other code examples, but usually you'd # want to do it in the experiment directory: temp_dir = tempfile.mkdtemp() download_version('c18133c', temp_dir) # Now we would normally need to restart Python so the next ``import expyfun`` # call imported the proper version. We'd want to add an ``assert_version`` # call to the top of our script We can simulate that here just by # launching a new Python instance in the ``temp_dir`` and using our assertion # function: cmd = """ from expyfun import assert_version assert_version('c18133c') """ try: run_subprocess(['python', '-c', cmd], cwd=temp_dir) except Exception as exp: