Source code: com/puppycrawl/tools/checkstyle/api/DetailASTTest.java
1 package com.puppycrawl.tools.checkstyle.api;
2
3 import junit.framework.TestCase;
4
5 /**
6 * TestCase to check DetailAST.
7 * @author Oliver Burn
8 */
9 public class DetailASTTest extends TestCase {
10
11 public void testGetChildCount() {
12 final DetailAST root = new DetailAST();
13 final DetailAST firstLevelA = new DetailAST();
14 final DetailAST firstLevelB = new DetailAST();
15 final DetailAST secondLevelA = new DetailAST();
16
17 root.setFirstChild(firstLevelA);
18
19 firstLevelA.setParent(root);
20 firstLevelA.setFirstChild(secondLevelA);
21 firstLevelA.setNextSibling(firstLevelB);
22
23 firstLevelB.setParent(root);
24
25 secondLevelA.setParent(firstLevelA);
26
27 assertEquals(0, secondLevelA.getChildCount());
28 assertEquals(0, firstLevelB.getChildCount());
29 assertEquals(1, firstLevelA.getChildCount());
30 assertEquals(2, root.getChildCount());
31 assertEquals(2, root.getChildCount());
32
33 assertNull(root.getPreviousSibling());
34 assertNull(firstLevelA.getPreviousSibling());
35 assertNull(secondLevelA.getPreviousSibling());
36 assertEquals(firstLevelA, firstLevelB.getPreviousSibling());
37 }
38 }