Mercurial > hg4j
comparison test/org/tmatesoft/hg/test/TestRevisionSet.java @ 648:690e71d29bf6
Introduced RevisionSet to ease update of phase roots on push
author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
---|---|
date | Tue, 25 Jun 2013 20:48:37 +0200 |
parents | |
children | 6e98d34eaca8 |
comparison
equal
deleted
inserted
replaced
647:c75297c17867 | 648:690e71d29bf6 |
---|---|
1 /* | |
2 * Copyright (c) 2013 TMate Software Ltd | |
3 * | |
4 * This program is free software; you can redistribute it and/or modify | |
5 * it under the terms of the GNU General Public License as published by | |
6 * the Free Software Foundation; version 2 of the License. | |
7 * | |
8 * This program is distributed in the hope that it will be useful, | |
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
11 * GNU General Public License for more details. | |
12 * | |
13 * For information on how to redistribute this software under | |
14 * the terms of a license other than GNU General Public License | |
15 * contact TMate Software at support@hg4j.com | |
16 */ | |
17 package org.tmatesoft.hg.test; | |
18 | |
19 import java.util.Arrays; | |
20 | |
21 import org.junit.Rule; | |
22 import org.junit.Test; | |
23 import org.tmatesoft.hg.core.Nodeid; | |
24 import org.tmatesoft.hg.internal.RevisionSet; | |
25 | |
26 /** | |
27 * | |
28 * @author Artem Tikhomirov | |
29 * @author TMate Software Ltd. | |
30 */ | |
31 public class TestRevisionSet { | |
32 | |
33 @Rule | |
34 public ErrorCollectorExt errorCollector = new ErrorCollectorExt(); | |
35 | |
36 @Test | |
37 public void testRegularSetOperations() { | |
38 Nodeid n1 = Nodeid.fromAscii("c75297c1786734589175c673db40e8ecaa032b09"); | |
39 Nodeid n2 = Nodeid.fromAscii("3b7d51ed4c65082f9235e3459e282d7ff723aa97"); | |
40 Nodeid n3 = Nodeid.fromAscii("14dac192aa262feb8ff6645a102648498483a188"); | |
41 Nodeid n4 = Nodeid.fromAscii("1deea2f332183c947937f6df988c2c6417efc217"); | |
42 RevisionSet a = f(n1, n2, n3); | |
43 RevisionSet b = f(n3, n4); | |
44 RevisionSet union_ab = f(n1, n2, n3, n4); | |
45 RevisionSet intersect_ab = f(n3); | |
46 RevisionSet subtract_ab = f(n1, n2); | |
47 RevisionSet subtract_ba = f(n4); | |
48 RevisionSet symDiff_ab = f(n1, n2, n4); | |
49 | |
50 errorCollector.assertEquals(union_ab, a.union(b)); | |
51 errorCollector.assertEquals(union_ab, b.union(a)); | |
52 errorCollector.assertEquals(intersect_ab, a.intersect(b)); | |
53 errorCollector.assertEquals(intersect_ab, b.intersect(a)); | |
54 errorCollector.assertEquals(subtract_ab, a.subtract(b)); | |
55 errorCollector.assertEquals(subtract_ba, b.subtract(a)); | |
56 errorCollector.assertEquals(symDiff_ab, a.symmetricDifference(b)); | |
57 errorCollector.assertEquals(symDiff_ab, b.symmetricDifference(a)); | |
58 } | |
59 | |
60 | |
61 private static RevisionSet f(Nodeid... nodes) { | |
62 return new RevisionSet(Arrays.asList(nodes)); | |
63 } | |
64 } |