More updates to stop using dev or alpha or beta versions.
[yaffs-website] / node_modules / normalize-package-data / test / basic.js
1 var tap = require("tap")
2 var normalize = require("../lib/normalize")
3 var path = require("path")
4 var fs = require("fs")
5
6 tap.test("basic test", function (t) {
7   var p = path.resolve(__dirname, "./fixtures/read-package-json.json")
8   fs.readFile (p, function (err, contents) {
9     if (err) throw err;
10     var originalData = JSON.parse(contents.toString())
11     var data = JSON.parse(contents.toString())
12     normalize(data)
13     t.ok(data)
14     verifyFields(t, data, originalData)
15     t.end()
16   })
17 })
18
19 function verifyFields (t, normalized, original) {
20   t.equal(normalized.version, original.version, "Version field stays same")
21   t.equal(normalized._id, normalized.name + "@" + normalized.version, "It gets good id.")
22   t.equal(normalized.name, original.name, "Name stays the same.")
23   t.type(normalized.author, "object", "author field becomes object")
24   t.deepEqual(normalized.scripts, original.scripts, "scripts field (object) stays same")
25   t.equal(normalized.main, original.main)
26   // optional deps are folded in.
27   t.deepEqual(normalized.optionalDependencies,
28               original.optionalDependencies)
29   t.has(normalized.dependencies, original.optionalDependencies, "opt depedencies are copied into dependencies")
30   t.has(normalized.dependencies, original.dependencies, "regular depedencies stay in place")
31   t.deepEqual(normalized.devDependencies, original.devDependencies)
32   t.type(normalized.bugs, "object", "bugs should become object")
33   t.equal(normalized.bugs.url, "https://github.com/isaacs/read-package-json/issues")
34 }