diff options
| author | iwakeh <iwakeh@torproject.org> | 2016-10-20 15:29:40 +0200 |
|---|---|---|
| committer | iwakeh <iwakeh@torproject.org> | 2016-10-20 15:29:40 +0200 |
| commit | 7302996e85275e06501ddeda0662ee773095a8e8 (patch) | |
| tree | 8c2ecca2046e66d0a79c1e37eefdb5331ea127d5 | |
| parent | ddbea64df23d6b1262fdf1acf36be0839ad5fb5d (diff) | |
Verify all the filenames created in 'out'.task-18910-5
| -rw-r--r-- | src/test/java/org/torproject/collector/sync/SyncPersistenceTest.java | 113 |
1 files changed, 92 insertions, 21 deletions
diff --git a/src/test/java/org/torproject/collector/sync/SyncPersistenceTest.java b/src/test/java/org/torproject/collector/sync/SyncPersistenceTest.java index 04572ae..1c3307d 100644 --- a/src/test/java/org/torproject/collector/sync/SyncPersistenceTest.java +++ b/src/test/java/org/torproject/collector/sync/SyncPersistenceTest.java @@ -24,6 +24,7 @@ import java.io.File; import java.io.InputStreamReader; import java.nio.charset.StandardCharsets; import java.nio.file.Files; +import java.nio.file.Paths; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -38,29 +39,47 @@ public class SyncPersistenceTest { return Arrays.asList(new Object[][] { {"exit-lists/2016-09-20-13-02-00", // expected recent path - "exit-lists/2016/09/20/2016-09-20-13-02-00", // expected out path + new String[]{"exit-lists/2016/09/20/2016-09-20-13-02-00"}, // expected out path "2016-09-20-13-02-00", // test-filename in src/test/resources Integer.valueOf(1), // expected recent count of descs files Integer.valueOf(1)}, // expected output count of descs files {"relay-descriptors/server-descriptors/" + "2016-10-05-19-06-17-server-descriptors", - "relay-descriptors/server-descriptor/2016/10/e/3/" + new String[]{"relay-descriptors/server-descriptor/2016/10/e/3/" + "e381ce74a1a592f6d375706665aba6d4d22923f1", + "relay-descriptors/server-descriptor/2016/10/e/1/" + + "e1142337dee5b890393a0891acbde51577c2b743", + "relay-descriptors/server-descriptor/2016/10/5/b/" + + "5b202650802a916f1ec3a1ef36b98706e3747701", + "relay-descriptors/server-descriptor/2016/10/5/a/" + + "5a536243bf056cd7177ddfd8eb363fec978f3343", + "relay-descriptors/server-descriptor/2016/10/4/1/" + + "4179c50d3c764bc85c9d719e14e55a6cc232a10d", + "relay-descriptors/server-descriptor/2016/10/2/0/" + + "2091f76a8256e479cbe4f57be85f87909af07236", + "relay-descriptors/server-descriptor/2016/10/c/8/" + + "c8c3588019f7c896eb4185cfc1074cfe5eb405ea", + "relay-descriptors/server-descriptor/2016/10/b/b/" + + "bbca7ed70ba6ea88f995b067a004f5a4d0903d6e", + "relay-descriptors/server-descriptor/2016/10/d/a/" + + "dae8966ca600b46bc75ed5efb97286481e9a6876", + "relay-descriptors/server-descriptor/2016/10/a/0/" + + "a0ed9227a9413f140445002ce412f8828591e7ec"}, "relay-2016-10-02-16-05-00-server-descriptors", Integer.valueOf(1), Integer.valueOf(10)}, {"relay-descriptors/consensuses/2016-09-20-13-00-00-consensus", - "relay-descriptors/consensus/2016/09/20/2016-09-20-13-00-00-consensus", + new String[]{"relay-descriptors/consensus/2016/09/20/2016-09-20-13-00-00-consensus"}, "2016-09-20-13-00-00-consensus", Integer.valueOf(1), Integer.valueOf(1)}, {"relay-descriptors/microdescs/consensus-microdesc/" + "2016-10-02-17-00-00-consensus-microdesc", - "relay-descriptors/microdesc/2016/10/consensus-microdesc/" - + "02/2016-10-02-17-00-00-consensus-microdesc", + new String[]{"relay-descriptors/microdesc/2016/10/consensus-microdesc/" + + "02/2016-10-02-17-00-00-consensus-microdesc"}, "2016-10-02-17-00-00-consensus-microdesc", Integer.valueOf(1), Integer.valueOf(1)}, @@ -68,9 +87,9 @@ public class SyncPersistenceTest { {"relay-descriptors/votes/2016-10-01-16-00-00-vote" + "-0232AF901C31A04EE9848595AF9BB7620D4C5B2E" + "-FEE63B4AB7CE5A6BDD09E9A5C4F01BD61EB7E4F1", - "relay-descriptors/vote/2016/10/01/2016-10-01-16-00-00-vote" + new String[]{"relay-descriptors/vote/2016/10/01/2016-10-01-16-00-00-vote" + "-0232AF901C31A04EE9848595AF9BB7620D4C5B2E" - + "-FEE63B4AB7CE5A6BDD09E9A5C4F01BD61EB7E4F1", + + "-FEE63B4AB7CE5A6BDD09E9A5C4F01BD61EB7E4F1"}, "2016-10-01-16-00-00-vote-0232AF901C31A04EE9848595AF9BB7620D4C5B2E-" + "FEE63B4AB7CE5A6BDD09E9A5C4F01BD61EB7E4F1", Integer.valueOf(1), @@ -79,40 +98,88 @@ public class SyncPersistenceTest { {"relay-descriptors/votes/2016-09-20-13-00-00-vote-" + "49015F787433103580E3B66A1707A00E60F2D15B" + "-60ADC6BEC262AE921A1037D54C8A3976367DBE87", - "relay-descriptors/vote/2016/09/20/2016-09-20-13-00-00-vote-" + new String[]{"relay-descriptors/vote/2016/09/20/2016-09-20-13-00-00-vote-" + "49015F787433103580E3B66A1707A00E60F2D15B" - + "-60ADC6BEC262AE921A1037D54C8A3976367DBE87", + + "-60ADC6BEC262AE921A1037D54C8A3976367DBE87"}, "2016-09-20-13-00-00-vote-49015F787433103580E3B66A1707A00E60F2D15B" + "-60ADC6BEC262AE921A1037D54C8A3976367DBE87", Integer.valueOf(1), Integer.valueOf(1)}, {"relay-descriptors/extra-infos/2016-10-05-19-06-17-extra-infos", - "relay-descriptors/extra-info/2016/10/9/a/" + new String[]{"relay-descriptors/extra-info/2016/10/9/a/" + "9a4b819baeeeb6952ba737b752471b8637e75a5c", + "relay-descriptors/extra-info/2016/10/6/a/" + + "6a36d4ac36447e645c91ed63633a09197b7ad97e", + "relay-descriptors/extra-info/2016/10/e/b/" + + "eb73b59951bc1b0403be81220fb75be464954c31", + "relay-descriptors/extra-info/2016/10/4/e/" + + "4ef90738e54a403b265120dcbab7b494e0c68d3b", + "relay-descriptors/extra-info/2016/10/c/a/" + + "ca86eb96d22d188bb574b6b329ab21e0d9243516", + "relay-descriptors/extra-info/2016/10/8/2/" + + "82471deac7b251089a0878d29a228d4e323b823f", + "relay-descriptors/extra-info/2016/10/3/6/" + + "36691feb7cec6a9630b9ecd11a9b5dc61c147c5d", + "relay-descriptors/extra-info/2016/10/3/1/" + + "317586098443ed19b200417556a08ebc42133521", + "relay-descriptors/extra-info/2016/10/0/4/" + + "04219ada0be922fa7518d36b0d8e66afc55e8603"}, "relay-2016-10-02-08-05-00-extra-infos", Integer.valueOf(1), Integer.valueOf(9)}, {"bridge-descriptors/extra-infos/2016-10-05-19-06-17-extra-infos", - "bridge-descriptors/2016/10/extra-infos/9/f/" + new String[]{"bridge-descriptors/2016/10/extra-infos/9/f/" + "9f88a7c2abe6665d204137ba8c2661d42e7c2829", + "bridge-descriptors/2016/10/extra-infos/e/e/" + + "eee0dc51b9a0a71ba73610123b13cea212b5cf83", + "bridge-descriptors/2016/10/extra-infos/e/1/" + + "e11c5239494bad2f6f3759f1104a2f6182beab4d", + "bridge-descriptors/2016/10/extra-infos/c/a/" + + "cab78ea0ffe9a7bc00527fef19f546c47d59f01a", + "bridge-descriptors/2016/10/extra-infos/3/4/" + + "3412a1dccd183a1c0bd1b748f34d88594be6ea52", + "bridge-descriptors/2016/10/extra-infos/3/1/" + + "31bcea576e77ba66150f7903b588c919adad849c", + "bridge-descriptors/2016/10/extra-infos/b/c/" + + "bcfcbb38b15e9b500b1a6e9b0bcbbce858660f17", + "bridge-descriptors/2016/10/extra-infos/7/a/" + + "7a93ca1edc543e747f1157bc3a557890335311a4", + "bridge-descriptors/2016/10/extra-infos/1/6/" + + "16d2b79fbd0a8567c6afd7585c775ac7745561e3", + "bridge-descriptors/2016/10/extra-infos/f/a/" + + "fabd8f614633ec2d2d405f2554e14381bc33d9cb"}, "bridge-2016-10-02-08-09-00-extra-infos", Integer.valueOf(1), Integer.valueOf(10) }, {"bridge-descriptors/server-descriptors/" + "2016-10-05-19-06-17-server-descriptors", - "bridge-descriptors/2016/10/server-descriptors/" - + "a/8/a8a5509ad1393c8f36abd2d8f0de1bb751926872", + new String[]{"bridge-descriptors/2016/10/server-descriptors" + + "/6/1/614414898ee133ee9bf6b10a9898cab518c5453e", + "bridge-descriptors/2016/10/server-descriptors/e/5/" + + "e5d46e88cb52d4fc0524398cfb7a6754394bc5e9", + "bridge-descriptors/2016/10/server-descriptors/5/b/" + + "5b20316b03afc98a165a219044b6fa6ca34c58ab", + "bridge-descriptors/2016/10/server-descriptors/c/3/" + + "c32acc52826b37e5319f1bac2f8812b33a772540", + "bridge-descriptors/2016/10/server-descriptors/7/8/" + + "784d6f9e82426072fbfc7a42f8f7133ba6ec1453", + "bridge-descriptors/2016/10/server-descriptors/a/8/" + + "a8a5509ad1393c8f36abd2d8f0de1bb751926872", + "bridge-descriptors/2016/10/server-descriptors/0/7/" + + "07d952e9020cb68a63d9156653a2e41af4af4d44", + "bridge-descriptors/2016/10/server-descriptors/0/a/" + + "0a65c636a20631bd5deb2f10dc664d2032303c46"}, "bridge-2016-10-02-16-09-00-server-descriptors", Integer.valueOf(1), Integer.valueOf(8)}, {"bridge-descriptors/statuses/" + "20160920-063816-1D8F3A91C37C5D1C4C19B1AD1D0CFBE8BF72D8E1", - "bridge-descriptors/2016/09/statuses/20/" - + "20160920-063816-1D8F3A91C37C5D1C4C19B1AD1D0CFBE8BF72D8E1", + new String[]{"bridge-descriptors/2016/09/statuses/20/" + + "20160920-063816-1D8F3A91C37C5D1C4C19B1AD1D0CFBE8BF72D8E1"}, "20160920-063816-1D8F3A91C37C5D1C4C19B1AD1D0CFBE8BF72D8E1", Integer.valueOf(1), Integer.valueOf(1)} @@ -120,7 +187,7 @@ public class SyncPersistenceTest { } private String expectedRecentDir; - private String expectedOutputDir; + private String[] expectedOutputDir; private int outCount; private int recentCount; private String filename; @@ -131,7 +198,7 @@ public class SyncPersistenceTest { private Configuration conf = new Configuration(); /** This constructor receives the above defined data for each run. */ - public SyncPersistenceTest(String subRecent, String subOutput, String fn, + public SyncPersistenceTest(String subRecent, String[] subOutput, String fn, int recentCount, int outCount) { this.expectedRecentDir = subRecent; this.expectedOutputDir = subOutput; @@ -173,12 +240,16 @@ public class SyncPersistenceTest { List<File> recentList = new ArrayList<>(); List<File> outputList = new ArrayList<>(); Files.walkFileTree(output.toPath(), new FileCollector(outputList)); - String dataUsed = "data used: " + expectedOutputDir + ", " + filename + String dataUsed = "data used: " + expectedOutputDir[0] + ", " + filename + ", resulting list: "; assertEquals(dataUsed + outputList, outCount, outputList.size()); - assertEquals(dataUsed + outputList, - output.toString() + "/" + expectedOutputDir, - outputList.get(0).toString()); + for (String exp : expectedOutputDir) { + File expFile = new File(output.toString(), exp); + assertTrue(dataUsed + outputList + "\nfollowing file missing:" + expFile, + outputList.remove(expFile)); + } + assertTrue("output list should be empty now, but " + outputList, + outputList.isEmpty()); } @Test() |
