summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/libnpmteam/test/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/node_modules/libnpmteam/test/index.js')
-rw-r--r--deps/npm/node_modules/libnpmteam/test/index.js138
1 files changed, 138 insertions, 0 deletions
diff --git a/deps/npm/node_modules/libnpmteam/test/index.js b/deps/npm/node_modules/libnpmteam/test/index.js
new file mode 100644
index 0000000000..2271c28840
--- /dev/null
+++ b/deps/npm/node_modules/libnpmteam/test/index.js
@@ -0,0 +1,138 @@
+'use strict'
+
+const figgyPudding = require('figgy-pudding')
+const getStream = require('get-stream')
+const {test} = require('tap')
+const tnock = require('./util/tnock.js')
+
+const team = require('../index.js')
+
+const REG = 'http://localhost:1337'
+const OPTS = figgyPudding({})({
+ registry: REG
+})
+
+test('create', t => {
+ tnock(t, REG).put(
+ '/-/org/foo/team', {name: 'cli'}
+ ).reply(201, {name: 'cli'})
+ return team.create('@foo:cli', OPTS).then(ret => {
+ t.deepEqual(ret, {name: 'cli'}, 'request succeeded')
+ })
+})
+
+test('create bad entity name', t => {
+ return team.create('go away', OPTS).then(
+ () => { throw new Error('should not succeed') },
+ err => { t.ok(err, 'error on bad entity name') }
+ )
+})
+
+test('create empty entity', t => {
+ return team.create(undefined, OPTS).then(
+ () => { throw new Error('should not succeed') },
+ err => { t.ok(err, 'error on bad entity name') }
+ )
+})
+
+test('create w/ description', t => {
+ tnock(t, REG).put('/-/org/foo/team', {
+ name: 'cli',
+ description: 'just some cool folx'
+ }).reply(201, {name: 'cli'})
+ return team.create('@foo:cli', OPTS.concat({
+ description: 'just some cool folx'
+ })).then(ret => {
+ t.deepEqual(ret, {name: 'cli'}, 'no desc in return')
+ })
+})
+
+test('destroy', t => {
+ tnock(t, REG).delete(
+ '/-/team/foo/cli'
+ ).reply(204, {})
+ return team.destroy('@foo:cli', OPTS).then(ret => {
+ t.deepEqual(ret, {}, 'request succeeded')
+ })
+})
+
+test('add', t => {
+ tnock(t, REG).put(
+ '/-/team/foo/cli/user', {user: 'zkat'}
+ ).reply(201, {})
+ return team.add('zkat', '@foo:cli', OPTS).then(ret => {
+ t.deepEqual(ret, {}, 'request succeeded')
+ })
+})
+
+test('rm', t => {
+ tnock(t, REG).delete(
+ '/-/team/foo/cli/user', {user: 'zkat'}
+ ).reply(204, {})
+ return team.rm('zkat', '@foo:cli', OPTS).then(ret => {
+ t.deepEqual(ret, {}, 'request succeeded')
+ })
+})
+
+test('lsTeams', t => {
+ tnock(t, REG).get(
+ '/-/org/foo/team?format=cli'
+ ).reply(200, ['foo:bar', 'foo:cli'])
+ return team.lsTeams('foo', OPTS).then(ret => {
+ t.deepEqual(ret, ['foo:bar', 'foo:cli'], 'got teams')
+ })
+})
+
+test('lsTeams error', t => {
+ tnock(t, REG).get(
+ '/-/org/foo/team?format=cli'
+ ).reply(500)
+ return team.lsTeams('foo', OPTS).then(
+ () => { throw new Error('should not succeed') },
+ err => { t.equal(err.code, 'E500', 'got error code') }
+ )
+})
+
+test('lsTeams.stream', t => {
+ tnock(t, REG).get(
+ '/-/org/foo/team?format=cli'
+ ).reply(200, ['foo:bar', 'foo:cli'])
+ return getStream.array(team.lsTeams.stream('foo', OPTS)).then(ret => {
+ t.deepEqual(ret, ['foo:bar', 'foo:cli'], 'got teams')
+ })
+})
+
+test('lsUsers', t => {
+ tnock(t, REG).get(
+ '/-/team/foo/cli/user?format=cli'
+ ).reply(500)
+ return team.lsUsers('@foo:cli', OPTS).then(
+ () => { throw new Error('should not succeed') },
+ err => { t.equal(err.code, 'E500', 'got error code') }
+ )
+})
+
+test('lsUsers error', t => {
+ tnock(t, REG).get(
+ '/-/team/foo/cli/user?format=cli'
+ ).reply(200, ['iarna', 'zkat'])
+ return team.lsUsers('@foo:cli', OPTS).then(ret => {
+ t.deepEqual(ret, ['iarna', 'zkat'], 'got team members')
+ })
+})
+
+test('lsUsers.stream', t => {
+ tnock(t, REG).get(
+ '/-/team/foo/cli/user?format=cli'
+ ).reply(200, ['iarna', 'zkat'])
+ return getStream.array(team.lsUsers.stream('@foo:cli', OPTS)).then(ret => {
+ t.deepEqual(ret, ['iarna', 'zkat'], 'got team members')
+ })
+})
+
+test('edit', t => {
+ t.throws(() => {
+ team.edit()
+ }, /not implemented/)
+ t.done()
+})