]> gerrit.simantics Code Review - simantics/district.git/blobdiff - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/test/tap/logout.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / test / tap / logout.js
diff --git a/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/test/tap/logout.js b/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/test/tap/logout.js
new file mode 100644 (file)
index 0000000..1d9392a
--- /dev/null
@@ -0,0 +1,67 @@
+var fs = require("fs")
+var path = require("path")
+
+var mkdirp = require("mkdirp")
+var mr = require("npm-registry-mock")
+var rimraf = require("rimraf")
+var test = require("tap").test
+
+var common = require("../common-tap.js")
+
+var pkg = path.resolve(__dirname, "logout")
+var outfile = path.join(pkg, "_npmrc")
+var opts = { cwd: pkg }
+
+var contents = function () {/*
+foo=boo
+//localhost:1337/:_authToken=glarb
+*/}.toString().split("\n").slice(1, -1).join("\n")
+
+function mocks (server) {
+  server.delete("/-/user/token/glarb")
+    .reply(200, {})
+}
+
+test("setup", function (t) {
+  cleanup()
+  setup()
+  t.end()
+})
+
+test("npm logout", function (t) {
+  mr({ port: common.port, plugin: mocks }, function (err, s) {
+    if (err) throw err
+
+    common.npm(
+    [
+      "logout",
+      "--registry", common.registry,
+      "--loglevel", "silent",
+      "--userconfig", outfile
+    ],
+    opts,
+    function (err, code) {
+      t.ifError(err, "no error output")
+      t.notOk(code, "exited OK")
+
+      var config = fs.readFileSync(outfile, "utf8")
+      t.equal(config, "foo=boo\n", "creds gone")
+      s.close()
+      t.end()
+    })
+  })
+})
+
+test("cleanup", function (t) {
+  cleanup()
+  t.end()
+})
+
+function setup () {
+  mkdirp.sync(pkg)
+  fs.writeFileSync(outfile, contents)
+}
+
+function cleanup () {
+  rimraf.sync(pkg)
+}