]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/npm-registry-client/test/fetch-authed.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / node_modules / npm-registry-client / test / fetch-authed.js
1 var resolve = require('path').resolve
2 var createReadStream = require('graceful-fs').createReadStream
3 var readFileSync = require('graceful-fs').readFileSync
4
5 var tap = require('tap')
6 var cat = require('concat-stream')
7
8 var server = require('./lib/server.js')
9 var common = require('./lib/common.js')
10
11 var tgz = resolve(__dirname, './fixtures/underscore/1.3.3/package.tgz')
12
13 tap.test('basic fetch with scoped always-auth enabled', function (t) {
14   server.expect('/underscore/-/underscore-1.3.3.tgz', function (req, res) {
15     t.equal(req.method, 'GET', 'got expected method')
16     t.equal(
17       req.headers.authorization,
18       'Basic dXNlcm5hbWU6JTEyMzRAYXNkZiU=',
19       'got expected auth header'
20     )
21
22     res.writeHead(200, {
23       'content-type': 'application/x-tar',
24       'content-encoding': 'gzip'
25     })
26
27     createReadStream(tgz).pipe(res)
28   })
29
30   var auth = {
31     username: 'username',
32     password: '%1234@asdf%',
33     email: 'i@izs.me',
34     alwaysAuth: true
35   }
36
37   var client = common.freshClient()
38   var authed = { auth: auth }
39   client.fetch(
40     'http://localhost:1337/underscore/-/underscore-1.3.3.tgz',
41     authed,
42     function (er, res) {
43       t.ifError(er, 'loaded successfully')
44
45       var sink = cat(function (data) {
46         t.deepEqual(data, readFileSync(tgz))
47         server.close()
48         t.end()
49       })
50
51       res.on('error', function (error) {
52         t.ifError(error, 'no errors on stream')
53       })
54
55       res.pipe(sink)
56     }
57   )
58 })