-
Notifications
You must be signed in to change notification settings - Fork 2
/
FileInfoTests.java
136 lines (122 loc) · 4.54 KB
/
FileInfoTests.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
import junit.framework.Assert;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.io.File;
import java.io.IOException;
import java.util.Vector;
import static org.junit.Assert.assertTrue;
public class FileInfoTests {
private String masterPath;
private String slavePath;
private String targetPath;
@Before
public void setUp() {
// create some files and dirs
try {
// dirs
this.masterPath = "testMaster";
File f = new File(this.masterPath);
assertTrue(f.mkdir());
this.slavePath = "testSlave";
f = new File(this.slavePath);
assertTrue(f.mkdir());
this.targetPath = "testTarget";
f = new File(this.targetPath);
assertTrue(f.mkdir());
// files
f = new File(this.masterPath + File.separator + "a.a");
assertTrue(f.createNewFile());
f = new File(this.masterPath + File.separator + "b.a");
assertTrue(f.createNewFile());
f = new File(this.masterPath + File.separator + "c.a");
assertTrue(f.createNewFile());
f = new File(this.masterPath + File.separator + "a.b");
assertTrue(f.createNewFile());
f = new File(this.masterPath + File.separator + "b.b");
assertTrue(f.createNewFile());
f = new File(this.slavePath + File.separator + "a.a");
assertTrue(f.createNewFile());
f = new File(this.slavePath + File.separator + "b.a");
assertTrue(f.createNewFile());
f = new File(this.slavePath + File.separator + "b.b");
assertTrue(f.createNewFile());
} catch (IOException e) {
e.printStackTrace();
}
}
@After
public void tearDown() {
File f = new File(this.masterPath);
File[] files = f.listFiles();
for (File file : files) {
assertTrue(file.delete());
}
assertTrue(f.delete());
f = new File(this.slavePath);
files = f.listFiles();
for (File file : files) {
assertTrue(file.delete());
}
assertTrue(f.delete());
f = new File(this.targetPath);
files = f.listFiles();
for (File file : files) {
assertTrue(file.delete());
}
assertTrue(f.delete());
}
@Test
public void testFilesExist() {
assertTrue(new File(this.masterPath).listFiles().length > 0);
assertTrue(new File(this.slavePath).listFiles().length > 0);
assertTrue(new File(this.targetPath).listFiles().length == 0);
}
@Test
public void testIsMatchFileSameExtension() {
File f1 = new File(this.masterPath + File.separator + "a.a");
File f2 = new File(this.slavePath + File.separator + "a.a");
FileInfo fi = new FileInfo(f1);
assertTrue(fi.IsMatch(f2));
assertTrue(fi.IsMatch(new FileInfo(f2)));
}
@Test
public void testIsMatchFileDifferentExtension() {
File f1 = new File(this.masterPath + File.separator + "a.b");
File f2 = new File(this.slavePath + File.separator + "a.a");
FileInfo fi = new FileInfo(f1);
assertTrue(fi.IsMatch(f2));
assertTrue(fi.IsMatch(new FileInfo(f2)));
}
@Test
public void testGetFileInfoItems() {
String[] exts = {"a", "b"};
Vector<FileInfo> fis = FileSyncerUtils.GetFileInfoItems(this.masterPath, exts);
assertTrue(fis.size() == 5);
fis = FileSyncerUtils.GetFileInfoItems(this.slavePath, exts);
assertTrue(fis.size() == 3);
String[] exts2 = {"a"};
fis = FileSyncerUtils.GetFileInfoItems(this.slavePath, exts2);
assertTrue(fis.size() == 2);
}
@Test
public void testGetSiblings() {
File f = new File(this.masterPath + File.separator + "a.a");
FileInfo fi = new FileInfo(f);
Vector<File> siblings = fi.GetSiblings(f);
assertTrue(siblings.size() == 2);
f = new File(this.masterPath + File.separator + "c.a");
fi = new FileInfo(f);
siblings = fi.GetSiblings(f);
assertTrue(siblings.size() == 1);
}
@Test
public void testGetMatchName() {
File f = new File("meintest.xml");
Assert.assertEquals("meintest", FileInfo.GetMatchName(f));
f = new File("meintest.blabla.xml");
Assert.assertEquals("meintest.blabla", FileInfo.GetMatchName(f));
f = new File("mein test.xml");
Assert.assertEquals("mein test", FileInfo.GetMatchName(f));
}
}