basictests.java
来自「linux subdivision ying gai ke yi le ba」· Java 代码 · 共 869 行 · 第 1/3 页
JAVA
869 行
thisTest.checkStatus();
client.remove(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/B/E"}, null, false);
client.remove(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/D/H"}, null, true);
client.remove(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/D/G"}, null, true);
client.remove(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/B/F"}, null, true);
client.remove(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/C"}, null, true);
client.remove(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/B/X"}, null, true);
file = new File(thisTest.getWorkingCopy(), "iota");
file.delete();
client.remove(new String[] {file.getAbsolutePath()}, null, true);
file = new File(thisTest.getWorkingCopy(), "A/D/gamma");
file.delete();
client.remove(new String[] {file.getAbsolutePath()}, null, false);
client.remove(new String[] {file.getAbsolutePath()}, null, true);
client.remove(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/B/E"}, null, false);
thisTest.getWc().setItemTextStatus("A/D/H",Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/H/chi",Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/H/omega",Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/H/psi",Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/G",Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/G/rho",Status.Kind.deleted);
thisTest.getWc().setItemPropStatus("A/D/G/rho", Status.Kind.none);
thisTest.getWc().setItemTextStatus("A/D/G/pi",Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/G/tau",Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/B/E",Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/B/E/alpha",Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/B/E/beta",Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/B/F",Status.Kind.deleted);
thisTest.getWc().setItemPropStatus("A/B/F", Status.Kind.none);
thisTest.getWc().setItemTextStatus("A/C",Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("iota",Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/gamma",Status.Kind.deleted);
thisTest.getWc().removeItem("A/B/X");
thisTest.getWc().removeItem("A/B/X/xi");
thisTest.getWc().removeItem("A/C/sigma");
thisTest.getWc().removeItem("A/C/Q");
thisTest.checkStatus();
client.remove(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/D"},null, true);
thisTest.getWc().setItemTextStatus("A/D", Status.Kind.deleted);
thisTest.getWc().removeItem("A/D/Y");
thisTest.checkStatus();
assertFalse("failed to remove text modified file", new File(thisTest.getWorkingCopy(), "A/D/G/rho").exists());
assertFalse("failed to remove prop modified file", new File(thisTest.getWorkingCopy(), "A/D/H/chi").exists());
assertFalse("failed to remove unversioned file", new File(thisTest.getWorkingCopy(), "A/C/sigma").exists());
assertFalse("failed to remove unmodified file", new File(thisTest.getWorkingCopy(), "A/B/E/alpha").exists());
file = new File(thisTest.getWorkingCopy(),"A/B/F");
assertTrue("removed versioned dir", file.exists() && file.isDirectory());
assertFalse("failed to remove unversioned dir", new File(thisTest.getWorkingCopy(), "A/C/Q").exists());
assertFalse("failed to remove added dir", new File(thisTest.getWorkingCopy(), "A/B/X").exists());
file = new File(thisTest.getWorkingCopy().getAbsolutePath(),"foo");
pw = new PrintWriter(new FileOutputStream(file));
pw.print("unversioned foo");
pw.close();
client.remove(new String[] {file.getAbsolutePath()}, null, true);
assertFalse("failed to remove unversioned file foo", file.exists());
client.remove(new String[] {file.getAbsolutePath()}, null, true);
client.remove(new String[] {thisTest.getURL()+"/iota"}, "delete iota URL", false);
}
public void testBasicCheckoutDeleted() throws Throwable
{
OneTest thisTest = new OneTest();
client.remove(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/D"}, null, true);
thisTest.getWc().setItemTextStatus("A/D", Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/G", Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/G/rho", Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/G/pi", Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/G/tau", Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/H", Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/H/chi", Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/H/psi", Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/H/omega", Status.Kind.deleted);
thisTest.getWc().setItemTextStatus("A/D/gamma", Status.Kind.deleted);
thisTest.checkStatus();
assertEquals("wrong revision from commit",client.commit(new String[]{thisTest.getWorkingCopy().getAbsolutePath()}, "log message", true),2);
thisTest.getWc().removeItem("A/D");
thisTest.getWc().removeItem("A/D/G");
thisTest.getWc().removeItem("A/D/G/rho");
thisTest.getWc().removeItem("A/D/G/pi");
thisTest.getWc().removeItem("A/D/G/tau");
thisTest.getWc().removeItem("A/D/H");
thisTest.getWc().removeItem("A/D/H/chi");
thisTest.getWc().removeItem("A/D/H/psi");
thisTest.getWc().removeItem("A/D/H/omega");
thisTest.getWc().removeItem("A/D/gamma");
thisTest.checkStatus();
client.checkout(thisTest.getURL()+"/A/D", thisTest.getWorkingCopy().getAbsolutePath()+"/new_D", new Revision.Number(1), true);
}
public void testBasicNodeKindChange() throws Throwable
{
OneTest thisTest = new OneTest();
client.remove(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/D/gamma"}, null, false);
thisTest.getWc().setItemTextStatus("A/D/gamma", Status.Kind.deleted);
thisTest.checkStatus();
try
{
client.mkdir(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/D/gamma"}, null);
fail("can change node kind");
}
catch(ClientException e)
{
}
thisTest.checkStatus();
assertEquals("wrong revision number from commit", client.commit(new String[]{thisTest.getWorkingCopy().getAbsolutePath()},"log message", true), 2);
thisTest.getWc().removeItem("A/D/gamma");
thisTest.checkStatus();
try
{
client.mkdir(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/D/gamma"}, null);
fail("can change node kind");
}
catch(ClientException e)
{
}
thisTest.checkStatus();
client.update(thisTest.getWorkingCopy().getAbsolutePath(), null, true);
thisTest.checkStatus();
client.mkdir(new String[] {thisTest.getWorkingCopy().getAbsolutePath()+"/A/D/gamma"}, null);
thisTest.getWc().addItem("A/D/gamma", null);
thisTest.getWc().setItemTextStatus("A/D/gamma", Status.Kind.added);
thisTest.checkStatus();
}
public void testBasicImport() throws Throwable
{
OneTest thisTest = new OneTest();
File file = new File(thisTest.getWorkingCopy().getAbsolutePath(),"new_file");
PrintWriter pw = new PrintWriter(new FileOutputStream(file));
pw.print("some text");
pw.close();
client.doImport(file.getAbsolutePath(), thisTest.getURL()+"/dirA/dirB/new_file","log message for new import", true);
file.delete();
assertEquals("wrong revision from commit",client.update(thisTest.getWorkingCopy().getAbsolutePath(), null, true),2);
thisTest.getWc().addItem("dirA", null);
thisTest.getWc().setItemWorkingCopyRevision("dirA",2);
thisTest.getWc().addItem("dirA/dirB", null);
thisTest.getWc().setItemWorkingCopyRevision("dirA/dirB",2);
thisTest.getWc().addItem("dirA/dirB/new_file", "some text");
thisTest.getWc().setItemWorkingCopyRevision("dirA/dirB/new_file",2);
thisTest.checkStatus();
}
public void testBasicCat() throws Throwable
{
OneTest thisTest = new OneTest();
File mu = new File(thisTest.getWorkingCopy(), "A/mu");
PrintWriter pw = new PrintWriter(new FileOutputStream(mu, true));
pw.print("some text");
pw.close();
byte[] content = client.fileContent(thisTest.getWorkingCopy().getAbsolutePath()+"/A/mu", null);
byte[] testContent = thisTest.getWc().getItemContent("A/mu").getBytes();
assertTrue("content changed", Arrays.equals(content, testContent));
}
public void testBasicLs() throws Throwable
{
OneTest thisTest = new OneTest();
DirEntry[] entries = client.list(thisTest.getWorkingCopy().getAbsolutePath(), null, false);
thisTest.getWc().check(entries,"", false);
entries = client.list(thisTest.getWorkingCopy().getAbsolutePath()+"/A", null, false);
thisTest.getWc().check(entries,"A", false);
entries = client.list(thisTest.getWorkingCopy().getAbsolutePath()+"/A", Revision.BASE, false);
thisTest.getWc().check(entries,"A", false);
entries = client.list(thisTest.getWorkingCopy().getAbsolutePath()+"/A/mu", null, false);
thisTest.getWc().check(entries,"A/mu");
}
public void testBasicAddIgnores() throws Throwable
{
OneTest thisTest = new OneTest();
File dir = new File(thisTest.getWorkingCopy(), "dir");
dir.mkdir();
File fileC = new File(dir, "foo.c");
new FileOutputStream(fileC).close();
File fileO = new File(dir, "foo.o");
new FileOutputStream(fileO).close();
client.add(dir.getAbsolutePath(), true);
thisTest.getWc().addItem("dir", null);
thisTest.getWc().setItemTextStatus("dir",Status.Kind.added);
thisTest.getWc().addItem("dir/foo.c", "");
thisTest.getWc().setItemTextStatus("dir/foo.c",Status.Kind.added);
thisTest.getWc().addItem("dir/foo.o", "");
thisTest.getWc().setItemTextStatus("dir/foo.o",Status.Kind.ignored);
thisTest.getWc().setItemNodeKind("dir/foo.o", NodeKind.unknown);
thisTest.checkStatus();
}
public void testBasicImportIgnores() throws Throwable
{
OneTest thisTest = new OneTest();
File dir = new File(thisTest.getWorkingCopy(), "dir");
dir.mkdir();
File fileC = new File(dir, "foo.c");
new FileOutputStream(fileC).close();
File fileO = new File(dir, "foo.o");
new FileOutputStream(fileO).close();
client.doImport(dir.getAbsolutePath(), thisTest.getURL()+"/dir","log message for import", true);
removeDirectoryWithContent(dir);
assertEquals("wrong revision from update", 2, client.update(thisTest.getWorkingCopy().getAbsolutePath(), null, true));
thisTest.getWc().addItem("dir", null);
thisTest.getWc().addItem("dir/foo.c", "");
thisTest.checkStatus();
*/
/*
'do not import ignored files in imported dirs'
# The bug was that
#
# $ svn import dir
#
# where dir contains some items that match the ignore list and some
# do not would add all items, ignored or not.
#
# This has been fixed by testing each item with the new
# svn_wc_is_ignored function.
sbox.build()
wc_dir = sbox.wc_dir
dir_path = os.path.join(wc_dir, 'dir')
foo_c_path = os.path.join(dir_path, 'foo.c')
foo_o_path = os.path.join(dir_path, 'foo.o')
os.mkdir(dir_path, 0755)
open(foo_c_path, 'w')
open(foo_o_path, 'w')
# import new dir into repository
url = svntest.main.current_repo_url + '/dir'
output, errput = svntest.actions.run_and_verify_svn(
None, None, [], 'import',
'--username', svntest.main.wc_author,
'--password', svntest.main.wc_passwd,
'-m', 'Log message for new import',
dir_path, url)
lastline = string.strip(output.pop())
cm = re.compile ("(Committed|Imported) revision [0-9]+.")
match = cm.search (lastline)
if not match:
### we should raise a less generic error here. which?
raise svntest.actions.SVNUnexpectedOutput
# remove (uncontrolled) local dir
svntest.main.safe_rmtree(dir_path)
# Create expected disk tree for the update (disregarding props)
expected_disk = svntest.main.greek_state.copy()
expected_disk.add({
'dir/foo.c' : Item(''),
})
# Create expected status tree for the update (disregarding props).
# Newly imported file should be at revision 2.
expected_status = svntest.actions.get_virginal_state(wc_dir, 2)
expected_status.add({
'dir' : Item(status=' ', wc_rev=2, repos_rev=2),
'dir/foo.c' : Item(status=' ', wc_rev=2, repos_rev=2),
})
# Create expected output tree for the update.
expected_output = svntest.wc.State(wc_dir, {
'dir' : Item(status='A '),
'dir/foo.c' : Item(status='A '),
})
# do update and check three ways
svntest.actions.run_and_verify_update(wc_dir,
expected_output,
expected_disk,
expected_status,
None, None, None,
None, None, 1)
*/
//}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?