Example #1
0
 def test_get_environment_metadata(self):
     # Verify that metadata is generated
     directory = tempfile.mkdtemp()
     self.directories['local'] = directory
     local_path = os.path.join(directory, "local")
     client = SvnClient(local_path)
     self.assertTrue('version' in client.get_environment_metadata())
Example #2
0
    def test_diff(self):
        client = SvnClient(self.local_path)
        self.assertTrue(client.path_exists())
        self.assertTrue(client.detect_presence())

        self.assertEqualDiffs('Index: added.txt\n===================================================================\n--- added.txt\t(revision 0)\n+++ added.txt\t(revision 0)\n@@ -0,0 +1 @@\n+0123456789abcdef\n\\ No newline at end of file\nIndex: modified-fs.txt\n===================================================================\n--- modified-fs.txt\t(revision 3)\n+++ modified-fs.txt\t(working copy)\n@@ -0,0 +1 @@\n+0123456789abcdef\n\\ No newline at end of file\nIndex: modified.txt\n===================================================================\n--- modified.txt\t(revision 3)\n+++ modified.txt\t(working copy)\n@@ -0,0 +1 @@\n+0123456789abcdef\n\\ No newline at end of file',
                          client.get_diff().rstrip())
Example #3
0
    def test_get_branches_non_canonical(self):
        remote_path = os.path.join(self.root_directory, "remote_nc")
        init_path = os.path.join(self.root_directory, "init_nc")
        local_path = os.path.join(self.root_directory, "local_nc")
        # create a "remote" repo
        subprocess.check_call("svnadmin create %s" % remote_path,
                              shell=True,
                              cwd=self.root_directory)
        local_root_url = _get_file_uri(remote_path)
        local_url = local_root_url + "/footest"
        # create an "init" repo to populate remote repo
        subprocess.check_call("svn checkout %s %s" %
                              (local_root_url, init_path),
                              shell=True,
                              cwd=self.root_directory)
        for cmd in [
                "mkdir footest",
                "mkdir %s" % os.path.normpath("footest/foosub")
        ]:
            subprocess.check_call(cmd, shell=True, cwd=init_path)

        _touch(os.path.join(init_path, "footest/foosub/fixed.txt"))
        for cmd in ["svn add footest", "svn commit -m initial"]:
            subprocess.check_call(cmd, shell=True, cwd=init_path)
        client = SvnClient(local_path)
        client.checkout(local_url)
        self.assertEqual([], client.get_branches())
Example #4
0
    def test_get_branches(self):
        client = SvnClient(self.local_path)

        self.assertEqual(['foo'], client.get_branches())

        # slyly create some empty branches
        subprocess.check_call("mkdir %s" % os.path.normpath("branches/foo2"),
                              shell=True,
                              cwd=self.init_path)
        subprocess.check_call("mkdir %s" % os.path.normpath("branches/bar"),
                              shell=True,
                              cwd=self.init_path)
        subprocess.check_call("svn add branches/foo2",
                              shell=True,
                              cwd=self.init_path)
        subprocess.check_call("svn add branches/bar",
                              shell=True,
                              cwd=self.init_path)
        subprocess.check_call("svn commit -m newbranches",
                              shell=True,
                              cwd=self.init_path)
        self.assertEqual([], client.get_branches(local_only=True))
        self.assertEqual(['bar', 'foo', 'foo2'], client.get_branches())

        # checkout branch foo
        local_path2 = os.path.join(self.root_directory, "local_foo")
        client = SvnClient(local_path2)
        client.checkout(self.local_root_url + '/branches/foo')
        self.assertEqual(['foo'], client.get_branches(local_only=True))
Example #5
0
 def setUpClass(self):
     SvnClientTestSetups.setUpClass()
     client = SvnClient(self.local_path)
     client.checkout(self.local_url)
     # after setting up "local" repo, change files and make some changes
     subprocess.check_call("rm deleted-fs.txt",
                           shell=True,
                           cwd=self.local_path)
     subprocess.check_call("svn rm deleted.txt",
                           shell=True,
                           cwd=self.local_path)
     f = io.open(os.path.join(self.local_path, "modified.txt"), 'a')
     f.write('0123456789abcdef')
     f.close()
     f = io.open(os.path.join(self.local_path, "modified-fs.txt"), 'a')
     f.write('0123456789abcdef')
     f.close()
     f = io.open(os.path.join(self.local_path, "added-fs.txt"), 'w')
     f.write('0123456789abcdef')
     f.close()
     f = io.open(os.path.join(self.local_path, "added.txt"), 'w')
     f.write('0123456789abcdef')
     f.close()
     subprocess.check_call("svn add added.txt",
                           shell=True,
                           cwd=self.local_path)
Example #6
0
 def test_status_relpath(self):
     client = SvnClient(self.local_path)
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertStatusListEqual(
         'A       local/added.txt\nD       local/deleted.txt\nM       local/modified-fs.txt\n!       local/deleted-fs.txt\nM       local/modified.txt\n',
         client.get_status(basepath=os.path.dirname(self.local_path)))
Example #7
0
 def test_status_untracked(self):
     client = SvnClient(self.local_path)
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertStatusListEqual(
         '?       added-fs.txt\nA       added.txt\nD       deleted.txt\nM       modified-fs.txt\n!       deleted-fs.txt\nM       modified.txt\n',
         client.get_status(untracked=True))
Example #8
0
 def test_get_environment_metadata(self):
     # Verify that metadata is generated
     directory = tempfile.mkdtemp()
     self.directories['local'] = directory
     local_path = os.path.join(directory, "local")
     client = SvnClient(local_path)
     self.assertTrue('version' in client.get_environment_metadata())
Example #9
0
    def test_export_repository(self):
        client = SvnClient(self.local_path)
        self.assertTrue(client.export_repository('', self.basepath_export))

        self.assertTrue(os.path.exists(self.basepath_export + '.tar.gz'))
        self.assertFalse(os.path.exists(self.basepath_export + '.tar'))
        self.assertFalse(os.path.exists(self.basepath_export))
Example #10
0
    def test_get_affected_files(self):
        client = SvnClient(self.local_path)
        client.checkout(self.local_url)
        log = client.get_log(limit=1)[0]
        affected = client.get_affected_files(log['id'])

        self.assertEqual(sorted(['deleted-fs.txt', 'deleted.txt']),
                         sorted(affected))
Example #11
0
 def test_checkout_dir_exists(self):
     url = self.local_url
     client = SvnClient(self.local_path)
     self.assertFalse(client.path_exists())
     os.makedirs(self.local_path)
     self.assertTrue(client.checkout(url))
     # non-empty
     self.assertFalse(client.checkout(url))
Example #12
0
 def test_get_remote_branch_version(self):
     url = self.branch_url
     client = SvnClient(self.local_path)
     client.checkout(url)
     self.assertEqual(client.get_remote_version(fetch=True),
                      self.local_version_foo_branch)
     self.assertEqual(client.get_remote_version(fetch=False),
                      None)
Example #13
0
 def test_checkout_dir_exists(self):
     url = self.local_url
     client = SvnClient(self.local_path)
     self.assertFalse(client.path_exists())
     os.makedirs(self.local_path)
     self.assertTrue(client.checkout(url))
     # non-empty
     self.assertFalse(client.checkout(url))
Example #14
0
    def test_diff(self):
        client = SvnClient(self.local_path)
        self.assertTrue(client.path_exists())
        self.assertTrue(client.detect_presence())

        self.assertEqualDiffs(
            'Index: added.txt\n===================================================================\n--- added.txt\t(revision 0)\n+++ added.txt\t(revision 0)\n@@ -0,0 +1 @@\n+0123456789abcdef\n\\ No newline at end of file\nIndex: modified-fs.txt\n===================================================================\n--- modified-fs.txt\t(revision 3)\n+++ modified-fs.txt\t(working copy)\n@@ -0,0 +1 @@\n+0123456789abcdef\n\\ No newline at end of file\nIndex: modified.txt\n===================================================================\n--- modified.txt\t(revision 3)\n+++ modified.txt\t(working copy)\n@@ -0,0 +1 @@\n+0123456789abcdef\n\\ No newline at end of file',
            client.get_diff().rstrip())
Example #15
0
    def test_export_repository(self):
        client = SvnClient(self.local_path)
        self.assertTrue(
          client.export_repository('',
            self.basepath_export)
        )

        self.assertTrue(os.path.exists(self.basepath_export + '.tar.gz'))
        self.assertFalse(os.path.exists(self.basepath_export + '.tar'))
        self.assertFalse(os.path.exists(self.basepath_export))
Example #16
0
 def test_get_log_defaults(self):
     client = SvnClient(self.local_path)
     client.checkout(self.local_url)
     log = client.get_log()
     self.assertEquals(3, len(log))
     self.assertEquals('modified', log[0]['message'])
     for key in ['id', 'author', 'date', 'message']:
         self.assertTrue(log[0][key] is not None, key)
     # svn logs don't have email, but key should be in dict
     self.assertTrue(log[0]['email'] is None)
Example #17
0
 def test_get_log_defaults(self):
     client = SvnClient(self.local_path)
     client.checkout(self.local_url)
     log = client.get_log()
     self.assertEquals(3, len(log))
     self.assertEquals('modified', log[0]['message'])
     for key in ['id', 'author', 'date', 'message']:
         self.assertTrue(log[0][key] is not None, key)
     # svn logs don't have email, but key should be in dict
     self.assertTrue(log[0]['email'] is None)
Example #18
0
    def test_status(self):
        client = SvnClient(self.local_path)
        self.assertTrue(client.path_exists())
        self.assertTrue(client.detect_presence())
        self.assertStatusListEqual(
            '''\
A       added.txt
D       deleted.txt
M       modified-fs.txt
!       deleted-fs.txt
M       modified.txt''', client.get_status())
Example #19
0
    def test_status_relpath(self):
        client = SvnClient(self.local_path)
        self.assertTrue(client.path_exists())
        self.assertTrue(client.detect_presence())
        self.assertStatusListEqual(
            '''\
A       local/added.txt
D       local/deleted.txt
M       local/modified-fs.txt
!       local/deleted-fs.txt
M       local/modified.txt'''.replace("/", os.path.sep),
            client.get_status(basepath=os.path.dirname(self.local_path)))
Example #20
0
 def test_checkout_emptyversion(self):
     url = self.local_url
     client = SvnClient(self.local_path)
     self.assertFalse(client.path_exists())
     self.assertFalse(client.detect_presence())
     self.assertFalse(client.detect_presence())
     self.assertTrue(client.checkout(url, version=''))
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertEqual(client.get_path(), self.local_path)
     self.assertEqual(client.get_url(), url)
     self.assertTrue(client.update(None))
     self.assertTrue(client.update(""))
Example #21
0
 def test_checkout_specific_version_and_update_short(self):
     "using just a number as version"
     url = self.local_url
     version = "3"
     client = SvnClient(self.local_path)
     self.assertFalse(client.path_exists())
     self.assertFalse(client.detect_presence())
     self.assertTrue(client.checkout(url, version))
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertEqual(client.get_version(), "-r3")
     new_version = '2'
     self.assertTrue(client.update(new_version))
     self.assertEqual(client.get_version(), "-r2")
Example #22
0
 def test_checkout(self):
     url = self.local_url
     client = SvnClient(self.local_path)
     self.assertFalse(client.path_exists())
     self.assertFalse(client.detect_presence())
     self.assertFalse(client.detect_presence())
     self.assertTrue(client.checkout(url))
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertEqual(client.get_path(), self.local_path)
     self.assertEqual(client.get_url(), url)
Example #23
0
 def test_checkout_specific_version_and_update_short(self):
     "using just a number as version"
     url = self.local_url
     version = "3"
     client = SvnClient(self.local_path)
     self.assertFalse(client.path_exists())
     self.assertFalse(client.detect_presence())
     self.assertTrue(client.checkout(url, version))
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertEqual(client.get_version(), "-r3")
     new_version = '2'
     self.assertTrue(client.update(new_version))
     self.assertEqual(client.get_version(), "-r2")
Example #24
0
 def test_checkout(self):
     url = self.local_url
     client = SvnClient(self.local_path)
     self.assertFalse(client.path_exists())
     self.assertFalse(client.detect_presence())
     self.assertFalse(client.detect_presence())
     self.assertTrue(client.checkout(url))
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertEqual(client.get_path(), self.local_path)
     self.assertEqual(client.get_url(), url)
 def test_checkout(self):
     from vcstools.svn import SvnClient
     directory = tempfile.mkdtemp()
     self.directories["checkout_test"] = directory
     local_path = os.path.join(directory, "ros")
     url = self.readonly_url
     client = SvnClient(local_path)
     self.assertFalse(client.path_exists())
     self.assertFalse(client.detect_presence())
     self.assertFalse(client.detect_presence())
     self.assertTrue(client.checkout(url))
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertEqual(client.get_path(), local_path)
     self.assertEqual(client.get_url(), url)
 def test_get_url_by_reading(self):
     from vcstools.svn import SvnClient
     client = SvnClient(self.readonly_path)
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertEqual(client.get_url(), self.readonly_url)
     #self.assertEqual(client.get_version(), self.readonly_version)
     self.assertEqual(client.get_version("PREV"), "-r2")
     self.assertEqual(client.get_version("2"), "-r2")
Example #27
0
 def test_get_branches_non_canonical(self):
     remote_path = os.path.join(self.root_directory, "remote_nc")
     init_path = os.path.join(self.root_directory, "init_nc")
     local_path = os.path.join(self.root_directory, "local_nc")
     # create a "remote" repo
     subprocess.check_call("svnadmin create %s" % remote_path, shell=True, cwd=self.root_directory)
     local_root_url = "file://localhost/" + remote_path
     local_url = local_root_url + "/footest"
     # create an "init" repo to populate remote repo
     subprocess.check_call("svn checkout %s %s" % (local_root_url, init_path), shell=True, cwd=self.root_directory)
     for cmd in [
         "mkdir footest",
         "mkdir footest/foosub",
         "touch footest/foosub/fixed.txt",
         "svn add footest",
         "svn commit -m initial"]:
         subprocess.check_call(cmd, shell=True, cwd=init_path)
     client = SvnClient(local_path)
     client.checkout(local_url)
     self.assertEqual([], client.get_branches())
Example #28
0
 def setUpClass(self):
     SvnClientTestSetups.setUpClass()
     client = SvnClient(self.local_path)
     client.checkout(self.local_url)
     # after setting up "local" repo, change files and make some changes
     subprocess.check_call("rm deleted-fs.txt", shell=True, cwd=self.local_path)
     subprocess.check_call("svn rm deleted.txt", shell=True, cwd=self.local_path)
     f = io.open(os.path.join(self.local_path, "modified.txt"), 'a')
     f.write('0123456789abcdef')
     f.close()
     f = io.open(os.path.join(self.local_path, "modified-fs.txt"), 'a')
     f.write('0123456789abcdef')
     f.close()
     f = io.open(os.path.join(self.local_path, "added-fs.txt"), 'w')
     f.write('0123456789abcdef')
     f.close()
     f = io.open(os.path.join(self.local_path, "added.txt"), 'w')
     f.write('0123456789abcdef')
     f.close()
     subprocess.check_call("svn add added.txt", shell=True, cwd=self.local_path)
Example #29
0
 def test_get_remote_branch_version(self):
     url = self.branch_url
     client = SvnClient(self.local_path)
     client.checkout(url)
     self.assertEqual(client.get_remote_version(fetch=True),
                      self.local_version_foo_branch)
     self.assertEqual(client.get_remote_version(fetch=False), None)
Example #30
0
    def test_get_affected_files(self):
        client = SvnClient(self.local_path)
        client.checkout(self.local_url)
        log = client.get_log(limit=1)[0]
        affected = client.get_affected_files(log['id'])

        self.assertEqual(sorted(['deleted-fs.txt', 'deleted.txt']),
                         sorted(affected))
    def setUp(self):
        from vcstools.svn import SvnClient
        directory = tempfile.mkdtemp()
        self.directories = dict(setUp=directory)
        remote_path = os.path.join(directory, "remote")
        init_path = os.path.join(directory, "remote")
        
        # create a "remote" repo
        subprocess.check_call(["svnadmin", "create", remote_path], cwd=directory)
        self.readonly_url = "file://localhost"+remote_path
        
        # create an "init" repo to feed remote repo
        subprocess.check_call(["svn", "checkout", self.readonly_url, init_path], cwd=directory)
        
        subprocess.check_call(["touch", "fixed.txt"], cwd=init_path)
        subprocess.check_call(["svn", "add", "fixed.txt"], cwd=init_path)
        subprocess.check_call(["svn", "commit", "-m", "initial"], cwd=init_path)
                
        self.readonly_version_init = "-r1"
        
        # files to be modified in "local" repo
        subprocess.check_call(["touch", "modified.txt"], cwd=init_path)
        subprocess.check_call(["touch", "modified-fs.txt"], cwd=init_path)
        subprocess.check_call(["svn", "add", "modified.txt", "modified-fs.txt"], cwd=init_path)
        subprocess.check_call(["svn", "commit", "-m", "initial"], cwd=init_path)
        
        self.readonly_version_second = "-r2"
        
        subprocess.check_call(["touch", "deleted.txt"], cwd=init_path)
        subprocess.check_call(["touch", "deleted-fs.txt"], cwd=init_path)
        subprocess.check_call(["svn", "add", "deleted.txt", "deleted-fs.txt"], cwd=init_path)
        subprocess.check_call(["svn", "commit", "-m", "modified"], cwd=init_path)
        
        self.readonly_version = "-r3"

        self.readonly_path = os.path.join(directory, "readonly")
        client = SvnClient(self.readonly_path)
        self.assertTrue(client.checkout(self.readonly_url, self.readonly_version))
    def test_diff_relpath(self):
        from vcstools.svn import SvnClient
        client = SvnClient(self.readonly_path)
        self.assertTrue(client.path_exists())
        self.assertTrue(client.detect_presence())

        print 'Index: readonly/added.txt\n===================================================================\n--- readonly/added.txt\t(revision 0)\n+++ readonly/added.txt\t(revision 0)\n@@ -0,0 +1 @@\n+0123456789abcdef\n\\ No newline at end of file\nIndex: readonly/modified-fs.txt\n===================================================================\n--- readonly/modified-fs.txt\t(revision 3)\n+++ readonly/modified-fs.txt\t(working copy)\n@@ -0,0 +1 @@\n+0123456789abcdef\n\\ No newline at end of file\nIndex: readonly/modified.txt\n===================================================================\n--- readonly/modified.txt\t(revision 3)\n+++ readonly/modified.txt\t(working copy)\n@@ -0,0 +1 @@\n+0123456789abcdef\n\\ No newline at end of file\n'
        print client.get_diff(basepath=os.path.dirname(self.readonly_path))
        
        self.assertEqualDiffs('Index: readonly/added.txt\n===================================================================\n--- readonly/added.txt\t(revision 0)\n+++ readonly/added.txt\t(revision 0)\n@@ -0,0 +1 @@\n+0123456789abcdef\n\\ No newline at end of file\nIndex: readonly/modified-fs.txt\n===================================================================\n--- readonly/modified-fs.txt\t(revision 3)\n+++ readonly/modified-fs.txt\t(working copy)\n@@ -0,0 +1 @@\n+0123456789abcdef\n\\ No newline at end of file\nIndex: readonly/modified.txt\n===================================================================\n--- readonly/modified.txt\t(revision 3)\n+++ readonly/modified.txt\t(working copy)\n@@ -0,0 +1 @@\n+0123456789abcdef\n\\ No newline at end of file\n', client.get_diff(basepath=os.path.dirname(self.readonly_path)))
Example #33
0
    def test_get_branches(self):
        client = SvnClient(self.local_path)

        self.assertEqual(['foo'], client.get_branches())

        # slyly create some empty branches
        subprocess.check_call("mkdir -p branches/foo2", shell=True, cwd=self.init_path)
        subprocess.check_call("mkdir -p branches/bar", shell=True, cwd=self.init_path)
        subprocess.check_call("svn add branches/foo2", shell=True, cwd=self.init_path)
        subprocess.check_call("svn add branches/bar", shell=True, cwd=self.init_path)
        subprocess.check_call("svn commit -m newbranches", shell=True, cwd=self.init_path)
        self.assertEqual([], client.get_branches(local_only=True))
        self.assertEqual(['bar', 'foo', 'foo2'], client.get_branches())

        # checkout branch foo
        local_path2 = os.path.join(self.root_directory, "local_foo")
        client = SvnClient(local_path2)
        client.checkout(self.local_root_url + '/branches/foo')
        self.assertEqual(['foo'], client.get_branches(local_only=True))
Example #34
0
 def testStatusClean(self):
     client = SvnClient(self.remote_path)
     self.assertEquals('', client.get_status())
Example #35
0
 def testDiffClean(self):
     client = SvnClient(self.remote_path)
     self.assertEquals('', client.get_diff())
Example #36
0
 def test_checkout_emptyversion(self):
     url = self.local_url
     client = SvnClient(self.local_path)
     self.assertFalse(client.path_exists())
     self.assertFalse(client.detect_presence())
     self.assertFalse(client.detect_presence())
     self.assertTrue(client.checkout(url, version=''))
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertEqual(client.get_path(), self.local_path)
     self.assertEqual(client.get_url(), url)
     self.assertTrue(client.update(None))
     self.assertTrue(client.update(""))
Example #37
0
 def test_get_log_limit(self):
     client = SvnClient(self.local_path)
     client.checkout(self.local_url)
     log = client.get_log(limit=1)
     self.assertEquals(1, len(log))
     self.assertEquals('modified', log[0]['message'])
Example #38
0
 def test_get_log_limit(self):
     client = SvnClient(self.local_path)
     client.checkout(self.local_url)
     log = client.get_log(limit=1)
     self.assertEquals(1, len(log))
     self.assertEquals('modified', log[0]['message'])
Example #39
0
 def test_get_url_by_reading(self):
     client = SvnClient(self.local_path)
     client.checkout(self.local_url)
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertEqual(self.local_url, client.get_url())
     #self.assertEqual(client.get_version(), self.local_version)
     self.assertEqual(client.get_version("PREV"), "-r2")
     self.assertEqual(client.get_version("2"), "-r2")
     self.assertEqual(client.get_version("-r2"), "-r2")
     # test invalid cient and repo without url
     client = SvnClient(os.path.join(self.remote_path, 'foo'))
     self.assertEqual(None, client.get_url())
Example #40
0
    def setUpClass(self):
        SvnClientTestSetups.setUpClass()
        client = SvnClient(self.local_path)
        client.checkout(self.local_url)

        self.basepath_export = os.path.join(self.root_directory, 'export')
Example #41
0
 def test_get_url_nonexistant(self):
     local_path = "/tmp/dummy"
     client = SvnClient(local_path)
     self.assertEqual(client.get_url(), None)
Example #42
0
 def test_status_untracked(self):
     client = SvnClient(self.local_path)
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertStatusListEqual('?       added-fs.txt\nA       added.txt\nD       deleted.txt\nM       modified-fs.txt\n!       deleted-fs.txt\nM       modified.txt\n', client.get_status(untracked=True))
 def test_status_untracked(self):
     from vcstools.svn import SvnClient
     client = SvnClient(self.readonly_path)
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertEquals('?       added-fs.txt\nA       added.txt\nD       deleted.txt\nM       modified-fs.txt\n!       deleted-fs.txt\nM       modified.txt\n', client.get_status(untracked=True))
Example #44
0
    def setUpClass(self):
        SvnClientTestSetups.setUpClass()
        client = SvnClient(self.local_path)
        client.checkout(self.local_url)

        self.basepath_export = os.path.join(self.root_directory, 'export')
Example #45
0
 def setUpClass(self):
     SvnClientTestSetups.setUpClass()
     client = SvnClient(self.local_path)
     client.checkout(self.local_url)
Example #46
0
 def testStatusClean(self):
     client = SvnClient(self.remote_path)
     self.assertEquals('', client.get_status())
Example #47
0
 def setUpClass(self):
     SvnClientTestSetups.setUpClass()
     client = SvnClient(self.local_path)
     client.checkout(self.local_url)
Example #48
0
 def test_get_type_name(self):
     local_path = "/tmp/dummy"
     client = SvnClient(local_path)
     self.assertEqual(client.get_vcs_type_name(), 'svn')
Example #49
0
 def test_get_log_path(self):
     client = SvnClient(self.local_path)
     client.checkout(self.local_url)
     log = client.get_log(relpath='fixed.txt')
     self.assertEquals('initial', log[0]['message'])
Example #50
0
 def test_get_url_by_reading(self):
     client = SvnClient(self.local_path)
     client.checkout(self.local_url)
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertEqual(self.local_url, client.get_url())
     #self.assertEqual(client.get_version(), self.local_version)
     self.assertEqual(client.get_version("PREV"), "-r2")
     self.assertEqual(client.get_version("2"), "-r2")
     self.assertEqual(client.get_version("-r2"), "-r2")
     # test invalid cient and repo without url
     client = SvnClient(os.path.join(self.remote_path, 'foo'))
     self.assertEqual(None, client.get_url())
Example #51
0
 def test_get_type_name(self):
     local_path = "/tmp/dummy"
     client = SvnClient(local_path)
     self.assertEqual(client.get_vcs_type_name(), 'svn')
Example #52
0
 def test_get_log_path(self):
     client = SvnClient(self.local_path)
     client.checkout(self.local_url)
     log = client.get_log(relpath='fixed.txt')
     self.assertEquals('initial', log[0]['message'])
Example #53
0
 def test_get_url_nonexistant(self):
     local_path = "/tmp/dummy"
     client = SvnClient(local_path)
     self.assertEqual(client.get_url(), None)
Example #54
0
 def testDiffClean(self):
     client = SvnClient(self.remote_path)
     self.assertEquals('', client.get_diff())
Example #55
0
 def test_status_relpath(self):
     client = SvnClient(self.local_path)
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertStatusListEqual('A       local/added.txt\nD       local/deleted.txt\nM       local/modified-fs.txt\n!       local/deleted-fs.txt\nM       local/modified.txt\n', client.get_status(basepath=os.path.dirname(self.local_path)))
 def test_status_relpath(self):
     from vcstools.svn import SvnClient
     client = SvnClient(self.readonly_path)
     self.assertTrue(client.path_exists())
     self.assertTrue(client.detect_presence())
     self.assertEquals('A       readonly/added.txt\nD       readonly/deleted.txt\nM       readonly/modified-fs.txt\n!       readonly/deleted-fs.txt\nM       readonly/modified.txt\n', client.get_status(basepath=os.path.dirname(self.readonly_path)))