/* B80_ZK_2969Test.java Purpose: Description: History: Tue, Jan 19, 2016 3:45:28 PM, Created by Christopher Copyright (C) 2016 Potix Corporation. All Rights Reserved. This program is distributed under LGPL Version 2.1 in the hope that it will be useful, but WITHOUT ANY WARRANTY. */ package org.zkoss.zktest.zats.test2; import java.util.Iterator; import org.junit.Test; import org.zkoss.zktest.zats.WebDriverTestCase; import org.zkoss.zktest.zats.ztl.JQuery; import junit.framework.Assert; /** * * @author Christopher */ public class B80_ZK_2969Test extends WebDriverTestCase { @Test public void testNonPaging() { connect(); // check to select all and compare messages click(jq(".z-listheader-checkable").eq(0)); waitResponse(true); String msg = getZKLog(); String onSelectMsg = msg.substring(msg.indexOf(":") + 1, msg.indexOf("onCheckSelectAll:")).trim(); String onCheckSelectAllMsg = msg.substring(msg.lastIndexOf(":") + 1).trim(); Assert.assertEquals(onSelectMsg, onCheckSelectAllMsg); // clears the message closeZKLog(); // check again to un-select all and compare messages click(jq(".z-listheader-checkable").eq(0)); waitResponse(true); msg = getZKLog(); onSelectMsg = msg.substring(msg.indexOf(":") + 1, msg.indexOf("onCheckSelectAll:")).trim(); onCheckSelectAllMsg = msg.substring(msg.lastIndexOf(":") + 1).trim(); Assert.assertEquals(onSelectMsg, onCheckSelectAllMsg); // check to select all and un-select item 2, then compare selected items from both listbox click(jq(".z-listheader-checkable").eq(0)); click(jq(".z-listbox").eq(0).find(".z-listitem-checkable").eq(1)); waitResponse(true); Iterator<JQuery> iterNonPaging = jq(".z-listbox").eq(0).find(".z-listitem-selected").iterator(); Iterator<JQuery> iterPaging = jq(".z-listbox").eq(1).find(".z-listitem-selected").iterator(); for (JQuery np = iterNonPaging.next() ; iterNonPaging.hasNext(); np = iterNonPaging.next()) { if (!iterPaging.hasNext()) { click(jq(".z-paging-button.z-paging-next")); waitResponse(true); iterPaging = jq(".z-listbox").eq(1).find(".z-listitem-selected").iterator(); } JQuery p = iterPaging.next(); Assert.assertEquals(np.text(), p.text()); } } @Test public void testPaging() { connect(); // check to select all and compare messages click(jq(".z-listheader-checkable").eq(1)); waitResponse(true); String msg = getZKLog(); String onSelectMsg = msg.substring(msg.indexOf(":") + 1, msg.indexOf("onCheckSelectAll:")).trim(); String onCheckSelectAllMsg = msg.substring(msg.lastIndexOf(":") + 1).trim(); Assert.assertEquals(onSelectMsg, onCheckSelectAllMsg); // clears the message closeZKLog(); // check again to un-select all and compare messages click(jq(".z-listheader-checkable").eq(1)); waitResponse(true); msg = getZKLog(); onSelectMsg = msg.substring(msg.indexOf(":") + 1, msg.indexOf("onCheckSelectAll:")).trim(); onCheckSelectAllMsg = msg.substring(msg.lastIndexOf(":") + 1).trim(); Assert.assertEquals(onSelectMsg, onCheckSelectAllMsg); // check to select all and un-select item 2, then compare selected items from both listbox click(jq(".z-listheader-checkable").eq(1)); click(jq(".z-listbox").eq(1).find(".z-listitem-checkable").eq(1)); waitResponse(true); Iterator<JQuery> iterNonPaging = jq(".z-listbox").eq(0).find(".z-listitem-selected").iterator(); Iterator<JQuery> iterPaging = jq(".z-listbox").eq(1).find(".z-listitem-selected").iterator(); for (JQuery np = iterNonPaging.next() ; iterNonPaging.hasNext(); np = iterNonPaging.next()) { if (!iterPaging.hasNext()) { click(jq(".z-paging-button.z-paging-next")); waitResponse(true); iterPaging = jq(".z-listbox").eq(1).find(".z-listitem-selected").iterator(); } JQuery p = iterPaging.next(); Assert.assertEquals(np.text(), p.text()); } } }