-
Notifications
You must be signed in to change notification settings - Fork 0
/
extra_tests.rb
53 lines (47 loc) · 935 Bytes
/
extra_tests.rb
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
#!/usr/local/bin/ruby
require './extra'
require "minitest/autorun"
class C
def foo; 1; end
end
class ActivationsTest < Minitest::Test
def test_activation
reset_cop_state
c = ExtraContext.new
c.adapt(C, :foo) { 2 }
c.activate
c.activate
c.activate
c.deactivate
c.deactivate
assert_equal(2, C.new.foo)
end
def test_deactivation
reset_cop_state
c = ExtraContext.new
c.adapt(C, :foo) { 2 }
c.activate
c.activate
c.activate
c.deactivate
c.deactivate
c.deactivate
assert_equal(1, C.new.foo)
end
def test_priority
reset_cop_state
c,d, e = ExtraContext.new, ExtraContext.new, ExtraContext.new
c.adapt(C, :foo) { 2 }
d.adapt(C, :foo) { 3 }
e.adapt(C, :foo) { 4 }
c.activate
d.activate
e.activate
d.activate
c.activate
d.deactivate
d.deactivate
e.deactivate
assert_equal(3, C.new.foo)
end
end