]> gerrit.simantics Code Review - simantics/district.git/blobdiff - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/normalize-package-data/test/consistency.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / node_modules / normalize-package-data / test / consistency.js
diff --git a/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/normalize-package-data/test/consistency.js b/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/normalize-package-data/test/consistency.js
new file mode 100644 (file)
index 0000000..4082be2
--- /dev/null
@@ -0,0 +1,36 @@
+var tap = require("tap")
+var normalize = require("../lib/normalize")
+var path = require("path")
+var fs = require("fs")
+var _ = require("underscore")
+var async = require("async")
+
+var data, clonedData
+var warn
+
+tap.test("consistent normalization", function(t) {
+  path.resolve(__dirname, "./fixtures/read-package-json.json")
+  fs.readdir (__dirname + "/fixtures", function (err, entries) {
+    // entries = ['coffee-script.json'] // uncomment to limit to a specific file
+    verifyConsistency = function(entryName, next) {
+      warn = function(msg) { 
+        // t.equal("",msg) // uncomment to have some kind of logging of warnings
+      }
+      filename = __dirname + "/fixtures/" + entryName
+      fs.readFile(filename, function(err, contents) {
+        if (err) return next(err)
+        data = JSON.parse(contents.toString())
+        normalize(data, warn)
+        clonedData = _.clone(data)
+        normalize(data, warn)
+        t.deepEqual(clonedData, data,
+          "Normalization of " + entryName + " is consistent.")
+        next(null)
+      }) // fs.readFile
+    } // verifyConsistency
+    async.forEach(entries, verifyConsistency, function(err) {
+      if (err) throw err
+      t.end()
+    })
+  }) // fs.readdir
+}) // tap.test
\ No newline at end of file