ZATS ConnectAsIncluded"
Line 4: | Line 4: | ||
− | ZK provides the <javadoc>org.zkoss.zul.Include</javadoc> component allows us to include and reuse ZUL | + | ZK provides the <javadoc>org.zkoss.zul.Include</javadoc> component allows us to include and reuse ZUL pages or others.<ref>For more details, please refer to [[ZK_Developer%27s_Reference/UI_Composing/ZUML/Include]] and [[ZK_Component_Reference/Essential_Components/Include]]</ref> In ZATS Mimic, we can test ZUL pages which are included by outer pages directly; just connect to such ZUL pages through the <tt>Client.connect(String)</tt> method as usual. |
− | = Test Included ZUL | + | = Test Included ZUL Pages with Specific Arguments = |
− | Sometimes, we pass some arguments to included ZUL pages for flexibility purpose, and the arguments can be retrieved from the implicit objects [[ZUML_Reference/EL_Expressions/Implicit_Objects/arg|arg]] | + | Sometimes, we pass some arguments to included ZUL pages for flexibility purpose, and the arguments can be retrieved from the implicit objects [[ZUML_Reference/EL_Expressions/Implicit_Objects/arg|arg]] in such ZUL pages. ZATS Mimic introduces another connecting method <tt>Client.connectAsIncluded(String, Map<String, Object>)</tt> for above case. Following is a typical example of connecting to a included ZUL page with specific arguments: |
'''included.zul''' | '''included.zul''' | ||
Line 25: | Line 25: | ||
args.put("message", "Hello world!"); | args.put("message", "Hello world!"); | ||
Client client = Zats.newClient(); | Client client = Zats.newClient(); | ||
− | DesktopAgent desktop = client.connectAsIncluded(" | + | DesktopAgent desktop = client.connectAsIncluded("/included.zul", args); |
Label msg = desktop.query("#msg").as(Label.class); | Label msg = desktop.query("#msg").as(Label.class); | ||
Assert.assertEquals("Hello world!", msg.getValue()); | Assert.assertEquals("Hello world!", msg.getValue()); | ||
} | } | ||
</source> | </source> | ||
− | * '''Line 12-13''': | + | * '''Line 12-13''': Prepare arguments for included ZUL page. |
− | * '''Line 15''': | + | * '''Line 15''': Connect to included ZUL page with arguments. |
Revision as of 06:22, 5 July 2012
Since 1.1.0
ZK provides the Include component allows us to include and reuse ZUL pages or others.[1] In ZATS Mimic, we can test ZUL pages which are included by outer pages directly; just connect to such ZUL pages through the Client.connect(String) method as usual.
Test Included ZUL Pages with Specific Arguments
Sometimes, we pass some arguments to included ZUL pages for flexibility purpose, and the arguments can be retrieved from the implicit objects arg in such ZUL pages. ZATS Mimic introduces another connecting method Client.connectAsIncluded(String, Map<String, Object>) for above case. Following is a typical example of connecting to a included ZUL page with specific arguments:
included.zul
<zk>
<label id="msg" value="${arg.message }" />
</zk>
- Line 2: The value is retrieved from arguments.
Test.java
@Test
public void test() {
Map<String, Object> args = new HashMap<String, Object>();
args.put("message", "Hello world!");
Client client = Zats.newClient();
DesktopAgent desktop = client.connectAsIncluded("/included.zul", args);
Label msg = desktop.query("#msg").as(Label.class);
Assert.assertEquals("Hello world!", msg.getValue());
}
- Line 12-13: Prepare arguments for included ZUL page.
- Line 15: Connect to included ZUL page with arguments.
Notes
- ↑ For more details, please refer to ZK_Developer's_Reference/UI_Composing/ZUML/Include and ZK_Component_Reference/Essential_Components/Include
Including with Defer Mode
There is no different between testing a normal ZUL or testing a included ZUL directly. We can just use the normal Client.connect(String url) method to connect ZUL.