01: package simpleorm.simplewebapp.eg.simple;
02:
03: import simpleorm.simplewebapp.eg.simple.WManualCrudPage;
04: import simpleorm.simplewebapp.eg.WAllTests;
05: import simpleorm.simplewebapp.core.WPageStructure;
06: import simpleorm.simplewebapp.core.WButton;
07: import simpleorm.simplewebapp.context.WPageContextTest;
08:
09: import java.util.Map;
10: import java.util.LinkedHashMap;
11:
12: /**
13: * Simple Demonstration of the Unit test infrastructure.
14: * This tests WManualCrudPage independently of the webserver
15: */
16: public class WCrudBeanTest {
17: public static void main(String[] args) throws Exception {
18: unsubmitted();
19: submitted();
20: badId();
21: }
22:
23: static void unsubmitted() throws Exception {
24: Map<String, String> fields = new LinkedHashMap();
25: fields.put("id", "three");
26: WManualCrudPage page = WAllTests.MENUS.simple.manualCrud
27: .newPage();
28: page.setPageContext(new WPageContextTest(page, fields));
29: WPageStructure struct = page.getPageStructure();
30: struct.doMain();
31: WAllTests.assertEquals(page.pagelet.id.getDataName(), "id");
32: WAllTests.assertEquals("Third one row", page.pagelet.name
33: .getText());
34: struct.doFinalize();
35: }
36:
37: static void submitted() throws Exception {
38: Map<String, String> fields = new LinkedHashMap();
39: fields.put("id", "three");
40: fields.put("name", "Tiga");
41: fields.put("count", "101");
42: fields.put(WButton.BUTTONS_NAME, "Update");
43:
44: WManualCrudPage page = WAllTests.MENUS.simple.manualCrud
45: .newPage();
46: page.setPageContext(new WPageContextTest(page, fields));
47: WPageStructure struct = page.getPageStructure();
48: struct.doMain();
49: // page.logPage();
50: struct.doFinalize();
51:
52: WTestRecord row = (WTestRecord) WTestDatabase.db
53: .findRow("three");
54: WAllTests.assertEquals("Tiga", row.getName());
55: }
56:
57: static void badId() throws Exception {
58: Map<String, String> fields = new LinkedHashMap();
59: fields.put("id", "XXX");
60: fields.put("name", "Tiga");
61: fields.put(WButton.BUTTONS_NAME, "Update");
62:
63: WManualCrudPage page = WAllTests.MENUS.simple.manualCrud
64: .newPage();
65: page.setPageContext(new WPageContextTest(page, fields));
66: WPageStructure struct = page.getPageStructure();
67: struct.doMain();
68:
69: page.logPage();
70: WAllTests.assertEquals("count", page.getErrors().get(0)
71: .getFieldName()); // ie. check error was issued
72: struct.doFinalize();
73: }
74:
75: }
|