]> gerrit.simantics Code Review - simantics/district.git/blobdiff - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/test/tap/outdated-private.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / test / tap / outdated-private.js
diff --git a/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/test/tap/outdated-private.js b/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/test/tap/outdated-private.js
new file mode 100644 (file)
index 0000000..882d7d9
--- /dev/null
@@ -0,0 +1,112 @@
+var common = require("../common-tap.js")
+var test = require("tap").test
+var npm = require("../../")
+var rimraf = require("rimraf")
+var path = require("path")
+var mr = require("npm-registry-mock")
+var osenv = require("osenv")
+var mkdirp = require("mkdirp")
+var fs = require("graceful-fs")
+
+var pkg = path.resolve(__dirname, "outdated-private")
+var pkgLocalPrivate = path.resolve(pkg, "local-private")
+var pkgScopedLocalPrivate = path.resolve(pkg, "another-local-private")
+var pkgLocalUnderscore = path.resolve(pkg, "underscore")
+
+var pjParent = JSON.stringify({
+  name         : "outdated-private",
+  version      : "1.0.0",
+  dependencies : {
+    "local-private" : "file:local-private",
+    "@scoped/another-local-private" : "file:another-local-private",
+    "underscore" : "file:underscore"
+  }
+}, null, 2) + "\n"
+
+var pjLocalPrivate = JSON.stringify({
+  name         : "local-private",
+  version      : "1.0.0",
+  private      : true
+}, null, 2) + "\n"
+
+var pjLocalPrivateBumped = JSON.stringify({
+  name         : "local-private",
+  version      : "1.1.0",
+  private      : true
+}, null, 2) + "\n"
+
+var pjScopedLocalPrivate = JSON.stringify({
+  name         : "@scoped/another-local-private",
+  version      : "1.0.0",
+  private      : true
+}, null, 2) + "\n"
+
+var pjLocalUnderscore = JSON.stringify({
+  name         : "underscore",
+  version      : "1.3.1"
+}, null, 2) + "\n"
+
+test("setup", function (t) {
+  bootstrap()
+  t.end()
+})
+
+test("outdated ignores private modules", function (t) {
+  t.plan(3)
+  process.chdir(pkg)
+  mr({ port : common.port }, function (err, s) {
+    npm.load(
+      {
+        loglevel  : "silent",
+        parseable : true,
+        registry  : common.registry
+      },
+      function () {
+        npm.install(".", function (err) {
+          t.ifError(err, "install success")
+          bumpLocalPrivate()
+          npm.outdated(function (er, d) {
+            t.ifError(er, "outdated success")
+            t.deepEqual(d, [[
+              path.resolve(__dirname, "outdated-private"),
+              "underscore",
+              "1.3.1",
+              "1.5.1",
+              "1.5.1",
+              "underscore@1.5.1"
+            ]])
+            s.close()
+          })
+        })
+      }
+    )
+  })
+})
+
+test("cleanup", function (t) {
+  cleanup()
+  t.end()
+})
+
+function bootstrap () {
+  mkdirp.sync(pkg)
+  fs.writeFileSync(path.resolve(pkg, "package.json"), pjParent)
+
+  mkdirp.sync(pkgLocalPrivate)
+  fs.writeFileSync(path.resolve(pkgLocalPrivate, "package.json"), pjLocalPrivate)
+
+  mkdirp.sync(pkgScopedLocalPrivate)
+  fs.writeFileSync(path.resolve(pkgScopedLocalPrivate, "package.json"), pjScopedLocalPrivate)
+
+  mkdirp.sync(pkgLocalUnderscore)
+  fs.writeFileSync(path.resolve(pkgLocalUnderscore, "package.json"), pjLocalUnderscore)
+}
+
+function bumpLocalPrivate () {
+  fs.writeFileSync(path.resolve(pkgLocalPrivate, "package.json"), pjLocalPrivateBumped)
+}
+
+function cleanup () {
+  process.chdir(osenv.tmpdir())
+  rimraf.sync(pkg)
+}