⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 svnsync_tests.py

📁 subversion-1.4.3-1.tar.gz 配置svn的源码
💻 PY
📖 第 1 页 / 共 2 页
字号:
                                     svntest.main.wc_passwd,                                     dest_sbox.wc_dir)  # Commit some change to the destination, which should be detected by svnsync  svntest.main.file_append(os.path.join(dest_sbox.wc_dir, 'A', 'B', 'lambda'),                           'new lambda text')  svntest.actions.run_and_verify_svn(None,                                     None,                                     [],                                     'ci',                                     '-m', 'msg',                                     '--username',                                     svntest.main.wc_author,                                     '--password',                                     svntest.main.wc_passwd,                                     dest_sbox.wc_dir)  run_sync(dest_sbox.repo_url,           ".*Destination HEAD \\(2\\) is not the last merged revision \\(1\\).*")#----------------------------------------------------------------------def basic_authz(sbox):  "verify that unreadable content is not synced"  skip_test_when_no_authz_available()  sbox.build("svnsync-basic-authz")  write_restrictive_svnserve_conf(svntest.main.current_repo_dir)  dest_sbox = sbox.clone_dependent()  build_repos(dest_sbox)  svntest.actions.enable_revprop_changes(svntest.main.current_repo_dir)  run_init(dest_sbox.repo_url, sbox.repo_url)  fp = open(sbox.authz_file, 'w')  fp.write("[svnsync-basic-authz:/]\n" +           "* = r\n" +           "\n" +           "[svnsync-basic-authz:/A/B]\n" +           "* = \n" +           "\n" +           "[svnsync-basic-authz-1:/]\n" +           "* = rw\n")  fp.close()  run_sync(dest_sbox.repo_url)  lambda_url = dest_sbox.repo_url + '/A/B/lambda'  # this file should have been blocked by authz  svntest.actions.run_and_verify_svn(None,                                     [],                                     svntest.SVNAnyOutput,                                     'cat',                                     '--username', svntest.main.wc_author,                                     '--password', svntest.main.wc_passwd,                                     lambda_url)#----------------------------------------------------------------------def copy_from_unreadable_dir(sbox):  "verify that copies from unreadable dirs work"  skip_test_when_no_authz_available()  sbox.build("svnsync-copy-from-unreadable-dir")  B_url = sbox.repo_url + '/A/B'  P_url = sbox.repo_url + '/A/P'  # Set a property on the directory we're going to copy, and a file in it, to  # confirm that they're transmitted when we later sync the copied directory  svntest.actions.run_and_verify_svn(None,                                     None,                                     [],                                     'pset',                                     'foo',                                     'bar',                                     sbox.wc_dir + '/A/B/lambda')  svntest.actions.run_and_verify_svn(None,                                     None,                                     [],                                     'pset',                                     'baz',                                     'zot',                                     sbox.wc_dir + '/A/B')  svntest.actions.run_and_verify_svn(None,                                     None,                                     [],                                     'ci',                                     sbox.wc_dir + '/A/B',                                     '-m', 'log_msg')  # Now copy that directory so we'll see it in our synced copy  svntest.actions.run_and_verify_svn(None,                                     None,                                     [],                                     'cp',                                     B_url,                                     P_url,                                     '--username', svntest.main.wc_author,                                     '--password', svntest.main.wc_passwd,                                     '-m', 'Copy B to P')  write_restrictive_svnserve_conf(svntest.main.current_repo_dir)  dest_sbox = sbox.clone_dependent()  build_repos(dest_sbox)  svntest.actions.enable_revprop_changes(svntest.main.current_repo_dir)  fp = open(sbox.authz_file, 'w')  # For mod_dav_svn's parent path setup we need per-repos permissions in  # the authz file...  if sbox.repo_url.startswith('http'):    fp.write("[svnsync-copy-from-unreadable-dir:/]\n" +             "* = r\n" +             "\n" +             "[svnsync-copy-from-unreadable-dir:/A/B]\n" +             "* = \n" +             "\n" +             "[svnsync-copy-from-unreadable-dir-1:/]\n" +             "* = rw")  # Otherwise we can just go with the permissions needed for the source  # repository.  else:    fp.write("[/]\n" +             "* = r\n" +             "\n" +             "[/A/B]\n" +             "* =\n")  fp.close()  run_init(dest_sbox.repo_url, sbox.repo_url)  run_sync(dest_sbox.repo_url)  lambda_url = dest_sbox.repo_url + '/A/B/lambda'  expected_out = [    'Changed paths:\n',    '   A /A/P\n',    '   A /A/P/E\n',    '   A /A/P/E/alpha\n',    '   A /A/P/E/beta\n',    '   A /A/P/F\n',    '   A /A/P/lambda\n',    '\n',    'Copy B to P\n',  ]  out, err = svntest.main.run_svn(None,                                  'log',                                  '--username', svntest.main.wc_author,                                  '--password', svntest.main.wc_passwd,                                  '-r', '3',                                  '-v',                                  dest_sbox.repo_url)  if err:    raise svntest.actions.SVNUnexpectedStderr(err)  svntest.actions.compare_and_display_lines(None,                                            'LOG',                                            expected_out,                                            out[2:11])  svntest.actions.run_and_verify_svn(None,                                     ['bar\n'],                                     [],                                     'pget',                                     'foo',                                     dest_sbox.repo_url + '/A/P/lambda')  svntest.actions.run_and_verify_svn(None,                                     ['zot\n'],                                     [],                                     'pget',                                     'baz',                                     dest_sbox.repo_url + '/A/P')def url_encoding(sbox):  "test url encoding issues"  run_test(sbox, "url-encoding-bug.dump")# A test for copying revisions that lack a property that already exists# on the destination rev as part of the commit (i.e. svn:author in this# case, but svn:date would also work).def no_author(sbox):  "test copying revs with no svn:author revprops"  run_test(sbox, "no-author.dump")######################################################################### Run the tests# list all tests here, starting with None:test_list = [ None,              copy_and_modify,              copy_from_previous_version_and_modify,              copy_from_previous_version,              modified_in_place,              tag_empty_trunk,              tag_trunk_with_dir,              tag_trunk_with_file2,              tag_trunk_with_file,              tag_with_modified_file,              dir_prop_change,              file_dir_file,              copy_parent_modify_prop,              detect_meddling,              basic_authz,              copy_from_unreadable_dir,              url_encoding,              no_author,             ]if __name__ == '__main__':  svntest.main.run_tests(test_list)  # NOTREACHED### End of file.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -