📄 readonlyitemfiletesttemplates.js
字号:
} function error(errData, request){ t.assertTrue(false); d.errback(errData); } //Get everything... store.fetch({ onComplete: completedAll, onError: error}); return d; } }, { name: "Read API: fetch() one", runTest: function(datastore, t){ // summary: // Simple test of a basic fetch on ItemFileReadStore of a single item. // description: // Simple test of a basic fetch on ItemFileReadStore of a single item. var store = new datastore(tests.data.readOnlyItemFileTestTemplates.getTestData("countries")); var d = new doh.Deferred(); function onComplete(items, request){ t.assertEqual(items.length, 1); d.callback(true); } function onError(errData, request){ t.assertTrue(false); d.errback(errData); } store.fetch({ query: {abbr: "ec"}, onComplete: onComplete, onError: onError }); return d; } }, { name: "Read API: fetch() shallow", runTest: function(datastore, t){ // summary: // Simple test of a basic fetch on ItemFileReadStore of only toplevel items // description: // Simple test of a basic fetch on ItemFileReadStore of only toplevel items. var store = new datastore(tests.data.readOnlyItemFileTestTemplates.getTestData("geography_hierarchy_small")); var d = new doh.Deferred(); function onComplete(items, request){ t.assertEqual(items.length, 2); d.callback(true); } function onError(errData, request){ t.assertTrue(false); d.errback(errData); } //Find all items starting with A, only toplevel (root) items. store.fetch({ query: {name: "A*"}, onComplete: onComplete, onError: onError }); return d; } }, { name: "Read API: fetch() Multiple", runTest: function(datastore, t){ // summary: // Tests that multiple fetches at the same time queue up properly and do not clobber each other on initial load. // description: // Tests that multiple fetches at the same time queue up properly and do not clobber each other on initial load. var store = new datastore(tests.data.readOnlyItemFileTestTemplates.getTestData("geography_hierarchy_small")); var d = new doh.Deferred(); var done = [false, false]; function onCompleteOne(items, request){ done[0] = true; t.assertEqual(items.length, 2); if(done[0] && done[1]){ d.callback(true); } } function onCompleteTwo(items, request){ done[1] = true; if(done[0] && done[1]){ d.callback(true); } } function onError(errData, request){ t.assertTrue(false); d.errback(errData); } //Find all items starting with A, only toplevel (root) items. store.fetch({ query: {name: "A*"}, onComplete: onCompleteOne, onError: onError }); //Find all items starting with A, only toplevel (root) items. store.fetch({ query: {name: "N*"}, onComplete: onCompleteTwo, onError: onError }); return d; } }, { name: "Read API: fetch() MultipleMixedFetch", runTest: function(datastore, t){ // summary: // Tests that multiple fetches at the same time queue up properly and do not clobber each other on initial load. // description: // Tests that multiple fetches at the same time queue up properly and do not clobber each other on initial load. // Tests an item fetch and an identity fetch. var store = new datastore(tests.data.readOnlyItemFileTestTemplates.getTestData("countries")); var d = new doh.Deferred(); var done = [false, false]; function onComplete(items, request){ done[0] = true; t.assertEqual(items.length, 1); if(done[0] && done[1]){ d.callback(true); } } function onItem(item){ done[1] = true; t.assertTrue(item !== null); var name = store.getValue(item,"name"); t.assertEqual(name, "El Salvador"); if(done[0] && done[1]){ d.callback(true); } } function onError(errData){ t.assertTrue(false); d.errback(errData); } //Find all items starting with A, only toplevel (root) items. store.fetch({ query: {name: "El*"}, onComplete: onComplete, onError: onError }); store.fetchItemByIdentity({identity: "sv", onItem: onItem, onError: onError}); return d; } }, { name: "Read API: fetch() deep", runTest: function(datastore, t){ // summary: // Simple test of a basic fetch on ItemFileReadStore of all items (including children (nested)) // description: // Simple test of a basic fetch on ItemFileReadStore of all items (including children (nested)) var store = new datastore(tests.data.readOnlyItemFileTestTemplates.getTestData("geography_hierarchy_small")); var d = new doh.Deferred(); function onComplete(items, request){ t.assertEqual(items.length, 4); d.callback(true); } function onError(errData, request){ t.assertTrue(false); d.errback(errData); } //Find all items starting with A, including child (nested) items. store.fetch({ query: {name: "A*"}, onComplete: onComplete, onError: onError, queryOptions: {deep:true} }); return d; } }, { name: "Read API: fetch() one_commentFilteredJson", runTest: function(datastore, t){ // summary: // Simple test of a basic fetch on ItemFileReadStore of a single item. // description: // Simple test of a basic fetch on ItemFileReadStore of a single item. // This tests loading a comment-filtered json file so that people using secure // data with this store can bypass the JavaSceipt hijack noted in Fortify's // paper. if(dojo.isBrowser){ var store = new datastore({url: dojo.moduleUrl("tests", "data/countries_commentFiltered.json").toString()}); var d = new doh.Deferred(); function onComplete(items, request){ t.assertEqual(items.length, 1); d.callback(true); } function onError(errData, request){ t.assertTrue(false); d.errback(errData); } store.fetch({ query: {abbr: "ec"}, onComplete: onComplete, onError: onError }); return d; } } }, { name: "Read API: fetch() withNull", runTest: function(datastore, t){ // summary: // Simple test of a basic fetch on ItemFileReadStore of a single item where some attributes are null. // description: // Simple test of a basic fetch on ItemFileReadStore of a single item where some attributes are null. // Introduced because of tracker: #3153 var store = new datastore(tests.data.readOnlyItemFileTestTemplates.getTestData("countries_withNull")); var d = new doh.Deferred(); function onComplete(items, request){ t.assertEqual(4, items.length); d.callback(true); } function onError(errData, request){ t.assertTrue(false); d.errback(errData); } store.fetch({ query: {name: "E*"}, onComplete: onComplete, onError: onError }); return d; } }, { name: "Read API: fetch() all_streaming", runTest: function(datastore, t){ // summary: // Simple test of a basic fetch on ItemFileReadStore. // description: // Simple test of a basic fetch on ItemFileReadStore. var store = new datastore(tests.data.readOnlyItemFileTestTemplates.getTestData("countries")); var d = new doh.Deferred(); count = 0; function onBegin(size, requestObj){ t.assertEqual(size, 7); } function onItem(item, requestObj){ t.assertTrue(store.isItem(item)); count++; } function onComplete(items, request){ t.assertEqual(count, 7); t.assertTrue(items === null); d.callback(true); } function onError(errData, request){ t.assertTrue(false); d.errback(errData); } //Get everything... store.fetch({ onBegin: onBegin, onItem: onItem, onComplete: onComplete, onError: onError }); return d; } }, { name: "Read API: fetch() paging", runTest: function(datastore, t){ // summary: // Test of multiple fetches on a single result. Paging, if you will. // description: // Test of multiple fetches on a single result. Paging, if you will. var store = new datastore(tests.data.readOnlyItemFileTestTemplates.getTestData("countries")); var d = new doh.Deferred(); function dumpFirstFetch(items, request){ t.assertEqual(items.length, 5); request.start = 3; request.count = 1; request.onComplete = dumpSecondFetch; store.fetch(request); } function dumpSecondFetch(items, request){ t.assertEqual(items.length, 1); request.start = 0; request.count = 5; request.onComplete = dumpThirdFetch; store.fetch(request); } function dumpThirdFetch(items, request){ t.assertEqual(items.length, 5); request.start = 2; request.count = 20; request.onComplete = dumpFourthFetch; store.fetch(request); } function dumpFourthFetch(items, request){ t.assertEqual(items.length, 5); request.start = 9; request.count = 100; request.onComplete = dumpFifthFetch; store.fetch(request); } function dumpFifthFetch(items, request){ t.assertEqual(items.length, 0); request.start = 2; request.count = 20; request.onComplete = dumpSixthFetch; store.fetch(request); } function dumpSixthFetch(items, request){ t.assertEqual(items.length, 5); d.callback(true); } function completed(items, request){ t.assertEqual(items.length, 7); request.start = 1; request.count = 5; request.onComplete = dumpFirstFetch; store.fetch(request); } function error(errData, request){ t.assertTrue(false); d.errback(errData); } store.fetch({onComplete: completed, onError: error}); return d; } }, { name: "Read API: fetch() with MultiType Match", runTest: function(datastore, t){ // summary: // Simple test of a basic fetch againct an attribute that has different types for the value across items // description: // Simple test of a basic fetch againct an attribute that has different types for the value across items // Introduced because of tracker: #4931 var store = new datastore(tests.data.readOnlyItemFileTestTemplates.getTestData("data_multitype")); var d = new doh.Deferred(); function onComplete(items, request){ t.assertEqual(4, items.length); d.callback(true); } function onError(errData, request){ t.assertTrue(false); d.errback(errData); } store.fetch({ query: {count: "1*"}, onComplete: onComplete, onError: onError }); return d; } }, { name: "Read API: fetch() with MultiType, MultiValue Match", runTest: function(datastore, t){ // summary: // Simple test of a basic fetch againct an attribute that has different types for the value across items // description: // Simple test of a basic fetch againct an attribute that has different types for the value across items // Introduced because of tracker: #4931 var store = new datastore(tests.data.readOnlyItemFileTestTemplates.getTestData("data_multitype")); var d = new doh.Deferred(); function onComplete(items, request){ t.assertEqual(7, items.length); d.callback(true); } function onError(errData, request){ t.assertTrue(false); d.errback(errData); } store.fetch({ query: {value: "true"}, onComplete: onComplete, onError: onError }); return d; } }, { name: "Read API: getLabel()", runTest: function(datastore, t){ // summary: // Simple test of the getLabel function against a store set that has a label defined. // description: // Simple test of the getLabel function against a store set that has a label defined. var store = new datastore(tests.data.readOnlyItemFileTestTemplates.getTestData("countries")); var d = new doh.Deferred(); function onComplete(items, request){ t.assertEqual(items.length, 1); var label = store.getLabel(items[0]); t.assertTrue(label !== null); t.assertEqual("Ecuador", label); d.callback(true); } function onError(errData, request){ t.assertTrue(false); d.errback(errData); }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -