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.Label; import org.zkoss.zul.Listcell; import org.zkoss.zul.Textbox; public class B00869SerializationTest extends ZATSTestCase { @Test public void test() { DesktopAgent desktop = connect(); ComponentAgent msg = desktop.query("#msg"); ComponentAgent selected = desktop.query("#win #selected"); ComponentAgent listbox = desktop.query("#win #listbox"); ComponentAgent tb1 = desktop.query("#win #tb1"); ComponentAgent save = desktop.query("#win #save"); ComponentAgent serialize = desktop.query("#serialize"); ComponentAgent children = desktop.query("#win #children"); assertEquals("A", selected.as(Label.class).getValue()); assertEquals("A", tb1.as(Textbox.class).getValue()); assertEquals("B", children.queryAll("label").get(1).as(Label.class).getValue()); List<ComponentAgent> items = listbox.queryAll("listitem"); items.get(1).select(); assertEquals("B", selected.as(Label.class).getValue()); assertEquals("B", tb1.as(Textbox.class).getValue()); tb1.type("BX"); save.click(); assertEquals("BX", selected.as(Label.class).getValue()); assertEquals("BX", children.queryAll("label").get(1).as(Label.class).getValue()); assertEquals("BX", items.get(1).queryAll("listcell").get(1).as(Listcell.class).getLabel()); serialize.click(); msg = desktop.query("#msg"); selected = desktop.query("#win #selected"); listbox = desktop.query("#win #listbox"); tb1 = desktop.query("#win #tb1"); save = desktop.query("#win #save"); serialize = desktop.query("#serialize"); children = desktop.query("#win #children"); items = listbox.queryAll("listitem"); assertTrue(msg.as(Label.class).getValue().startsWith("done deserialize:")); items.get(2).select(); assertEquals("C", selected.as(Label.class).getValue()); assertEquals("C", tb1.as(Textbox.class).getValue()); tb1.type("CY"); save.click(); assertEquals("CY", selected.as(Label.class).getValue()); assertEquals("CY", children.queryAll("label").get(2).as(Label.class).getValue()); assertEquals("CY", items.get(2).queryAll("listcell").get(1).as(Listcell.class).getLabel()); } }