10 |
10 |
|
11 |
11 |
import java.io.IOException;
|
12 |
12 |
import java.net.MalformedURLException;
|
13 |
|
import java.util.List;
|
14 |
13 |
import java.util.UUID;
|
15 |
|
import java.util.stream.Collectors;
|
16 |
14 |
|
17 |
15 |
import org.apache.log4j.Level;
|
18 |
16 |
import org.apache.log4j.Logger;
|
19 |
17 |
import org.junit.Before;
|
20 |
18 |
import org.junit.Test;
|
21 |
19 |
import org.openqa.selenium.By;
|
|
20 |
import org.openqa.selenium.WebElement;
|
22 |
21 |
|
23 |
22 |
import eu.etaxonomy.dataportal.DataPortalSite;
|
24 |
23 |
import eu.etaxonomy.dataportal.DrupalVars;
|
... | ... | |
46 |
45 |
|
47 |
46 |
private TaxonPage p;
|
48 |
47 |
|
49 |
|
List<DerivedUnitTree> duTrees;
|
|
48 |
DerivedUnitTree duTree;
|
50 |
49 |
|
51 |
50 |
@Before
|
52 |
51 |
public void switchToView() throws IOException, InterruptedException, DrushExecutionFailure {
|
... | ... | |
59 |
58 |
// must be called after setting the drupal vars
|
60 |
59 |
public void loadPage() throws MalformedURLException {
|
61 |
60 |
p = new TaxonPage(driver, getContext(), glenodinium_apiculatum_t, "specimens");
|
62 |
|
duTrees = p.getDataPortalContent().getElement().findElements(By.cssSelector(".derived-unit-tree")).stream()
|
63 |
|
.map(el -> DerivedUnitTree.from(el))
|
64 |
|
.collect(Collectors.toList());
|
|
61 |
WebElement treeElement = p.getDataPortalContent().getElement().findElement(By.cssSelector(".item-tree"));
|
|
62 |
duTree = DerivedUnitTree.from(treeElement);
|
65 |
63 |
}
|
66 |
64 |
|
67 |
65 |
@Test
|
68 |
66 |
public void testPage() {
|
69 |
67 |
|
70 |
|
assertEquals(3, duTrees.size());
|
71 |
|
BaseElement rootNodeHeader1 = duTrees.get(0).getRootNode().getHeader();
|
|
68 |
assertEquals(3, duTree.getRootNodes().size());
|
|
69 |
BaseElement rootNodeHeader1 = duTree.getRootNodes().get(0).getHeader();
|
72 |
70 |
assertEquals("(B SP-99999).", rootNodeHeader1.getText());
|
73 |
|
BaseElement rootNodeHeader2 = duTrees.get(1).getRootNode().getHeader();
|
|
71 |
BaseElement rootNodeHeader2 = duTree.getRootNodes().get(1).getHeader();
|
74 |
72 |
assertEquals("Germany, Berlin, 2 Apr 1835.", rootNodeHeader2.getText());
|
75 |
|
BaseElement rootNodeHeader3 = duTrees.get(2).getRootNode().getHeader();
|
|
73 |
BaseElement rootNodeHeader3 = duTree.getRootNodes().get(2).getHeader();
|
76 |
74 |
assertEquals("Germany, Berlin, alt. 165 m, 52°31'1.2\"N, 13°21'E (WGS84), 28 Mar 2016, Ehrenberg D047.", rootNodeHeader3.getText());
|
77 |
75 |
}
|
78 |
76 |
|
... | ... | |
80 |
78 |
@Test
|
81 |
79 |
public void testDerivationTree1() {
|
82 |
80 |
|
83 |
|
DerivedUnitTree tree1 = duTrees.get(0);
|
84 |
|
DerivedUnitTreeNode rootNode = tree1.getRootNode();
|
|
81 |
|
|
82 |
DerivedUnitTreeNode rootNode = duTree.getRootNodes().get(0);
|
85 |
83 |
DerivedUnitTreeNode subNode1 = rootNode.getSubNodes().get(0);
|
86 |
84 |
DerivedUnitTreeNode subNode2 = rootNode.getSubNodes().get(1);
|
87 |
85 |
DerivedUnitTreeNode subNode3 = rootNode.getSubNodes().get(2);
|
88 |
86 |
|
89 |
87 |
assertEquals("(B SP-99999).", rootNode.getHeader().getText());
|
|
88 |
assertFalse("sub node 1 initially invisible", subNode1.getElement().isDisplayed());
|
|
89 |
rootNode.getTreeNodeSymbol().click();
|
|
90 |
assertTrue("sub node 1 visible after click", subNode1.getElement().isDisplayed());
|
90 |
91 |
assertEquals("(B B-923845).", subNode1.getHeader().getText());
|
91 |
92 |
assertEquals("(B DNA-9098080).", subNode2.getHeader().getText());
|
92 |
93 |
assertEquals("B_SP-99999.png", subNode3.getHeader().getText());
|
... | ... | |
113 |
114 |
@Test
|
114 |
115 |
public void testDerivationTree2() {
|
115 |
116 |
|
116 |
|
DerivedUnitTree tree2 = duTrees.get(1);
|
117 |
|
DerivedUnitTreeNode rootNode = tree2.getRootNode();
|
|
117 |
DerivedUnitTreeNode rootNode = duTree.getRootNodes().get(1);
|
118 |
118 |
DerivedUnitTreeNode subNode1 = rootNode.getSubNodes().get(0);
|
119 |
119 |
|
120 |
120 |
assertEquals("Germany, Berlin, 2 Apr 1835.", rootNode.getHeader().getText());
|
|
121 |
assertFalse("sub node 1 initially invisible", subNode1.getElement().isDisplayed());
|
|
122 |
rootNode.getTreeNodeSymbol().click();
|
|
123 |
assertTrue("sub node 1 visible after click", subNode1.getElement().isDisplayed());
|
121 |
124 |
assertEquals("BHUPM 671 (ECdraw671.jpg)", subNode1.getHeader().getText());
|
122 |
125 |
|
123 |
126 |
// ---- root node
|
... | ... | |
158 |
161 |
@Test
|
159 |
162 |
public void testDerivationTree3() {
|
160 |
163 |
|
161 |
|
DerivedUnitTree tree3 = duTrees.get(2);
|
162 |
|
DerivedUnitTreeNode rootNode = tree3.getRootNode();
|
|
164 |
DerivedUnitTreeNode rootNode = duTree.getRootNodes().get(2);
|
163 |
165 |
DerivedUnitTreeNode subNode1 = rootNode.getSubNodes().get(0);
|
164 |
166 |
DerivedUnitTreeNode subNode1_1 = subNode1.getSubNodes().get(0);
|
165 |
167 |
DerivedUnitTreeNode subNode1_2 = subNode1.getSubNodes().get(1);
|
166 |
168 |
DerivedUnitTreeNode subNode2 = rootNode.getSubNodes().get(1);
|
167 |
169 |
|
168 |
170 |
assertEquals("Germany, Berlin, alt. 165 m, 52°31'1.2\"N, 13°21'E (WGS84), 28 Mar 2016, Ehrenberg D047.", rootNode.getHeader().getText());
|
|
171 |
|
|
172 |
assertFalse("sub node 1 initially invisible", subNode1.getElement().isDisplayed());
|
|
173 |
rootNode.getTreeNodeSymbol().click();
|
|
174 |
assertTrue("sub node 1 visible after click", subNode1.getElement().isDisplayed());
|
169 |
175 |
assertEquals("Germany, Berlin, alt. 165 m, 52°31'1.2\"N, 13°21'E (WGS84), 28 Mar 2016, Ehrenberg D047; D. Veloper (CEDiT 2017E68).", subNode1.getHeader().getText());
|
|
176 |
|
|
177 |
assertFalse("sub node 1 initially invisible", subNode1_1.getElement().isDisplayed());
|
|
178 |
subNode1.getTreeNodeSymbol().click();
|
|
179 |
assertTrue("sub node 1 visible after click", subNode1_1.getElement().isDisplayed());
|
170 |
180 |
assertEquals("B IMG 99999 (?fn%3dIMG%2099999.jpg%26mo%3dfile)", subNode1_1.getHeader().getText());
|
171 |
181 |
assertEquals("XKCD MASKS 2X (Masks)", subNode1_2.getHeader().getText());
|
172 |
182 |
assertEquals("Germany, Berlin, alt. 165 m, 52°31'1.2\"N, 13°21'E (WGS84), 28 Mar 2016, Ehrenberg D047 (M M-0289351).", subNode2.getHeader().getText());
|
ref #7599 derivate tree with collapsible items - adapting tests