This commit is contained in:
Éric Lemoine
2013-02-20 10:38:25 +01:00
parent 17c3936ab6
commit 5d14b9e2d4
1919 changed files with 559755 additions and 2588 deletions

View File

@@ -0,0 +1,155 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no"/>
<meta name="apple-mobile-web-app-capable" content="yes" />
<title>EdgeToEdgeDataList</title>
<script type="text/javascript" src="../../../../dojo/dojo.js" djConfig="parseOnLoad: true"></script>
<script language="JavaScript" type="text/javascript">
dojo.require("dojo.data.ItemFileWriteStore");
//dojo.require("dojo.parser"); // Use the lightweight parser.
dojo.require("dojox.mobile.parser");
dojo.require("dojox.mobile");
dojo.require("dojox.mobile.deviceTheme");
dojo.require("dojox.mobile.EdgeToEdgeDataList");
dojo.requireIf(!dojo.isWebKit, "dojox.mobile.compat");
dojo.require("doh.runner");
var static_data = {
items: [
{label: "Apple", moveTo: "dummy"},
{label: "Banana", moveTo: "dummy"},
{label: "Cherry", moveTo: "dummy"},
{label: "Grape", moveTo: "dummy"},
{label: "Kiwi", moveTo: "dummy"},
{label: "Lemon", moveTo: "dummy"},
{label: "Melon", moveTo: "dummy"},
{label: "Orange", moveTo: "dummy"},
{label: "Peach", moveTo: "dummy"}
]
};
var store1 = new dojo.data.ItemFileWriteStore({url: "settings.json", clearOnClose: true});
var store2 = new dojo.data.ItemFileWriteStore({data: dojo.clone(static_data)});
var store = store1;
var newItems = [[],[]];
// switch to the selected store
function switchTo(store){
window.store = store;
dijit.byId("list").setStore(store);
}
// add a new item
function add1(){
var item = store.newItem({label: "New Item", moveTo: "dummy"});
this.newItems[(store == store1) ? 1 : 0].push(item);
}
// delete the added item
function delete1(){
var item = this.newItems[(store == store1) ? 1 : 0].pop();
if(item){
store.deleteItem(item);
}
}
dojo.addOnLoad(function(){
doh.register("dojox.mobile.test.doh.EdgeToEdgeDataList", [
{
name: "EdgeToEdgeDataList Verification",
timeout: 4000,
runTest: function(){
var d = new doh.Deferred();
setTimeout(d.getTestCallback(function(){
var demoWidget = dijit.byId("dojox_mobile_ListItem_0");
doh.assertEqual('mblListItem', demoWidget.domNode.className);
doh.assertEqual('mblListItemIcon', demoWidget.domNode.childNodes[0].className);
doh.assertTrue(demoWidget.domNode.childNodes[0].src.search(/i-icon-1.png/i) != -1);
doh.assertEqual('mblListItemAnchor', demoWidget.domNode.childNodes[1].className);
doh.assertEqual('mblListItemTextBox', demoWidget.domNode.childNodes[1].childNodes[0].className);
doh.assertEqual('Wi-Fi', demoWidget.domNode.childNodes[1].childNodes[0].childNodes[0].innerHTML);
doh.assertEqual('mblDomButtonArrow mblRightButton mblDomButton', demoWidget.domNode.childNodes[1].childNodes[1].className);
demoWidget = dijit.byId("dojox_mobile_ListItem_3");
doh.assertEqual('mblListItem mblItemSelected', demoWidget.domNode.className);
doh.assertEqual('mblListItemIcon', demoWidget.domNode.childNodes[0].className);
doh.assertTrue(demoWidget.domNode.childNodes[0].src.search(/i-icon-4.png/i) != -1);
doh.assertEqual('mblListItemAnchor', demoWidget.domNode.childNodes[1].className);
doh.assertEqual('mblListItemTextBox', demoWidget.domNode.childNodes[1].childNodes[0].className);
doh.assertEqual('General', demoWidget.domNode.childNodes[1].childNodes[0].childNodes[0].innerHTML);
doh.assertEqual('mblDomButtonArrow mblRightButton mblDomButton', demoWidget.domNode.childNodes[1].childNodes[1].className);
}),500);
return d;
}
},
{
name: "EdgeToEdgeDataList Verification2",
timeout: 10000,
runTest: function(){
var d = new doh.Deferred();
setTimeout(d.getTestCallback(function(){
add1();
add1();
add1();
var demoWidget = dijit.byId("dojox_mobile_ListItem_12");
doh.assertEqual('mblListItem', demoWidget.domNode.className);
doh.assertEqual('mblListItemAnchor mblListItemAnchorNoIcon', demoWidget.domNode.childNodes[0].className);
doh.assertEqual('mblListItemTextBox', demoWidget.domNode.childNodes[0].childNodes[0].className);
doh.assertEqual('New Item', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].innerHTML);
doh.assertEqual('mblDomButtonArrow mblRightButton mblDomButton', demoWidget.domNode.childNodes[0].childNodes[1].className);
delete1();
demoWidget = dijit.byId("dojox_mobile_ListItem_12");
doh.assertTrue(!demoWidget);
demoWidget = dijit.byId("dojox_mobile_ListItem_11");
doh.assertEqual('mblListItem', demoWidget.domNode.className);
doh.assertEqual('mblListItemAnchor mblListItemAnchorNoIcon', demoWidget.domNode.childNodes[0].className);
doh.assertEqual('mblListItemTextBox', demoWidget.domNode.childNodes[0].childNodes[0].className);
doh.assertEqual('New Item', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].innerHTML);
doh.assertEqual('mblDomButtonArrow mblRightButton mblDomButton', demoWidget.domNode.childNodes[0].childNodes[1].className);
}),1500);
return d;
}
},
{
name: "EdgeToEdgeDataList Verification2",
timeout: 10000,
runTest: function(){
var d = new doh.Deferred();
setTimeout(d.getTestCallback(function(){
switchTo(store2);
var demoWidget = dijit.byId("dojox_mobile_ListItem_13");
doh.assertEqual('mblListItem', demoWidget.domNode.className);
doh.assertEqual('mblListItemAnchor mblListItemAnchorNoIcon', demoWidget.domNode.childNodes[0].className);
doh.assertEqual('mblListItemTextBox', demoWidget.domNode.childNodes[0].childNodes[0].className);
doh.assertEqual('Apple', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].innerHTML);
doh.assertEqual('mblDomButtonArrow mblRightButton mblDomButton', demoWidget.domNode.childNodes[0].childNodes[1].className);
}),2500);
return d;
}
}
]);
doh.run();
});
</script>
</head>
<body>
<div id="foo" dojoType="dojox.mobile.View" selected="true">
<h1 dojoType="dojox.mobile.Heading">EdgeToEdgeDataList</h1>
<ul dojoType="dojox.mobile.EdgeToEdgeDataList" id="list" store="store" query="{label: '*'}"></ul>
<h1 dojoType="dojox.mobile.Heading">EdgeToEdgeDataList</h1>
<p>show the different set:<br>
<input type="button" value="Set1" onclick="switchTo(store1)">
<input type="button" value="Set2" onclick="switchTo(store2)">
<p>alter the object store:<br>
<input type="button" value="Add" onclick="add1()">
<input type="button" value="Delete" onclick="delete1()">
</div>
</body>
</html>