001 /* 002 * Copyright 2006-2012 The Kuali Foundation 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 017 package edu.samplu.krad.compview; 018 019 import com.thoughtworks.selenium.DefaultSelenium; 020 import org.junit.After; 021 import org.junit.Before; 022 import org.junit.Test; 023 024 import static junit.framework.Assert.assertTrue; 025 import static org.junit.Assert.assertEquals; 026 import static org.junit.Assert.assertNotSame; 027 import static org.junit.Assert.fail; 028 029 /** 030 * tests that the parent line variable is available in a sub collection 031 * 032 * <p>configuration done in /edu/sampleu/demo/kitchensink/UifComponentsViewP7.xml on bean id="subCollection1"</p> 033 * 034 * @author Kuali Rice Team (rice.collab@kuali.org) 035 */ 036 public class ParentLineIT { 037 private DefaultSelenium selenium; 038 039 @Before 040 public void setUp() throws Exception { 041 selenium = new DefaultSelenium("localhost", 4444, "*chrome", System.getProperty("remote.public.url"));//"http://localhost:8080/" 042 selenium.start(); 043 } 044 045 @Test 046 /** 047 * tests that the size of a sub collection is correctly displayed using the parentLine el variable 048 */ 049 public void testSubCollectionSize() throws Exception { 050 selenium.open("/kr-dev/portal.do"); 051 selenium.type("name=__login_user", "admin"); 052 selenium.click("css=input[type=\"submit\"]"); 053 selenium.waitForPageToLoad("30000"); 054 selenium.click("link=KRAD"); 055 selenium.waitForPageToLoad("30000"); 056 selenium.click("link=Uif Components (Kitchen Sink)"); 057 selenium.waitForPageToLoad("30000"); 058 selenium.selectFrame("iframeportlet"); 059 // click on collections page link 060 selenium.click("id=u961"); 061 // Thread.sleep(30000); 062 // wait for collections page to load by checking the presence of a sub collection line item 063 for (int second = 0;; second++) { 064 if (second >= 60) fail("timeout"); 065 try { if (selenium.isElementPresent("id=u1089_line0_line0_control")) break; } catch (Exception e) {} 066 Thread.sleep(1000); 067 } 068 // verify that sub collection sizes are displayed as expected 069 assertEquals("SubCollection - (3 lines)", selenium.getText("id=u1030_line0")); 070 assertEquals("SubCollection - (2 lines)", selenium.getText("id=u1030_line1")); 071 } 072 073 @After 074 public void tearDown() throws Exception { 075 selenium.stop(); 076 } 077 }