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
63
64
65
66
67
68
|
@use 'true' as *;
@use '../src/contexts';
@include describe('contexts') {
@include it('Creating / deleting context stacks') {
@include assert-equal(contexts.create('test'), null, 'Check if context stack was created');
@include assert-equal(contexts.delete('test'), null, 'Check if context stack was deleted');
}
@include it('Adding / removing contexts') {
@include assert-equal(contexts.create('test'), null, 'Check if context stack was created');
@include assert-equal(contexts.push('test', 'ctx', 1234), 'ctx' 1234, 'Check if context 1 was pushed');
@include assert-equal(contexts.push('test', 'another', 'text'), 'another' 'text', 'Check if context 2 was pushed');
@include assert-equal(contexts.push('test', 'ctx', 56), 'ctx' 56, 'Check if context 3 was pushed');
@include assert-equal(contexts.pop('test'), 'ctx' 56, 'Check if context 3 was popped');
@include assert-equal(contexts.pop('test'), 'another' 'text', 'Check if context 2 was popped');
@include assert-equal(contexts.pop('test'), 'ctx' 1234, 'Check if context 1 was popped');
@include assert-equal(contexts.delete('test'), null, 'Check if context stack was deleted');
}
@include it('Clearing / counting context stacks') {
@include assert-equal(contexts.create('test'), null, 'Check if context stack was created');
@include assert-equal(contexts.push('test', 'ctx', 1234), 'ctx' 1234, 'Check if context 1 was pushed');
@include assert-equal(contexts.push('test', 'another', 'text'), 'another' 'text', 'Check if context 2 was pushed');
@include assert-equal(contexts.push('test', 'ctx', 56), 'ctx' 56, 'Check if context 3 was pushed');
@include assert-equal(contexts.count('test'), 3, 'Check if context stack contains 3 contexts');
@include assert-equal(contexts.pop('test'), 'ctx' 56, 'Check if context 3 was popped');
@include assert-equal(contexts.count('test'), 2, 'Check if context stack contains 2 contexts');
@include assert-equal(contexts.clear('test'), null, 'Check if context stack was cleared');
@include assert-equal(contexts.count('test'), 0, 'Check if context stack contains no contexts');
@include assert-equal(contexts.delete('test'), null, 'Check if context stack was deleted');
}
@include it('Retrieving contexts') {
@include assert-equal(contexts.create('test'), null, 'Check if context stack was created');
@include assert-equal(contexts.push('test', 'ctx', 1234), 'ctx' 1234, 'Check if context 1 was pushed');
@include assert-equal(contexts.push('test', 'another', 'text'), 'another' 'text', 'Check if context 2 was pushed');
@include assert-equal(contexts.push('test', 'ctx', 56), 'ctx' 56, 'Check if context 3 was pushed');
@include assert-equal(contexts.get('test', 1), 'ctx' 56, 'Check if context at position 1 is context 3');
@include assert-equal(contexts.get('test', 'ctx'), 'ctx' 56, 'Check if latest context with id "ctx" is context 3');
@include assert-equal(contexts.get('test', 2), 'another' 'text', 'Check if latest context with id "another" is context 2');
@include assert-equal(contexts.pop('test'), 'ctx' 56, 'Check if context 3 was popped');
@include assert-equal(contexts.get('test', 1), 'another' 'text', 'Check if context at position 1 is context 2');
@include assert-equal(contexts.get('test', -1), 'ctx' 1234, 'Check if latest context with id "ctx" is context 1');
@include assert-equal(contexts.push('test', 'more', 'string'), 'more' 'string', 'Check if context 4 was pushed');
@include assert-equal(contexts.get('test', 1), 'more' 'string', 'Check if context at position 1 is context 4');
@include assert-equal(contexts.get('test', 'more'), 'more' 'string', 'Check if latest context with id "more" is context 4');
@include assert-equal(contexts.pop('test'), 'more' 'string', 'Check if context 4 was popped');
@include assert-equal(contexts.pop('test'), 'another' 'text', 'Check if context 2 was popped');
@include assert-equal(contexts.get('test', 1), contexts.get('test', -1), 'Check if first and last context are context 1');
@include assert-equal(contexts.delete('test'), null, 'Check if context stack was deleted');
}
}
|