mirror of
https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake.git
synced 2025-10-14 14:11:23 -04:00
38 lines
1.5 KiB
CoffeeScript
38 lines
1.5 KiB
CoffeeScript
###
|
|
jasmine tests for Snowflake websocket
|
|
###
|
|
|
|
describe 'BuildUrl', ->
|
|
it 'should parse just protocol and host', ->
|
|
expect(WS.buildUrl('http', 'example.com')).toBe 'http://example.com'
|
|
it 'should handle different ports', ->
|
|
expect WS.buildUrl 'http', 'example.com', 80
|
|
.toBe 'http://example.com'
|
|
expect WS.buildUrl 'http', 'example.com', 81
|
|
.toBe 'http://example.com:81'
|
|
expect WS.buildUrl 'http', 'example.com', 443
|
|
.toBe 'http://example.com:443'
|
|
expect WS.buildUrl 'http', 'example.com', 444
|
|
.toBe 'http://example.com:444'
|
|
it 'should handle paths', ->
|
|
expect WS.buildUrl 'http', 'example.com', 80, '/'
|
|
.toBe 'http://example.com/'
|
|
expect WS.buildUrl 'http', 'example.com', 80,'/test?k=%#v'
|
|
.toBe 'http://example.com/test%3Fk%3D%25%23v'
|
|
expect WS.buildUrl 'http', 'example.com', 80, '/test'
|
|
.toBe 'http://example.com/test'
|
|
it 'should handle params', ->
|
|
expect WS.buildUrl 'http', 'example.com', 80, '/test', [['k', '%#v']]
|
|
.toBe 'http://example.com/test?k=%25%23v'
|
|
expect WS.buildUrl 'http', 'example.com', 80, '/test', [['a', 'b'], ['c', 'd']]
|
|
.toBe 'http://example.com/test?a=b&c=d'
|
|
it 'should handle ips', ->
|
|
expect WS.buildUrl 'http', '1.2.3.4'
|
|
.toBe 'http://1.2.3.4'
|
|
expect WS.buildUrl 'http', '1:2::3:4'
|
|
.toBe 'http://[1:2::3:4]'
|
|
it 'should handle bogus', ->
|
|
expect WS.buildUrl 'http', 'bog][us'
|
|
.toBe 'http://bog%5D%5Bus'
|
|
expect WS.buildUrl 'http', 'bog:u]s'
|
|
.toBe 'http://bog%3Au%5Ds'
|