Commit 01d900a2 authored by Vivek's avatar Vivek

renderjs_interfaces: updated demo application to allow inputs.

parent 90b812f1
...@@ -111,6 +111,7 @@ ...@@ -111,6 +111,7 @@
<meta charset="utf-8" />\n <meta charset="utf-8" />\n
<title>I-Demo</title>\n <title>I-Demo</title>\n
<meta name="viewport" content="width=device-width, initial-scale=1" />\n <meta name="viewport" content="width=device-width, initial-scale=1" />\n
<link rel="stylesheet" href="jquerymobile.css">\n
\n \n
<link rel="http://www.renderjs.org/rel/interface" href="demo_interface1.html">\n <link rel="http://www.renderjs.org/rel/interface" href="demo_interface1.html">\n
<link rel="http://www.renderjs.org/rel/interface" href="demo_interface2.html">\n <link rel="http://www.renderjs.org/rel/interface" href="demo_interface2.html">\n
...@@ -119,7 +120,9 @@ ...@@ -119,7 +120,9 @@
<script src="rsvp.js" type="text/javascript"></script>\n <script src="rsvp.js" type="text/javascript"></script>\n
<script src="renderjs.js" type="text/javascript"></script>\n <script src="renderjs.js" type="text/javascript"></script>\n
<script src="handlebars.js" type="text/javascript"></script>\n <script src="handlebars.js" type="text/javascript"></script>\n
<script src="gadget_global.js" ></script>\n
<script src="jquery.js" type="text/javascript"></script>\n <script src="jquery.js" type="text/javascript"></script>\n
<script src="jquerymobile.js"></script>\n
\n \n
<!-- custom script -->\n <!-- custom script -->\n
<script src="gadget_interfacedemo.js" type="text/javascript"></script>\n <script src="gadget_interfacedemo.js" type="text/javascript"></script>\n
...@@ -127,15 +130,42 @@ ...@@ -127,15 +130,42 @@
<div class="ui-grid-b ui-responsive">\n <div class="ui-grid-b ui-responsive">\n
<div class="ui-block-a"></div>\n <div class="ui-block-a"></div>\n
<div class="ui-block-b">\n <div class="ui-block-b">\n
<ul data-role="listview" data-inset="true">\n <h2>Select Parameters</h2>\n
<form class="interface-verify-form">\n
<div data-role="fieldcontain">\n
<label for="gadget_selector" class="select">Select Gadget</label>\n
<select name="gadget_selector">\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/interface_test_correct_implemented_gadget.html">Gadget: Implements Interface 1 Correctly</option>\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/interface_test_missing_interface_declaration_gadget.html">Gadget: Missing Interface Declaration of Interface 1</option>\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/interface_test_missing_method_declaration_gadget.html">Gadget: Missing Method Declaration of Interface 1 </option>\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/interface_test_mismatched_argument_gadget.html">Gadget: Mismatched Method Argument of Interface 1 </option>\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/interface_test_multiple_interface_correct_gadget.html">Gadget: Multiple Interfaces Correctly Implements Interface 1 and 2</option>\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/interface_test_multiple_interface_mismached_argument_gadget.html">Gadget: Multiple Interfaces Mismatched Argument of Interface 2 </option>\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/interface_test_multiple_interface_missing_method_declaration_gadget.html">Gadget: Multiple Interfaces Missing Method Declaration of Interface 2</option>\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/interface_test_invalid_interface_gadget.html">Gadget: Implements All Invalid Interfaces</option>\n
</select>\n
</div>\n
<div data-role="fieldcontain">\n
<label for="interface_selector" class="select">Select Interface</label>\n
<select name="interface_selector">\n
<option value="">Default: Test all declared interfaces</option>\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/demo_interface1.html">Demo Interface 1</option>\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/demo_interface2.html">Demo Interface 2</option>\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/demo_interface_invalid1.html">Demo Interface Invalid 1</option>\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/demo_interface_invalid2.html">Demo Interface Invalid 2</option>\n
<option value="https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/demo_interface_invalid3.html">Demo Interface Invalid 3</option>\n
</select>\n
</div>\n
<input data-inline="true" type="submit" value="Submit" data-theme="b">\n
</form>\n
<ul>\n
{{#each interface_item}}\n {{#each interface_item}}\n
<li>\n <li> Gadget :<br />\n
{{interface_name}}\n {{gadget_name}} <br />\n
<br>\n Interface : <br />\n
Status: \n {{interface_name}} <br />\n
<div data-i18n="status">{{status}}\n Status : <br />\n
</div>\n <b>{{status}}</b>\n
</br>\n
</li>\n </li>\n
{{/each}}\n {{/each}}\n
</ul> \n </ul> \n
...@@ -146,7 +176,7 @@ ...@@ -146,7 +176,7 @@
<script class="header-template" type="text/x-handlebars-template">\n <script class="header-template" type="text/x-handlebars-template">\n
<h3 class="ui-title">{{title}}</h3>\n <h3 class="ui-title">{{title}}</h3>\n
</script>\n </script>\n
\n \n
</head>\n </head>\n
<body>\n <body>\n
<div data-role="page">\n <div data-role="page">\n
...@@ -293,7 +323,7 @@ ...@@ -293,7 +323,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>944.38728.22039.16742</string> </value> <value> <string>944.43289.51727.28569</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -311,7 +341,7 @@ ...@@ -311,7 +341,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1437744028.67</float> <float>1438006248.54</float>
<string>GMT</string> <string>GMT</string>
</tuple> </tuple>
</state> </state>
......
...@@ -101,7 +101,7 @@ ...@@ -101,7 +101,7 @@
<key> <string>text_content</string> </key> <key> <string>text_content</string> </key>
<value> <string>/*global window, rJS, RSVP */\n <value> <string>/*global window, rJS, RSVP */\n
/*jslint nomen: true, indent: 2, maxerr: 3 */\n /*jslint nomen: true, indent: 2, maxerr: 3 */\n
(function (window, rJS, Handlebars, $, jQuery, RSVP) {\n (function (window, rJS, Handlebars, promiseEventListener, $, jQuery, RSVP) {\n
"use strict";\n "use strict";\n
\n \n
var INTERFACE_GADGET_URL = "./gadget_interfaces.html",\n var INTERFACE_GADGET_URL = "./gadget_interfaces.html",\n
...@@ -125,46 +125,60 @@ ...@@ -125,46 +125,60 @@
});\n });\n
})\n })\n
\n \n
.declareMethod("interfaceGadgetTest", function (gadget_url, interface_url) {\n .declareMethod("interfaceGadgetTest", function (display_data) {\n
var gadget = this;\n var gadget = this;\n
return new RSVP.Queue()\n return new RSVP.Queue()\n
.push(function () {\n .push(function () {\n
return gadget.getDeclaredGadget(INTERFACE_GADGET_SCOPE);\n gadget.props.content_element.innerHTML =\n
gadget.props.interface_list_template({});\n
gadget.props.header_element.innerHTML = gadget.props.header_template({\n
title: "Interface Implementation Verification"\n
});\n
if(display_data) {\n
gadget.props.content_element.innerHTML =\n
gadget.props.interface_list_template(display_data);\n
}\n
$(gadget.props.element).trigger("create");\n
return RSVP.all([\n
gadget.getDeclaredGadget(INTERFACE_GADGET_SCOPE),\n
promiseEventListener(\n
gadget.props.content_element.querySelector(\'form.interface-verify-form\'),\n
\'submit\',\n
false\n
)\n
]);\n
})\n })\n
.push(function (interface_gadget) {\n .push(function (test_data) {\n
var status_list = [],\n var status_list = [],\n
key;\n interface_gadget = test_data[0],\n
status_list.push(interface_gadget.verifyGadgetInterfaceImplementation(gadget_url, interface_url));\n submit_event = test_data[1],\n
gadget_url = submit_event.target[0].value,\n
interface_url = submit_event.target[1].value;\n
gadget.props.content_element.querySelector("input[type=submit]")\n
.disabled = true;\n
status_list.push(gadget_url);\n
if (interface_url !== "") {\n
status_list.push(interface_url);\n
status_list.push(interface_gadget.verifyGadgetInterfaceImplementation(gadget_url, interface_url));\n
} else {\n
status_list.push("All declared interfaces.");\n
status_list.push(interface_gadget.verifyGadgetAllInterfaceImplementation(gadget_url));\n
}\n
return RSVP.all(status_list);\n return RSVP.all(status_list);\n
})\n })\n
.push(function (result_list) {\n .push(function (result_list) {\n
var parameter = {interface_item: []},\n var parameter = {interface_item: []};\n
key,\n
i = 0;\n
parameter.interface_item.push({\n parameter.interface_item.push({\n
interface_name: interface_url, \n gadget_name: result_list[0],\n
status: (result_list[0] ? "Verified Success":"Verified Failure")\n interface_name: result_list[1], \n
status: (result_list[2] ? "Verified Success.":"Verified Failure.")\n
});\n });\n
gadget.props.header_element.innerHTML = gadget.props.header_template({\n return gadget.interfaceGadgetTest(parameter);\n
title: "Interface List"\n
});\n
gadget.props.content_element.innerHTML =\n
gadget.props.interface_list_template(parameter);\n
$(gadget.props.element).trigger("create");\n
});\n });\n
})\n })\n
\n \n
.declareMethod("render", function (url_list) {\n .declareMethod("render", function () {\n
var gadget = this,\n var gadget = this;\n
gadget_url = url_list.gadget_url,\n
interface_url = url_list.interface_url;\n
//temperoray hardcoded\n
if(!gadget_url) {\n
gadget_url = "https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/interface_test_correct_implemented_gadget.html";\n
}\n
if(!interface_url) {\n
interface_url = "https://softinst60317.host.vifib.net/erp5/web_site_module/interface_demo/demo_interface1.html";\n
}\n
return new RSVP.Queue()\n return new RSVP.Queue()\n
.push(function () {\n .push(function () {\n
return gadget.declareGadget(INTERFACE_GADGET_URL, {\n return gadget.declareGadget(INTERFACE_GADGET_URL, {\n
...@@ -173,11 +187,11 @@ ...@@ -173,11 +187,11 @@
});\n });\n
})\n })\n
.push(function () {\n .push(function () {\n
return gadget.interfaceGadgetTest(gadget_url, interface_url);\n return gadget.interfaceGadgetTest();\n
});\n });\n
});\n });\n
\n \n
}(window, rJS, Handlebars, $, jQuery, RSVP));</string> </value> }(window, rJS, Handlebars, promiseEventListener, $, jQuery, RSVP));</string> </value>
</item> </item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
...@@ -312,7 +326,7 @@ ...@@ -312,7 +326,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>944.38973.25767.57053</string> </value> <value> <string>944.43061.11797.41233</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -330,7 +344,7 @@ ...@@ -330,7 +344,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1437743948.99</float> <float>1437989200.53</float>
<string>GMT</string> <string>GMT</string>
</tuple> </tuple>
</state> </state>
......
...@@ -155,6 +155,7 @@ ...@@ -155,6 +155,7 @@
var VERIFY_GADGET_SCOPE = "verify_gadget";\n var VERIFY_GADGET_SCOPE = "verify_gadget";\n
\n \n
function getVerifyGadget(gadget_url, interface_gadget) {\n function getVerifyGadget(gadget_url, interface_gadget) {\n
//to declare and get the gadget to be verified.\n
return new RSVP.Queue()\n return new RSVP.Queue()\n
.push(function () {\n .push(function () {\n
return interface_gadget.declareGadget(gadget_url, {\n return interface_gadget.declareGadget(gadget_url, {\n
...@@ -227,6 +228,7 @@ ...@@ -227,6 +228,7 @@
}\n }\n
\n \n
function verifyAllMethod(interface_method_list, gadget_method_list) {\n function verifyAllMethod(interface_method_list, gadget_method_list) {\n
//to verify all methods of gadget and interface.\n
var defer = RSVP.defer();\n var defer = RSVP.defer();\n
return RSVP.Queue()\n return RSVP.Queue()\n
.push(function() {\n .push(function() {\n
...@@ -391,9 +393,6 @@ ...@@ -391,9 +393,6 @@
if(!gadget_url || !interface_url) {\n if(!gadget_url || !interface_url) {\n
throw new Error("Invalid Inputs");\n throw new Error("Invalid Inputs");\n
}\n }\n
return verifyInterfaceDefinition(interface_url);\n
})\n
.push(function () {\n
return getVerifyGadget(gadget_url, interface_gadget);\n return getVerifyGadget(gadget_url, interface_gadget);\n
})\n })\n
.push(function (gadget) {\n .push(function (gadget) {\n
...@@ -402,6 +401,9 @@ ...@@ -402,6 +401,9 @@
.push(function (declared_interface_list) {\n .push(function (declared_interface_list) {\n
return verifyInterfaceDeclaration(interface_url, declared_interface_list);\n return verifyInterfaceDeclaration(interface_url, declared_interface_list);\n
})\n })\n
.push(function () {\n
return verifyInterfaceDefinition(interface_url);\n
})\n
.push(function () {\n .push(function () {\n
return interface_gadget.getDeclaredGadget(VERIFY_GADGET_SCOPE);\n return interface_gadget.getDeclaredGadget(VERIFY_GADGET_SCOPE);\n
})\n })\n
...@@ -417,7 +419,7 @@ ...@@ -417,7 +419,7 @@
.push (function() {\n .push (function() {\n
return true;\n return true;\n
}, function(error) {\n }, function(error) {\n
console.log("Verified : Failure", error);\n console.log("Verified : Failure", error.message);\n
return false;\n return false;\n
});\n });\n
})\n })\n
...@@ -594,7 +596,7 @@ ...@@ -594,7 +596,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>944.38727.51823.5973</string> </value> <value> <string>944.43313.24628.20019</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -612,7 +614,7 @@ ...@@ -612,7 +614,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1437739303.69</float> <float>1438006033.5</float>
<string>GMT</string> <string>GMT</string>
</tuple> </tuple>
</state> </state>
......
...@@ -155,6 +155,7 @@ ...@@ -155,6 +155,7 @@
var VERIFY_GADGET_SCOPE = "verify_gadget";\n var VERIFY_GADGET_SCOPE = "verify_gadget";\n
\n \n
function getVerifyGadget(gadget_url, interface_gadget) {\n function getVerifyGadget(gadget_url, interface_gadget) {\n
//to declare and get the gadget to be verified.\n
return new RSVP.Queue()\n return new RSVP.Queue()\n
.push(function () {\n .push(function () {\n
return interface_gadget.declareGadget(gadget_url, {\n return interface_gadget.declareGadget(gadget_url, {\n
...@@ -227,6 +228,7 @@ ...@@ -227,6 +228,7 @@
}\n }\n
\n \n
function verifyAllMethod(interface_method_list, gadget_method_list) {\n function verifyAllMethod(interface_method_list, gadget_method_list) {\n
//to verify all methods of gadget and interface.\n
var defer = RSVP.defer();\n var defer = RSVP.defer();\n
return RSVP.Queue()\n return RSVP.Queue()\n
.push(function() {\n .push(function() {\n
...@@ -391,9 +393,6 @@ ...@@ -391,9 +393,6 @@
if(!gadget_url || !interface_url) {\n if(!gadget_url || !interface_url) {\n
throw new Error("Invalid Inputs");\n throw new Error("Invalid Inputs");\n
}\n }\n
return verifyInterfaceDefinition(interface_url);\n
})\n
.push(function () {\n
return getVerifyGadget(gadget_url, interface_gadget);\n return getVerifyGadget(gadget_url, interface_gadget);\n
})\n })\n
.push(function (gadget) {\n .push(function (gadget) {\n
...@@ -402,6 +401,9 @@ ...@@ -402,6 +401,9 @@
.push(function (declared_interface_list) {\n .push(function (declared_interface_list) {\n
return verifyInterfaceDeclaration(interface_url, declared_interface_list);\n return verifyInterfaceDeclaration(interface_url, declared_interface_list);\n
})\n })\n
.push(function () {\n
return verifyInterfaceDefinition(interface_url);\n
})\n
.push(function () {\n .push(function () {\n
return interface_gadget.getDeclaredGadget(VERIFY_GADGET_SCOPE);\n return interface_gadget.getDeclaredGadget(VERIFY_GADGET_SCOPE);\n
})\n })\n
...@@ -417,7 +419,7 @@ ...@@ -417,7 +419,7 @@
.push (function() {\n .push (function() {\n
return true;\n return true;\n
}, function(error) {\n }, function(error) {\n
console.log("Verified : Failure", error);\n console.log("Verified : Failure", error.message);\n
return false;\n return false;\n
});\n });\n
})\n })\n
...@@ -594,7 +596,7 @@ ...@@ -594,7 +596,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>944.38727.51823.5973</string> </value> <value> <string>944.43313.24628.20019</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -612,7 +614,7 @@ ...@@ -612,7 +614,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1437739303.69</float> <float>1438006033.5</float>
<string>GMT</string> <string>GMT</string>
</tuple> </tuple>
</state> </state>
......
...@@ -127,7 +127,7 @@ ...@@ -127,7 +127,7 @@
\n \n
test("verify correctly implemented gadget test", function() {\n test("verify correctly implemented gadget test", function() {\n
var gadget_url = "./interface_test_correct_implemented_gadget.html",\n var gadget_url = "./interface_test_correct_implemented_gadget.html",\n
interface_url = "https://softinst60317.host.vifib.net/erp5/web_site_module/rjs_interface_test/demo_interface1.html";\n interface_url = "https://softinst60317.host.vifib.net/erp5/web_site_module/interface_test/demo_interface1.html";\n
return new RSVP.Queue()\n return new RSVP.Queue()\n
.push(function() {\n .push(function() {\n
return root_gadget_defer.promise;\n return root_gadget_defer.promise;\n
...@@ -145,7 +145,7 @@ ...@@ -145,7 +145,7 @@
\n \n
test("verify missing interface declaration gadget test", function() {\n test("verify missing interface declaration gadget test", function() {\n
var gadget_url = "./interface_test_missing_interface_declaration_gadget.html",\n var gadget_url = "./interface_test_missing_interface_declaration_gadget.html",\n
interface_url = "https://softinst60317.host.vifib.net/erp5/web_site_module/rjs_interface_test/demo_interface1.html";\n interface_url = "https://softinst60317.host.vifib.net/erp5/web_site_module/interface_test/demo_interface1.html";\n
return new RSVP.Queue()\n return new RSVP.Queue()\n
.push(function() {\n .push(function() {\n
return root_gadget_defer.promise;\n return root_gadget_defer.promise;\n
...@@ -163,7 +163,7 @@ ...@@ -163,7 +163,7 @@
\n \n
test("verify missing method declaration gadget test", function() {\n test("verify missing method declaration gadget test", function() {\n
var gadget_url = "./interface_test_missing_method_declaration_gadget.html",\n var gadget_url = "./interface_test_missing_method_declaration_gadget.html",\n
interface_url = "https://softinst60317.host.vifib.net/erp5/web_site_module/rjs_interface_test/demo_interface1.html";\n interface_url = "https://softinst60317.host.vifib.net/erp5/web_site_module/interface_test/demo_interface1.html";\n
return new RSVP.Queue()\n return new RSVP.Queue()\n
.push(function() {\n .push(function() {\n
return root_gadget_defer.promise;\n return root_gadget_defer.promise;\n
...@@ -181,7 +181,7 @@ ...@@ -181,7 +181,7 @@
\n \n
test("verify mismatched method argument gadget test", function() {\n test("verify mismatched method argument gadget test", function() {\n
var gadget_url = "./interface_test_mismatched_argument_gadget.html",\n var gadget_url = "./interface_test_mismatched_argument_gadget.html",\n
interface_url = "https://softinst60317.host.vifib.net/erp5/web_site_module/rjs_interface_test/demo_interface1.html";\n interface_url = "https://softinst60317.host.vifib.net/erp5/web_site_module/interface_test/demo_interface1.html";\n
return new RSVP.Queue()\n return new RSVP.Queue()\n
.push(function() {\n .push(function() {\n
return root_gadget_defer.promise;\n return root_gadget_defer.promise;\n
...@@ -250,9 +250,9 @@ ...@@ -250,9 +250,9 @@
\n \n
test("verify invalid interface definition gadget test", function() {\n test("verify invalid interface definition gadget test", function() {\n
var gadget_url = "./interface_test_missing_interface_declaration_gadget.html",\n var gadget_url = "./interface_test_missing_interface_declaration_gadget.html",\n
interface_url1 = "https://softinst60317.host.vifib.net/erp5/web_site_module/rjs_interface_test/demo_interface_invalid1.html",\n interface_url1 = "https://softinst60317.host.vifib.net/erp5/web_site_module/interface_test/demo_interface_invalid1.html",\n
interface_url2 = "https://softinst60317.host.vifib.net/erp5/web_site_module/rjs_interface_test/demo_interface_invalid2.html",\n interface_url2 = "https://softinst60317.host.vifib.net/erp5/web_site_module/interface_test/demo_interface_invalid2.html",\n
interface_url3 = "https://softinst60317.host.vifib.net/erp5/web_site_module/rjs_interface_test/demo_interface_invalid3.html";\n interface_url3 = "https://softinst60317.host.vifib.net/erp5/web_site_module/interface_test/demo_interface_invalid3.html";\n
return new RSVP.Queue()\n return new RSVP.Queue()\n
.push(function() {\n .push(function() {\n
return root_gadget_defer.promise;\n return root_gadget_defer.promise;\n
...@@ -408,7 +408,7 @@ ...@@ -408,7 +408,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>944.38769.26131.52548</string> </value> <value> <string>944.38901.1195.26897</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -426,7 +426,7 @@ ...@@ -426,7 +426,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1437739501.09</float> <float>1437747711.99</float>
<string>GMT</string> <string>GMT</string>
</tuple> </tuple>
</state> </state>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment