1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.krad.demo.uif.library.collections;
17
18 import org.junit.Test;
19
20 import org.kuali.rice.testtools.selenium.WebDriverLegacyITBase;
21
22
23
24
25 public class DemoCollectionFeaturesRowDetailsAft extends WebDriverLegacyITBase {
26
27
28
29
30 public static final String BOOKMARK_URL = "/kr-krad/kradsampleapp?viewId=Demo-TableLayoutDetailsView&methodToCall=start";
31
32 @Override
33 protected String getBookmarkUrl() {
34 return BOOKMARK_URL;
35 }
36
37 @Override
38 protected void navigate() throws Exception {
39 waitAndClickById("Demo-LibraryLink", "");
40 waitAndClickByLinkText("Collection Features");
41 waitAndClickByLinkText("Row Details");
42 }
43
44 protected void testCollectionFeaturesRowDetails() throws Exception {
45 if(isElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section1']/div/table/tbody/tr[@class='detailsRow']")) {
46 fail("Row Details Present");
47 }
48 waitAndClickButtonByText("Open/Close Row Details");
49 assertElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section1']/div/table/tbody/tr[@class='detailsRow']");
50 waitAndClickButtonByText("Open/Close Row Details");
51 if(isElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section1']/div/table/tbody/tr[@class='detailsRow']")) {
52 fail("Row Details Present");
53 }
54 waitAndClickButtonByText("Open/Close Row Details");
55 }
56
57 protected void testCollectionFeaturesRowDetailsAjaxRetrival() throws Exception {
58 selectByName("exampleShown","Ajax Retrieval");
59 if(isElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Example2']/div[@class='uif-verticalBoxLayout clearfix']/div/div[@class='dataTables_wrapper']/table/tbody/tr[@class='detailsRow']")) {
60 fail("Row Details Present");
61 }
62 waitAndClickByXpath("//a[@id='Demo-TableLayoutDetails-Section2_detLink_line0']");
63 assertElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Example2']/div[@class='uif-verticalBoxLayout clearfix']/div/div[@class='dataTables_wrapper']/table/tbody/tr[@class='detailsRow']");
64 waitAndClickByXpath("//a[@id='Demo-TableLayoutDetails-Section2_detLink_line0']");
65 if(isElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Example2']/div[@class='uif-verticalBoxLayout clearfix']/div/div[@class='dataTables_wrapper']/table/tbody/tr[@class='detailsRow']")) {
66 fail("Row Details Present");
67 }
68 }
69
70 protected void testCollectionFeaturesRowDetailsTableSubCollection() throws Exception {
71 selectByName("exampleShown","W/ Table SubCollection");
72 if(isElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section3']/div/table/tbody/tr[@class='detailsRow']")) {
73 fail("Row Details Present");
74 }
75 waitAndClickByXpath("//a[@id='Demo-TableLayoutDetails-Section3_detLink_line0']");
76 assertElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section3']/div/table/tbody/tr[@class='detailsRow']/td/div/section/div/div/table");
77 waitAndClickByXpath("//a[@id='Demo-TableLayoutDetails-Section3_detLink_line0']");
78 if(isElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section3']/div/table/tbody/tr[@class='detailsRow']/td/div/section/div/div/table")) {
79 fail("Row Details Present");
80 }
81 waitAndClickByXpath("//a[@id='Demo-TableLayoutDetails-Section3_detLink_line0']");
82 }
83
84 protected void testCollectionFeaturesRowDetailsStackedSubCollection() throws Exception {
85 selectByName("exampleShown","W/ Stacked SubCollection");
86 if(isElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section4']/div/table/tbody/tr[@class='detailsRow']")) {
87 fail("Row Details Present");
88 }
89 waitAndClickByXpath("//a[@id='Demo-TableLayoutDetails-Section4_detLink_line0']");
90 waitForElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section4']/div/table/tbody/tr[@class='detailsRow']/td/div/div[2]/div[2]/table");
91 waitAndClickByXpath("//a[@id='Demo-TableLayoutDetails-Section4_detLink_line0']");
92 if(isElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section4']/div/table/tbody/tr[@class='detailsRow']")) {
93 fail("Row Details Present");
94 }
95 waitAndClickByXpath("//a[@id='Demo-TableLayoutDetails-Section4_detLink_line0']");
96 }
97
98 protected void testCollectionFeaturesRowDetailsNestedDetails() throws Exception {
99 selectByName("exampleShown","Nested Details");
100 if(isElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section5']/div/table/tbody/tr[@class='detailsRow']")) {
101 fail("Row Details Present");
102 }
103 waitAndClickByXpath("//a[@id='Demo-TableLayoutDetails-Section5_detLink_line0']");
104 assertElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section5']/div/table/tbody/tr[@class='detailsRow']/td/div/section/div/table/tbody/tr/td/div/fieldset/div/a");
105 waitAndClickByXpath("//a[@id='Demo-TableLayoutDetails-Section5_detLink_line0']");
106 if(isElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section5']/div/table/tbody/tr[@class='detailsRow']/td/div/section/div/table")) {
107 fail("Row Details Present");
108 }
109 waitAndClickByXpath("//a[@id='Demo-TableLayoutDetails-Section5_detLink_line0']");
110 }
111
112 protected void testCollectionFeaturesRowDetailsOpenedDetails() throws Exception {
113 selectByName("exampleShown","Opened Details");
114 assertElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section6']/div/table/tbody/tr[@class='detailsRow']");
115 waitAndClickByXpath("//a[@id='Demo-TableLayoutDetails-Section6_detLink_add']");
116 assertElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section6']/div/table/tbody/tr[@class='detailsRow']/td");
117 waitAndClickByXpath("//div[@id='Demo-TableLayoutDetails-Section6']/button");
118 if(isElementPresentByXpath("//div[@id='Demo-TableLayoutDetails-Section6']/div/table/tbody/tr[@class='detailsRow']/td")) {
119 fail("Row Details Present");
120 }
121 }
122
123 @Test
124 public void testCollectionFeaturesRowDetailsBookmark() throws Exception {
125 testCollectionFeaturesRowDetails();
126
127 testCollectionFeaturesRowDetailsTableSubCollection();
128 testCollectionFeaturesRowDetailsStackedSubCollection();
129 testCollectionFeaturesRowDetailsNestedDetails();
130 testCollectionFeaturesRowDetailsOpenedDetails();
131 passed();
132 }
133
134 @Test
135 public void testCollectionFeaturesRowDetailsNav() throws Exception {
136 testCollectionFeaturesRowDetails();
137
138 testCollectionFeaturesRowDetailsTableSubCollection();
139 testCollectionFeaturesRowDetailsStackedSubCollection();
140 testCollectionFeaturesRowDetailsNestedDetails();
141 testCollectionFeaturesRowDetailsOpenedDetails();
142 passed();
143 }
144 }