You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rave.apache.org by mf...@apache.org on 2011/06/06 22:08:02 UTC
svn commit: r1132742 - in /incubator/rave/trunk/rave-portal/src:
main/webapp/script/rave_opensocial.js test/javascript/raveOpenSocialSpec.js
Author: mfranklin
Date: Mon Jun 6 20:08:02 2011
New Revision: 1132742
URL: http://svn.apache.org/viewvc?rev=1132742&view=rev
Log:
Fixed case where set title is called with an array as the argument for title. Chooses first element.
Modified:
incubator/rave/trunk/rave-portal/src/main/webapp/script/rave_opensocial.js
incubator/rave/trunk/rave-portal/src/test/javascript/raveOpenSocialSpec.js
Modified: incubator/rave/trunk/rave-portal/src/main/webapp/script/rave_opensocial.js
URL: http://svn.apache.org/viewvc/incubator/rave/trunk/rave-portal/src/main/webapp/script/rave_opensocial.js?rev=1132742&r1=1132741&r2=1132742&view=diff
==============================================================================
--- incubator/rave/trunk/rave-portal/src/main/webapp/script/rave_opensocial.js (original)
+++ incubator/rave/trunk/rave-portal/src/main/webapp/script/rave_opensocial.js Mon Jun 6 20:08:02 2011
@@ -153,7 +153,8 @@ rave.opensocial = rave.opensocial || (fu
var titleId = "widget-" + rave.getObjectIdFromDomId(bodyId) + "-title";
var element = document.getElementById(titleId);
if (element) {
- element.innerHTML = gadgets.util.escapeString(args.a);
+ var a = isArray(args.a) ? args.a[0] : args.a;
+ element.innerHTML = gadgets.util.escapeString(a);
}
}
@@ -170,6 +171,13 @@ rave.opensocial = rave.opensocial || (fu
}
/**
+ * Utility functions
+ */
+ function isArray(o) {
+ return Object.prototype.toString.call(o) == "[object Array]";
+ }
+
+ /**
* Exposed public API calls
*/
return {
Modified: incubator/rave/trunk/rave-portal/src/test/javascript/raveOpenSocialSpec.js
URL: http://svn.apache.org/viewvc/incubator/rave/trunk/rave-portal/src/test/javascript/raveOpenSocialSpec.js?rev=1132742&r1=1132741&r2=1132742&view=diff
==============================================================================
--- incubator/rave/trunk/rave-portal/src/test/javascript/raveOpenSocialSpec.js (original)
+++ incubator/rave/trunk/rave-portal/src/test/javascript/raveOpenSocialSpec.js Mon Jun 6 20:08:02 2011
@@ -101,10 +101,10 @@ describe("Rave OpenSocial", function() {
describe("RPC Hooks", function() {
- function getMockTitleArgs(id) {
+ function getMockTitleArgs(id, arrayOut) {
return {
f : "frameId",
- a : "TITLE",
+ a : arrayOut ? ["TITLE"] : "TITLE",
gs : {
getActiveGadgetHolder : function() {
return {getElement : function() {
@@ -164,8 +164,18 @@ describe("Rave OpenSocial", function() {
spyOn(document, "getElementById").andReturn(null);
rave.opensocial.init();
- container.rpcHooks()["set_title"](getMockTitleArgs("not-in-existence"));
+ container.rpcHooks()["set_title"](getMockTitleArgs("not-in-existence", false));
expect(true).toBeTruthy();
});
+
+ it("set title handles array title args", function() {
+ var mockElement = {innerHTML : "NOTHING"};
+ spyOn(document, "getElementById").andReturn(mockElement);
+
+ rave.opensocial.init();
+ container.rpcHooks()["set_title"](getMockTitleArgs("widget-7-body", true));
+ expect(mockElement.innerHTML).toEqual("TITLE");
+ expect(document.getElementById).toHaveBeenCalledWith("widget-7-title");
+ });
});
});
\ No newline at end of file