summaryrefslogtreecommitdiffstats
path: root/node_modules/stream-http/test/node/http-browserify.js
diff options
context:
space:
mode:
authorGravatar Piotr Russ <mail@pruss.it> 2020-11-16 00:10:28 +0100
committerGravatar Piotr Russ <mail@pruss.it> 2020-11-16 00:10:28 +0100
commite06ec920f7a5d784e674c4c4b4e6d1da3dc7391d (patch)
tree55713f725f77b44ebfec86e4eec3ce33e71458ca /node_modules/stream-http/test/node/http-browserify.js
downloadwebsite_creator-e06ec920f7a5d784e674c4c4b4e6d1da3dc7391d.tar.gz
website_creator-e06ec920f7a5d784e674c4c4b4e6d1da3dc7391d.tar.bz2
website_creator-e06ec920f7a5d784e674c4c4b4e6d1da3dc7391d.zip
api, login, auth
Diffstat (limited to 'node_modules/stream-http/test/node/http-browserify.js')
-rw-r--r--node_modules/stream-http/test/node/http-browserify.js147
1 files changed, 147 insertions, 0 deletions
diff --git a/node_modules/stream-http/test/node/http-browserify.js b/node_modules/stream-http/test/node/http-browserify.js
new file mode 100644
index 0000000..42a718f
--- /dev/null
+++ b/node_modules/stream-http/test/node/http-browserify.js
@@ -0,0 +1,147 @@
+// These tests are taken from http-browserify to ensure compatibility with
+// that module
+var test = require('tape')
+var url = require('url')
+
+var location = 'http://localhost:8081/foo/123'
+
+var noop = function() {}
+global.location = url.parse(location)
+global.XMLHttpRequest = function() {
+ this.open = noop
+ this.send = noop
+ this.withCredentials = false
+}
+
+var moduleName = require.resolve('../../')
+delete require.cache[moduleName]
+var http = require('../../')
+
+test('Make sure http object has correct properties', function (t) {
+ t.ok(http.Agent, 'Agent defined')
+ t.ok(http.ClientRequest, 'ClientRequest defined')
+ t.ok(http.ClientRequest.prototype, 'ClientRequest.prototype defined')
+ t.ok(http.IncomingMessage, 'IncomingMessage defined')
+ t.ok(http.IncomingMessage.prototype, 'IncomingMessage.prototype defined')
+ t.ok(http.METHODS, 'METHODS defined')
+ t.ok(http.STATUS_CODES, 'STATUS_CODES defined')
+ t.ok(http.get, 'get defined')
+ t.ok(http.globalAgent, 'globalAgent defined')
+ t.ok(http.request, 'request defined')
+ t.end()
+})
+
+test('Test simple url string', function(t) {
+ var testUrl = { path: '/api/foo' }
+ var request = http.get(testUrl, noop)
+
+ var resolved = url.resolve(location, request._opts.url)
+ t.equal(resolved, 'http://localhost:8081/api/foo', 'Url should be correct')
+ t.end()
+
+})
+
+test('Test full url object', function(t) {
+ var testUrl = {
+ host: "localhost:8081",
+ hostname: "localhost",
+ href: "http://localhost:8081/api/foo?bar=baz",
+ method: "GET",
+ path: "/api/foo?bar=baz",
+ pathname: "/api/foo",
+ port: "8081",
+ protocol: "http:",
+ query: "bar=baz",
+ search: "?bar=baz",
+ slashes: true
+ }
+
+ var request = http.get(testUrl, noop)
+
+ var resolved = url.resolve(location, request._opts.url)
+ t.equal(resolved, 'http://localhost:8081/api/foo?bar=baz', 'Url should be correct')
+ t.end()
+})
+
+test('Test alt protocol', function(t) {
+ var params = {
+ protocol: "foo:",
+ hostname: "localhost",
+ port: "3000",
+ path: "/bar"
+ }
+
+ var request = http.get(params, noop)
+
+ var resolved = url.resolve(location, request._opts.url)
+ t.equal(resolved, 'foo://localhost:3000/bar', 'Url should be correct')
+ t.end()
+})
+
+test('Test page with \'file:\' protocol', function (t) {
+ var params = {
+ hostname: 'localhost',
+ port: 3000,
+ path: '/bar'
+ }
+
+ var fileLocation = 'file:///home/me/stuff/index.html'
+
+ var normalLocation = global.location
+ global.location = url.parse(fileLocation) // Temporarily change the location
+ var request = http.get(params, noop)
+ global.location = normalLocation // Reset the location
+
+ var resolved = url.resolve(fileLocation, request._opts.url)
+ t.equal(resolved, 'http://localhost:3000/bar', 'Url should be correct')
+ t.end()
+})
+
+test('Test string as parameters', function(t) {
+ var testUrl = '/api/foo'
+ var request = http.get(testUrl, noop)
+
+ var resolved = url.resolve(location, request._opts.url)
+ t.equal(resolved, 'http://localhost:8081/api/foo', 'Url should be correct')
+ t.end()
+})
+
+test('Test withCredentials param', function(t) {
+ var url = '/api/foo'
+
+ var request = http.get({ url: url, withCredentials: false }, noop)
+ t.equal(request._xhr.withCredentials, false, 'xhr.withCredentials should be false')
+
+ var request = http.get({ url: url, withCredentials: true }, noop)
+ t.equal(request._xhr.withCredentials, true, 'xhr.withCredentials should be true')
+
+ var request = http.get({ url: url }, noop)
+ t.equal(request._xhr.withCredentials, false, 'xhr.withCredentials should be false')
+
+ t.end()
+})
+
+test('Test ipv6 address', function(t) {
+ var testUrl = 'http://[::1]:80/foo'
+ var request = http.get(testUrl, noop)
+
+ var resolved = url.resolve(location, request._opts.url)
+ t.equal(resolved, 'http://[::1]:80/foo', 'Url should be correct')
+ t.end()
+})
+
+test('Test relative path in url', function(t) {
+ var params = { path: './bar' }
+ var request = http.get(params, noop)
+
+ var resolved = url.resolve(location, request._opts.url)
+ t.equal(resolved, 'http://localhost:8081/foo/bar', 'Url should be correct')
+ t.end()
+})
+
+test('Cleanup', function (t) {
+ delete global.location
+ delete global.XMLHttpRequest
+ delete require.cache[moduleName]
+ t.end()
+})