reset.js
1.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
/*eslint-env mocha*/
/*jshint -W100*/
var assert = require('power-assert');
var typeOf = require('type-of');
var helper = require('./_helper');
var cli = require('../index');
describe('reset', function () {
it('パラメータ変更 => reset => 各パラメータが初期化される', function () {
cli.set('browser', 'googlebot');
cli.set('timeout', 9999);
cli.set('gzip', false);
cli.set('referer', false);
cli.set('followMetaRefresh', true);
cli.set('maxDataSize', 9999);
cli.set('debug', true);
cli.reset();
assert.deepEqual(cli.headers, {});
assert(cli.timeout === 30000);
assert(cli.gzip === true);
assert(cli.referer === true);
assert(cli.followMetaRefresh === false);
assert(cli.maxDataSize === null);
assert(cli.debug === false);
});
it('アクセス => アクセス => クッキーが保持される', function () {
var url = helper.url('~session');
var sid = null;
return cli.fetch(url)
.then(function (result) {
sid = result.response.cookies.x_session_id;
assert(typeOf(sid) === 'string');
assert(/user_[0-9a-z]{32}$/i.test(sid));
return cli.fetch(url);
})
.then(function (result) {
assert(sid === result.response.cookies.x_session_id);
});
});
it('アクセス => reset => アクセス => クッキーが破棄される', function () {
var url = helper.url('~session');
var sid = null;
return cli.fetch(url)
.then(function (result) {
sid = result.response.cookies.x_session_id;
assert(typeOf(sid) === 'string');
assert(/user_[0-9a-z]{32}$/i.test(sid));
cli.reset();
return cli.fetch(url);
})
.then(function (result) {
var newSid = result.response.cookies.x_session_id;
assert(typeOf(newSid) === 'string');
assert(/user_[0-9a-z]{32}$/i.test(newSid));
assert(sid !== newSid);
});
});
});