diff --git a/mozilla/java/dist/mcp-test/src/test/java/cardemo/CarDemoTest.java b/mozilla/java/dist/mcp-test/src/test/java/cardemo/CarDemoTest.java index 6e9228aa5f1..3728e80c52d 100755 --- a/mozilla/java/dist/mcp-test/src/test/java/cardemo/CarDemoTest.java +++ b/mozilla/java/dist/mcp-test/src/test/java/cardemo/CarDemoTest.java @@ -1,5 +1,5 @@ /* - * $Id: CarDemoTest.java,v 1.6 2007-03-09 04:34:23 edburns%acm.org Exp $ + * $Id: CarDemoTest.java,v 1.7 2007-03-15 00:33:10 edburns%acm.org Exp $ */ /* @@ -32,6 +32,8 @@ import org.mozilla.mcp.AjaxListener; import org.mozilla.mcp.MCP; import org.mozilla.webclient.WebclientTestCase; import org.w3c.dom.Element; +import org.w3c.dom.Node; +import org.w3c.dom.Document; /** * @@ -61,7 +63,8 @@ public class CarDemoTest extends WebclientTestCase { enum TestFeature { RECEIVED_END_AJAX_EVENT, HAS_MAP, - HAS_VALID_PARTIAL_RESPONSE, + HAS_VALID_RESPONSE_TEXT, + HAS_VALID_RESPONSE_XML, HAS_VALID_READYSTATE, STOP_WAITING } @@ -75,13 +78,39 @@ public class CarDemoTest extends WebclientTestCase { if (null != eventMap) { bitSet.flip(TestFeature.HAS_MAP.ordinal()); } + // Make some assertions about the response text String responseText = (String) eventMap.get("responseText"); if (null != responseText) { if (-1 != responseText.indexOf("") && -1 != responseText.indexOf("")) { - bitSet.flip(TestFeature.HAS_VALID_PARTIAL_RESPONSE.ordinal()); + bitSet.flip(TestFeature.HAS_VALID_RESPONSE_TEXT.ordinal()); } } + Document responseXML = (Document) + eventMap.get("responseXML"); + Element rootElement = null, element = null; + Node node = null; + String tagName = null; + try { + rootElement = responseXML.getDocumentElement(); + tagName = rootElement.getTagName(); + if (tagName.equals("partial-response")) { + element = (Element) rootElement.getFirstChild(); + tagName = element.getTagName(); + if (tagName.equals("components")) { + element = (Element) rootElement.getLastChild(); + tagName = element.getTagName(); + if (tagName.equals("state")) { + bitSet.flip(TestFeature. + HAS_VALID_RESPONSE_XML.ordinal()); + } + } + } + } + catch (Throwable t) { + + } + String readyState = (String) eventMap.get("readyState"); bitSet.set(TestFeature.HAS_VALID_READYSTATE.ordinal(), null != readyState && readyState.equals("4")); @@ -117,7 +146,8 @@ public class CarDemoTest extends WebclientTestCase { // assert that the ajax transaction succeeded assertTrue(bitSet.get(TestFeature.RECEIVED_END_AJAX_EVENT.ordinal())); assertTrue(bitSet.get(TestFeature.HAS_MAP.ordinal())); - assertTrue(bitSet.get(TestFeature.HAS_VALID_PARTIAL_RESPONSE.ordinal())); + assertTrue(bitSet.get(TestFeature.HAS_VALID_RESPONSE_TEXT.ordinal())); + assertTrue(bitSet.get(TestFeature.HAS_VALID_RESPONSE_XML.ordinal())); assertTrue(bitSet.get(TestFeature.HAS_VALID_READYSTATE.ordinal())); bitSet.clear(); diff --git a/mozilla/java/webclient/classes_spec/org/mozilla/mcp/package.html b/mozilla/java/webclient/classes_spec/org/mozilla/mcp/package.html index e351479769c..b0e06745a72 100755 --- a/mozilla/java/webclient/classes_spec/org/mozilla/mcp/package.html +++ b/mozilla/java/webclient/classes_spec/org/mozilla/mcp/package.html @@ -110,40 +110,48 @@ href="http://developers.sun.com/web/swdp/index.jsp">Project Dynamic Faces for Ajax.

-
  1. enum TestFeature {
  2. -
  3.     RECEIVED_END_AJAX_EVENT,
  4. -
  5.     HAS_MAP,
  6. -
  7.     HAS_VALID_PARTIAL_RESPONSE,
  8. -
  9.     HAS_VALID_READYSTATE,
  10. -
  11.     STOP_WAITING
  12. -
  13. }
  14. -
  15.  
  16. -
  17. public void testCardemo() throws Exception {
  18. -
  19.    
  20. -
  21.     MCP mcp = new MCP();
  22. -
  23.     try {
  24. -
  25.         mcp.setAppData(getBrowserBinDir());
  26. -
  27.     }
  28. -
  29.     catch (Exception e) {
  30. -
  31.         fail();
  32. -
  33.     }
  34. -
  35.    
  36. -
  37.     mcp.getRealizedVisibleBrowserWindow();
  38. -
  39.     final BitSet bitSet = new BitSet();
  40. -
  41.     AjaxListener listener = new AjaxListener() {
  42. -
  43.       public void endAjax(Map eventMap) {
  44. -
  45.           bitSet.flip(TestFeature.RECEIVED_END_AJAX_EVENT.ordinal());
  46. -
  47.           if (null != eventMap) {
  48. -
  49.               bitSet.flip(TestFeature.HAS_MAP.ordinal());
  50. -
  51.           }
  52. +
    1. public void testCardemo() throws Exception {
    2. +
    3.     mcp.getRealizedVisibleBrowserWindow();
    4. +
    5.     final BitSet bitSet = new BitSet();
    6. +
    7.     AjaxListener listener = new AjaxListener() {
    8. +
    9.       public void endAjax(Map eventMap) {
    10. +
    11.           bitSet.flip(TestFeature.RECEIVED_END_AJAX_EVENT.ordinal());
    12. +
    13.           if (null != eventMap) {
    14. +
    15.               bitSet.flip(TestFeature.HAS_MAP.ordinal());
    16. +
    17.           }
    18. +
    19.           // Make some assertions about the response text
    20.           String responseText = (String) eventMap.get("responseText");
    21.           if (null != responseText) {
    22.               if (-1 != responseText.indexOf("<partial-response>") &&
    23.                   -1 != responseText.indexOf("</partial-response>")) {
    24. -
    25.                   bitSet.flip(TestFeature.
    26. -
    27.                     HAS_VALID_PARTIAL_RESPONSE.ordinal());
    28. +
    29.                 bitSet.flip(TestFeature.HAS_VALID_RESPONSE_TEXT.ordinal());
    30. +
    31.               }
    32. +
    33.           }
    34. +
    35.           Document responseXML = (Document)
    36. +
    37.               eventMap.get("responseXML");
    38. +
    39.           Element rootElement = null, element = null;
    40. +
    41.           Node node = null;
    42. +
    43.           String tagName = null;
    44. +
    45.           try {
    46. +
    47.               rootElement = responseXML.getDocumentElement();
    48. +
    49.               tagName = rootElement.getTagName();
    50. +
    51.               if (tagName.equals("partial-response")) {
    52. +
    53.                   element = (Element) rootElement.getFirstChild();
    54. +
    55.                   tagName = element.getTagName();
    56. +
    57.                   if (tagName.equals("components")) {
    58. +
    59.                       element = (Element) rootElement.getLastChild();
    60. +
    61.                       tagName = element.getTagName();
    62. +
    63.                       if (tagName.equals("state")) {
    64. +
    65.                           bitSet.flip(TestFeature.
    66. +
    67.                                       HAS_VALID_RESPONSE_XML.ordinal());
    68. +
    69.                       }
    70. +
    71.                   }
    72.               }
    73.           }
    74. +
    75.           catch (Throwable t) {
    76. +
    77.               
    78. +
    79.           }
    80. +
    81.           
    82.           String readyState = (String) eventMap.get("readyState");
    83.           bitSet.set(TestFeature.HAS_VALID_READYSTATE.ordinal(),
    84.                      null != readyState && readyState.equals("4"));
    85. @@ -179,21 +187,22 @@ Faces for Ajax.

    86.     // assert that the ajax transaction succeeded
    87.     assertTrue(bitSet.get(TestFeature.RECEIVED_END_AJAX_EVENT.ordinal()));
    88.     assertTrue(bitSet.get(TestFeature.HAS_MAP.ordinal()));
    89. -
    90.     assertTrue(bitSet.get(TestFeature.HAS_VALID_PARTIAL_RESPONSE.ordinal()));
    91. -
    92.     assertTrue(bitSet.get(TestFeature.HAS_VALID_READYSTATE.ordinal()));
    93. -
    94.     bitSet.clear();
    95. +
    96.     assertTrue(bitSet.get(TestFeature.HAS_VALID_RESPONSE_TEXT.ordinal()));
    97. +
    98.     assertTrue(bitSet.get(TestFeature.HAS_VALID_RESPONSE_XML.ordinal()));
    99. +
    100.     assertTrue(bitSet.get(TestFeature.HAS_VALID_READYSTATE.ordinal()));
    101. +
    102.     bitSet.clear();
    103. +
    104.    
    105. +
    106.     // Sample the Basis-Preis and Ihr-Preis after the ajax transaction
    107. +
    108.     pricePanel = mcp.findElement("j_id_id10:zone1");
    109. +
    110.     assertNotNull(pricePanel);
    111. +
    112.     pricePanelText = pricePanel.getTextContent();
    113.    
    114. -
    115.     // Sample the Basis-Preis and Ihr-Preis after the ajax transaction
    116. -
    117.     pricePanel = mcp.findElement("j_id_id10:zone1");
    118. -
    119.     assertNotNull(pricePanel);
    120. -
    121.     pricePanelText = pricePanel.getTextContent();
    122. -
    123.    
    124. -
    125.     assertNotNull(pricePanelText);
    126. -
    127.     assertTrue(pricePanelText.matches("(?s).*Basis-Preis\\s*15700.*"));
    128. -
    129.     assertTrue(pricePanelText.matches("(?s).*Ihr Preis\\s*16600.*"));
    130. -
    131.    
    132. -
    133.     mcp.deleteBrowserControl();
    134. -
    135. }
+
  •     assertNotNull(pricePanelText);
  • +
  •     assertTrue(pricePanelText.matches("(?s).*Basis-Preis\\s*15700.*"));
  • +
  •     assertTrue(pricePanelText.matches("(?s).*Ihr Preis\\s*16600.*"));
  • +
  •    
  • +
  •     mcp.deleteBrowserControl();
  • +
  • }