package org.zkoss.zktest.zats.bind.issue;
import static org.junit.Assert.*;
import java.util.List;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;
import org.zkoss.zats.mimic.ComponentAgent;
import org.zkoss.zats.mimic.DesktopAgent;
import org.zkoss.zats.mimic.Zats;
import org.zkoss.zktest.zats.ZATSTestCase;
import org.zkoss.zul.Listcell;
public class B00603Test extends ZATSTestCase {
@Test
public void test() {
DesktopAgent desktop = connect();
ComponentAgent outsidebox = desktop.query("#outsidebox");
assertEquals(4, outsidebox.getChildren().size());
String[] itemLabel = {"A", "B", "C"};
String[] optionLabel = {"A", "B"};
ComponentAgent outeritem = outsidebox.getChild(0); //don't use queryAll("listitem"), there are many listitems
for (int i = 0; i < 3; i++) {
outeritem = outsidebox.getChild(i + 1);
String outerl = itemLabel[i];
ComponentAgent cell = outeritem.getChild(0);
assertEquals(outerl, cell.as(Listcell.class).getLabel());
ComponentAgent innerbox = outeritem.query("listbox");
assertTrue(innerbox != null);
List<ComponentAgent> inneritems = innerbox.queryAll("listitem");
assertEquals(2, inneritems.size());
for(int j = 0; j < 2; j++) {
String innerl = optionLabel[j];
cell = inneritems.get(j).getChild(0);
assertEquals(outerl + " " + innerl, cell.as(Listcell.class).getLabel());
cell = inneritems.get(j).getChild(1);
assertEquals(outerl + " " + innerl + innerl, cell.as(Listcell.class).getLabel());
}
}
}
}