Ejemplo n.º 1
0
 def test_matchingdependencies(self, newconfig, mocksession):
     config = newconfig([], """
         [testenv]
         deps=abc
     """)
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     cconfig = venv._getliveconfig()
     config = newconfig([], """
         [testenv]
         deps=xyz
     """)
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     otherconfig = venv._getliveconfig()
     assert not cconfig.matches(otherconfig)
Ejemplo n.º 2
0
 def test_matchingdependencies(self, newconfig, mocksession):
     config = newconfig([], """
         [testenv]
         deps=abc
     """)
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     cconfig = venv._getliveconfig()
     config = newconfig([], """
         [testenv]
         deps=xyz
     """)
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     otherconfig = venv._getliveconfig()
     assert not cconfig.matches(otherconfig)
Ejemplo n.º 3
0
 def test_matchingdependencies_file(self, newconfig, mocksession):
     config = newconfig([], """
         [tox]
         distshare={toxworkdir}/distshare
         [testenv]
         deps=abc
              {distshare}/xyz.zip
     """)
     xyz = config.distshare.join("xyz.zip")
     xyz.ensure()
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     cconfig = venv._getliveconfig()
     assert cconfig.matches(cconfig)
     xyz.write("hello")
     newconfig = venv._getliveconfig()
     assert not cconfig.matches(newconfig)
Ejemplo n.º 4
0
 def test_matchingdependencies_file(self, newconfig, mocksession):
     config = newconfig([], """
         [tox]
         distshare={toxworkdir}/distshare
         [testenv]
         deps=abc
              {distshare}/xyz.zip
     """)
     xyz = config.distshare.join("xyz.zip")
     xyz.ensure()
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     cconfig = venv._getliveconfig()
     assert cconfig.matches(cconfig)
     xyz.write("hello")
     newconfig = venv._getliveconfig()
     assert not cconfig.matches(newconfig)
Ejemplo n.º 5
0
 def test_distribute_recreation(self, newconfig, mocksession):
     config = newconfig([], "")
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     venv.update()
     cconfig = venv._getliveconfig()
     cconfig.distribute = False
     cconfig.writeconfig(venv.path_config)
     mocksession._clearmocks()
     venv.update()
     mocksession.report.expect("action", "recreating virtualenv*")
Ejemplo n.º 6
0
 def test_dep_recreation(self, newconfig, mocksession):
     config = newconfig([], "")
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     venv.update()
     cconfig = venv._getliveconfig()
     cconfig.deps[:] = [("1"*32, "xyz.zip")]
     cconfig.writeconfig(venv.path_config)
     mocksession._clearmocks()
     venv.update()
     mocksession.report.expect("action", "recreating virtualenv*")
Ejemplo n.º 7
0
 def test_basic(self, newconfig, mocksession, tmpdir):
     config = newconfig([], "")
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     cconfig = venv._getliveconfig()
     assert cconfig.matches(cconfig)
     path = tmpdir.join("configdump")
     cconfig.writeconfig(path)
     newconfig = CreationConfig.readconfig(path)
     assert newconfig.matches(cconfig)
     assert cconfig.matches(newconfig)
Ejemplo n.º 8
0
 def test_distribute_recreation(self, newconfig, mocksession):
     config = newconfig([], "")
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     venv.update()
     cconfig = venv._getliveconfig()
     cconfig.distribute = False
     cconfig.writeconfig(venv.path_config)
     mocksession._clearmocks()
     venv.update()
     mocksession.report.expect("verbosity0", "*recreate*")
Ejemplo n.º 9
0
 def test_dep_recreation(self, newconfig, mocksession):
     config = newconfig([], "")
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     venv.update()
     cconfig = venv._getliveconfig()
     cconfig.deps[:] = [("1"*32, "xyz.zip")]
     cconfig.writeconfig(venv.path_config)
     mocksession._clearmocks()
     venv.update()
     mocksession.report.expect("*", "*recreate*")
Ejemplo n.º 10
0
 def test_basic(self, newconfig, mocksession, tmpdir):
     config = newconfig([], "")
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     cconfig = venv._getliveconfig()
     assert cconfig.matches(cconfig)
     path = tmpdir.join("configdump")
     cconfig.writeconfig(path)
     newconfig = CreationConfig.readconfig(path)
     assert newconfig.matches(cconfig)
     assert cconfig.matches(newconfig)
Ejemplo n.º 11
0
 def test_matchingdependencies_latest(self, newconfig, mocksession):
     config = newconfig([], """
         [tox]
         distshare={toxworkdir}/distshare
         [testenv]
         deps={distshare}/xyz-*
     """)
     xyz = config.distshare.ensure("xyz-1.2.0.zip")
     xyz2 = config.distshare.ensure("xyz-1.2.1.zip")
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     cconfig = venv._getliveconfig()
     md5, path = cconfig.deps[0]
     assert path == xyz2
     assert md5 == path.computehash()
Ejemplo n.º 12
0
 def test_matchingdependencies_latest(self, newconfig, mocksession):
     config = newconfig([], """
         [tox]
         distshare={toxworkdir}/distshare
         [testenv]
         deps={distshare}/xyz-*
     """)
     xyz = config.distshare.ensure("xyz-1.2.0.zip")
     xyz2 = config.distshare.ensure("xyz-1.2.1.zip")
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     cconfig = venv._getliveconfig()
     md5, path = cconfig.deps[0]
     assert path == xyz2
     assert md5 == path.computehash()
Ejemplo n.º 13
0
 def test_python_recreation(self, newconfig, mocksession):
     config = newconfig([], "")
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     cconfig = venv._getliveconfig()
     venv.update()
     assert mocksession._pcalls
     args1 = mocksession._pcalls[0].args
     assert 'virtualenv' in " ".join(args1)
     mocksession.report.expect("action", "creating virtualenv*")
     # modify config and check that recreation happens
     mocksession._clearmocks()
     venv.update()
     mocksession.report.expect("action", "reusing existing*")
     mocksession._clearmocks()
     cconfig.python = py.path.local("balla")
     cconfig.writeconfig(venv.path_config)
     venv.update()
     mocksession.report.expect("action", "recreating virtualenv*")
Ejemplo n.º 14
0
def test_create(monkeypatch, mocksession, newconfig):
    config = newconfig([], """
        [testenv:py123]
    """)
    envconfig = config.envconfigs['py123']
    venv = VirtualEnv(envconfig, session=mocksession)
    assert venv.path == envconfig.envdir
    assert not venv.path.check()
    venv.create()
    l = mocksession._pcalls
    assert len(l) >= 1
    args = l[0].args
    assert str(args[1]).endswith("virtualenv.py")
    if sys.platform != "win32":
        # realpath is needed for stuff like the debian symlinks
        assert py.path.local(sys.executable).realpath() == args[0]
        #assert Envconfig.toxworkdir in args
        assert venv.getcommandpath("easy_install", cwd=py.path.local())
    interp = venv._getliveconfig().python
    assert interp == venv.getconfigexecutable()
    assert venv.path_config.check(exists=False)
Ejemplo n.º 15
0
def test_create(monkeypatch, mocksession, newconfig):
    config = newconfig([], """
        [testenv:py123]
    """)
    envconfig = config.envconfigs['py123']
    venv = VirtualEnv(envconfig, session=mocksession)
    assert venv.path == envconfig.envdir
    assert not venv.path.check()
    venv.create()
    l = mocksession._pcalls
    assert len(l) >= 1
    args = l[0].args
    assert str(args[1]).endswith("virtualenv.py")
    if sys.platform != "win32":
        # realpath is needed for stuff like the debian symlinks
        assert py.path.local(sys.executable).realpath() == args[0]
        #assert Envconfig.toxworkdir in args
        assert venv.getcommandpath("easy_install")
    interp = venv._getliveconfig().python
    assert interp == venv.getconfigexecutable()
    assert venv.path_config.check(exists=False)
Ejemplo n.º 16
0
 def test_python_recreation(self, newconfig, mocksession):
     config = newconfig([], "")
     envconfig = config.envconfigs['python']
     venv = VirtualEnv(envconfig, session=mocksession)
     cconfig = venv._getliveconfig()
     venv.update()
     assert not venv.path_config.check()
     mocksession.installsdist(venv, "sdist.zip")
     assert venv.path_config.check()
     assert mocksession._pcalls
     args1 = map(str, mocksession._pcalls[0].args)
     assert 'virtualenv' in " ".join(args1)
     mocksession.report.expect("*", "*create*")
     # modify config and check that recreation happens
     mocksession._clearmocks()
     venv.update()
     mocksession.report.expect("*", "*reusing*")
     mocksession._clearmocks()
     cconfig.python = py.path.local("balla")
     cconfig.writeconfig(venv.path_config)
     venv.update()
     mocksession.report.expect("verbosity0", "*recreate*")