Author: jasvir Date: Tue Jan 26 08:21:37 2010 New Revision: 903122 URL: http://svn.apache.org/viewvc?rev=903122&view=rev Log: [http://codereview.appspot.com/194041/show] Upgrade caja, fix and add tests
* upgrades Caja version * reverts the xmlnamespaces features in Caja till we switch to CajaHtmlParserentirely * restores caja test * adds tests that rerun existing end to end tests cajoled * Three failing CajaSocialMarkupHtmlParserTest that depend on namespacing aremarked ignored. Modified: incubator/shindig/trunk/features/src/main/javascript/features/core.util/taming.js incubator/shindig/trunk/features/src/main/javascript/features/opensocial-reference/taming.js incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/parse/caja/CajaSocialMarkupHtmlParserTest.java incubator/shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndTest.java incubator/shindig/trunk/java/server/src/test/resources/endtoend/cajaTest.xml incubator/shindig/trunk/java/server/src/test/resources/endtoend/failCajaTest.xml incubator/shindig/trunk/pom.xml Modified: incubator/shindig/trunk/features/src/main/javascript/features/core.util/taming.js URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/features/src/main/javascript/features/core.util/taming.js?rev=903122&r1=903121&r2=903122&view=diff ============================================================================== --- incubator/shindig/trunk/features/src/main/javascript/features/core.util/taming.js (original) +++ incubator/shindig/trunk/features/src/main/javascript/features/core.util/taming.js Tue Jan 26 08:21:37 2010 @@ -26,6 +26,7 @@ caja___.whitelistFuncs([ [gadgets.util, 'escapeString'], [gadgets.util, 'getFeatureParameters'], + [gadgets.util, 'getUrlParameters'], [gadgets.util, 'hasFeature'], [gadgets.util, 'registerOnLoadHandler'], [gadgets.util, 'unescapeString'] Modified: incubator/shindig/trunk/features/src/main/javascript/features/opensocial-reference/taming.js URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/features/src/main/javascript/features/opensocial-reference/taming.js?rev=903122&r1=903121&r2=903122&view=diff ============================================================================== --- incubator/shindig/trunk/features/src/main/javascript/features/opensocial-reference/taming.js (original) +++ incubator/shindig/trunk/features/src/main/javascript/features/opensocial-reference/taming.js Tue Jan 26 08:21:37 2010 @@ -23,7 +23,10 @@ */ var tamings___ = tamings___ || []; tamings___.push(function(imports) { + ___.grantRead(opensocial.Person, 'Field'); + ___.grantRead(opensocial.Name, 'Field'); ___.grantRead(opensocial.IdSpec, 'PersonId'); + ___.grantRead(opensocial.IdSpec, 'GroupId'); ___.grantRead(opensocial.DataRequest, 'PeopleRequestFields'); // TODO(jasvir): The following object *is* exposed to gadget // code because its returned by opensocial.DataRequest.* @@ -33,6 +36,9 @@ ___.grantRead(JsonRpcRequestItem, 'processResponse'); ___.grantRead(JsonRpcRequestItem, 'errors'); + ___.grantInnocentMethod(JsonPerson.prototype, 'getDisplayName'); + ___.grantInnocentMethod(JsonPerson.prototype, 'getAppData'); + caja___.whitelistCtors([ [window, 'JsonRpcRequestItem', Object], [opensocial, 'Activity', Object], Modified: incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/parse/caja/CajaSocialMarkupHtmlParserTest.java URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/parse/caja/CajaSocialMarkupHtmlParserTest.java?rev=903122&r1=903121&r2=903122&view=diff ============================================================================== --- incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/parse/caja/CajaSocialMarkupHtmlParserTest.java (original) +++ incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/parse/caja/CajaSocialMarkupHtmlParserTest.java Tue Jan 26 08:21:37 2010 @@ -21,6 +21,8 @@ import org.apache.shindig.gadgets.parse.AbstractSocialMarkupHtmlParserTest; import org.apache.shindig.gadgets.parse.GadgetHtmlParser; import org.apache.shindig.gadgets.parse.ParseModule; +import org.junit.Ignore; +import org.junit.Test; public class CajaSocialMarkupHtmlParserTest extends AbstractSocialMarkupHtmlParserTest { @@ -29,4 +31,19 @@ return new CajaHtmlParser(new ParseModule.DOMImplementationProvider().get()); } + @Test + @Override + @Ignore("Until xmlnamespace issues have been resolved") + public void testSocialData() { super.testSocialData(); } + + @Test + @Override + @Ignore("Until xmlnamespace issues have been resolved") + public void testSocialTemplate() { super.testSocialTemplate(); } + + @Test + @Override + @Ignore("Until xmlnamespace issues have been resolved") + public void testInvalid() throws Exception { super.testInvalid(); } + } Modified: incubator/shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndTest.java URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndTest.java?rev=903122&r1=903121&r2=903122&view=diff ============================================================================== --- incubator/shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndTest.java (original) +++ incubator/shindig/trunk/java/server/src/test/java/org/apache/shindig/server/endtoend/EndToEndTest.java Tue Jan 26 08:21:37 2010 @@ -108,7 +108,21 @@ } @Test - @Ignore("probably need a new version of caja for this one..") + public void cajaFetchPerson() throws Exception { + executeAllPageTests("fetchPersonTest", true /* caja */); + } + + @Test + public void cajaFetchPeople() throws Exception { + executeAllPageTests("fetchPeopleTest", true /* caja */); + } + + @Test + public void cajaTestMakeRequest() throws Exception { + executeAllPageTests("makeRequestTest", true /* caja */); + } + + @Test public void caja() throws Exception { executeAllPageTests("cajaTest.xml"); } @@ -150,7 +164,6 @@ } @Test - @Ignore("per jasvir, this test is failing with webclient for an unknown reason") public void testFailCaja() throws Exception { HtmlPage page = executePageTest("failCajaTest", null); NodeList bodyList = page.getElementsByTagName("body"); @@ -340,6 +353,11 @@ */ private HtmlPage executePageTest(String testName, String testMethod) throws IOException { + return executePageTest(testName, testMethod, false /* caja */); + } + + private HtmlPage executePageTest(String testName, String testMethod, boolean caja) + throws IOException { if (!testName.endsWith(".xml")) { testName = testName + ".xml"; } @@ -351,6 +369,9 @@ if (testMethod != null) { url += "&testMethod=" + URLEncoder.encode(testMethod, "UTF-8"); } + if (caja) { + url += "&caja=1&libs=caja"; + } url += "&nocache=1"; if (language != null) { @@ -371,7 +392,17 @@ * @throws IOException */ private HtmlPage executeAllPageTests(String testName) throws IOException { - return executePageTest(testName, "all"); + return executePageTest(testName, "all", false); + } + + /** + * Executes all page test in a single XML file injecting a flag to cajole the test first. + * @param testName name of the test, which must match a gadget XML file + * name in test/resources/endtoend (minus .xml). + * @throws IOException + */ + private HtmlPage executeAllPageTests(String testName, boolean caja) throws IOException { + return executePageTest(testName, "all", caja); } private BasicSecurityToken createToken(String owner, String viewer) Modified: incubator/shindig/trunk/java/server/src/test/resources/endtoend/cajaTest.xml URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/java/server/src/test/resources/endtoend/cajaTest.xml?rev=903122&r1=903121&r2=903122&view=diff ============================================================================== --- incubator/shindig/trunk/java/server/src/test/resources/endtoend/cajaTest.xml (original) +++ incubator/shindig/trunk/java/server/src/test/resources/endtoend/cajaTest.xml Tue Jan 26 08:21:37 2010 @@ -26,26 +26,25 @@ <![CDATA[ <script type="text/javascript" src="/testframework.js"></script> <script type="text/javascript"> + function getAndCheckError(response, key) { + assertFalse('Data error', response.hadError()); + var dataItem = response.get(key); + assertFalse('Data item error for ' + key, dataItem.hadError()); + return dataItem.getData(); + } var tests = { simpleTest: function() { - assertTrue("Basic cajoling failing", true); - finished(); - }, - + assertTrue("Basic cajoling failing", true); + finished(); + }, domitaTest: function() { var elDiv = document.createElement('div'); elDiv.setAttribute('id', 'elDiv'); elDiv.innerHTML = "hello world"; - document.appendChild(elDiv); - assertEquals(document.getElementById('elDiv').innerHTML, "hello world"); + document.body.appendChild(elDiv); + assertEquals("Basic dom operations failing", + document.getElementById('elDiv').innerHTML, "hello world"); finished(); - }, - registerOnLoadHandlerTest: function() { - var onLoaded = function () { - // only complete the test successfully if registerOnLoadHandler works - finished(); - }; - gadgets.util.registerOnLoadHandlerTest(onLoaded); } }; </script> Modified: incubator/shindig/trunk/java/server/src/test/resources/endtoend/failCajaTest.xml URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/java/server/src/test/resources/endtoend/failCajaTest.xml?rev=903122&r1=903121&r2=903122&view=diff ============================================================================== --- incubator/shindig/trunk/java/server/src/test/resources/endtoend/failCajaTest.xml (original) +++ incubator/shindig/trunk/java/server/src/test/resources/endtoend/failCajaTest.xml Tue Jan 26 08:21:37 2010 @@ -20,6 +20,7 @@ <Module> <ModulePrefs title="EndToEndTest"> <Require feature="opensocial-0.8" /> + <Require feature="caja" /> </ModulePrefs> <Content type="html"> <![CDATA[ Modified: incubator/shindig/trunk/pom.xml URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/pom.xml?rev=903122&r1=903121&r2=903122&view=diff ============================================================================== --- incubator/shindig/trunk/pom.xml (original) +++ incubator/shindig/trunk/pom.xml Tue Jan 26 08:21:37 2010 @@ -1358,7 +1358,7 @@ <dependency> <groupId>caja</groupId> <artifactId>caja</artifactId> - <version>r3889</version> + <version>r3950</version> <scope>compile</scope> </dependency> <dependency>