mock seed data entry point; mock org tree data
authorBill Erickson <berick@esilibrary.com>
Tue, 6 May 2014 20:16:29 +0000 (16:16 -0400)
committerBill Erickson <berick@esilibrary.com>
Tue, 6 May 2014 20:16:29 +0000 (16:16 -0400)
Signed-off-by: Bill Erickson <berick@esilibrary.com>
Open-ILS/web/js/ui/default/staff/test/data/eg_mock.js [new file with mode: 0644]
Open-ILS/web/js/ui/default/staff/test/karma.conf.js
Open-ILS/web/js/ui/default/staff/test/unit/egIDL.js
Open-ILS/web/js/ui/default/staff/test/unit/egOrg.js

diff --git a/Open-ILS/web/js/ui/default/staff/test/data/eg_mock.js b/Open-ILS/web/js/ui/default/staff/test/data/eg_mock.js
new file mode 100644 (file)
index 0000000..956d46c
--- /dev/null
@@ -0,0 +1,50 @@
+/**
+ * Mock data required by multiple unit tests.
+ */
+
+window._eg_mock_data = {
+
+    // builds a mock org unit tree fleshed with ou_types and
+    // absorbs the tree into egEnv
+    orgTree : function(egIDL, egEnv) {
+        var type1 = new egIDL.aout();
+        type1.id(1);
+        type1.depth(0);
+
+        var type2 = new egIDL.aout();
+        type2.id(2);
+        type2.depth(1);
+        type2.parent(1);
+
+        var type3 = new egIDL.aout();
+        type3.id(3);
+        type3.depth(2);
+        type3.parent(2);
+
+        var org1 = new egIDL.aou(); 
+        org1.id(1);
+        org1.ou_type(type1);
+
+        var org2 = new egIDL.aou(); 
+        org2.id(2); 
+        org2.parent_ou(1);
+        org2.ou_type(type2);
+
+        var org3 = new egIDL.aou(); 
+        org3.id(3); 
+        org3.parent_ou(1);
+        org3.ou_type(type2);
+
+        var org4 = new egIDL.aou(); 
+        org4.id(4); 
+        org4.parent_ou(2);
+        org4.ou_type(type3);
+
+        org1.children([org2, org3]);
+        org2.children([org4]);
+        org3.children([]);
+        org4.children([]);
+
+        egEnv.absorbTree(org1, 'aou');
+    }
+}
index afcea84..235c7b4 100644 (file)
@@ -19,6 +19,7 @@ module.exports = function(config){
 
       // mock data for testing only
       'test/data/IDL2js.js',
+      'test/data/eg_mock.js',
 
       // service/*.js have to be loaded in order
       'services/core.js',
@@ -43,7 +44,8 @@ module.exports = function(config){
       'circ/**/*.js',
       'cat/**/*.js',
       'admin/**/*.js',
-      'test/unit/egIDL.js', // order matters here
+      'test/unit/egIDL.js', // order matters for some of these
+      'test/unit/egOrg.js', 
       'test/unit/**/*.js'
     ],
 
index 621cf25..bbf4e35 100644 (file)
@@ -20,7 +20,6 @@ describe('egIDL', function(){
         org.name('AN ORG');
         expect(org.name()).toBe('AN ORG');
     }));
-
 });
 
 
index f75a6dd..f919d66 100644 (file)
@@ -5,16 +5,7 @@ describe('egOrg', function(){
 
     function mkTree(egIDL, egEnv) { // FIXME: external sample data
         egIDL.parseIDL();
-        var org1 = new egIDL.aou(); org1.id(1);
-        var org2 = new egIDL.aou(); org2.id(2); org2.parent_ou(1);
-        var org3 = new egIDL.aou(); org3.id(3); org3.parent_ou(1);
-        var org4 = new egIDL.aou(); org4.id(4); org4.parent_ou(2);
-        org1.children([org2, org3]);
-        org2.children([org4]);
-        org3.children([]);
-        org4.children([]);
-
-        egEnv.absorbTree(org1, 'aou');
+        window._eg_mock_data.orgTree(egIDL, egEnv);
     }
 
     it('should provide get by ID', inject(function(egIDL, egEnv, egOrg) {