vedeu 0.4.53 → 0.4.54
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/vedeu/api.rb +68 -5
- data/lib/vedeu/bindings/system.rb +0 -15
- data/lib/vedeu/bindings/visibility.rb +57 -13
- data/lib/vedeu/buffers/buffer.rb +5 -56
- data/lib/vedeu/cursor/cursor.rb +24 -16
- data/lib/vedeu/exceptions.rb +1 -1
- data/lib/vedeu/models/group.rb +39 -4
- data/lib/vedeu/models/interface.rb +41 -5
- data/lib/vedeu/null/buffer.rb +5 -0
- data/lib/vedeu/null/interface.rb +15 -0
- data/lib/vedeu/output/all.rb +1 -1
- data/lib/vedeu/output/background.rb +1 -1
- data/lib/vedeu/output/clear/named_interface.rb +0 -2
- data/lib/vedeu/output/{translator.rb → colour_translator.rb} +5 -5
- data/lib/vedeu/output/foreground.rb +1 -1
- data/lib/vedeu/output/render_border.rb +0 -1
- data/lib/vedeu/repositories/model.rb +15 -6
- data/lib/vedeu/repositories/repositories/buffers.rb +6 -0
- data/lib/vedeu/repositories/repositories/cursors.rb +6 -0
- data/lib/vedeu/repositories/repositories/groups.rb +6 -0
- data/lib/vedeu/repositories/repositories/interfaces.rb +6 -0
- data/lib/vedeu/support/all.rb +1 -2
- data/lib/vedeu/support/template.rb +7 -0
- data/lib/vedeu/support/toggleable.rb +98 -0
- data/lib/vedeu/version.rb +1 -1
- data/test/lib/vedeu/api_test.rb +7 -1
- data/test/lib/vedeu/bindings/system_test.rb +5 -16
- data/test/lib/vedeu/bindings/visibility_test.rb +4 -0
- data/test/lib/vedeu/buffers/buffer_test.rb +9 -91
- data/test/lib/vedeu/cursor/cursor_test.rb +4 -6
- data/test/lib/vedeu/dsl/geometry_test.rb +24 -0
- data/test/lib/vedeu/models/group_test.rb +16 -14
- data/test/lib/vedeu/models/interface_test.rb +1 -1
- data/test/lib/vedeu/null/buffer_test.rb +6 -0
- data/test/lib/vedeu/null/interface_test.rb +18 -0
- data/test/lib/vedeu/output/clear/named_interface_test.rb +10 -19
- data/test/lib/vedeu/output/{translator_test.rb → colour_translator_test.rb} +5 -5
- data/test/lib/vedeu/support/toggleable_test.rb +69 -0
- data/vedeu.gemspec +1 -1
- metadata +10 -13
- data/lib/vedeu/support/options.rb +0 -70
- data/lib/vedeu/support/visibility.rb +0 -122
- data/test/lib/vedeu/support/options_test.rb +0 -70
- data/test/lib/vedeu/support/visibility_test.rb +0 -95
@@ -1,70 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
module Vedeu
|
4
|
-
|
5
|
-
describe Options do
|
6
|
-
|
7
|
-
let(:described) { Vedeu::Options }
|
8
|
-
let(:instance) { described.new(options) }
|
9
|
-
let(:options) {
|
10
|
-
{}
|
11
|
-
}
|
12
|
-
|
13
|
-
describe '#initialize' do
|
14
|
-
it { instance.must_be_instance_of(described) }
|
15
|
-
it { instance.instance_variable_get('@_options').must_equal(options) }
|
16
|
-
end
|
17
|
-
|
18
|
-
describe '#_build' do
|
19
|
-
subject { instance._build }
|
20
|
-
|
21
|
-
it { subject.must_be_instance_of(described) }
|
22
|
-
|
23
|
-
context 'with no options' do
|
24
|
-
it 'defines no methods' do
|
25
|
-
subject
|
26
|
-
instance._defined.must_equal([])
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
context 'with a predicate option' do
|
31
|
-
let(:options) {
|
32
|
-
{
|
33
|
-
predicate: false
|
34
|
-
}
|
35
|
-
}
|
36
|
-
|
37
|
-
it 'defines the method and the predicate as an alias to that method' do
|
38
|
-
subject
|
39
|
-
instance.must_respond_to(:predicate)
|
40
|
-
instance.predicate.must_equal(false)
|
41
|
-
|
42
|
-
instance.must_respond_to(:predicate?)
|
43
|
-
instance.predicate?.must_equal(false)
|
44
|
-
|
45
|
-
instance._defined.must_equal([:predicate, :predicate?])
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
|
-
context 'with a normal option' do
|
50
|
-
let(:options) {
|
51
|
-
{
|
52
|
-
some_option: 'some_value'
|
53
|
-
}
|
54
|
-
}
|
55
|
-
|
56
|
-
it 'defines the method' do
|
57
|
-
subject
|
58
|
-
instance.must_respond_to(:some_option)
|
59
|
-
instance.some_option.must_equal('some_value')
|
60
|
-
|
61
|
-
instance.wont_respond_to(:some_option?)
|
62
|
-
|
63
|
-
instance._defined.must_equal([:some_option])
|
64
|
-
end
|
65
|
-
end
|
66
|
-
end
|
67
|
-
|
68
|
-
end # Option
|
69
|
-
|
70
|
-
end # Vedeu
|
@@ -1,95 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
module Vedeu
|
4
|
-
|
5
|
-
class VisibilityTestModel
|
6
|
-
attr_accessor :visible
|
7
|
-
alias_method :visible?, :visible
|
8
|
-
|
9
|
-
def initialize(visible = true)
|
10
|
-
@visible = visible
|
11
|
-
end
|
12
|
-
|
13
|
-
def store
|
14
|
-
self
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
describe Visibility do
|
19
|
-
|
20
|
-
let(:described) { Vedeu::Visibility }
|
21
|
-
let(:instance) { described.new(model) }
|
22
|
-
let(:model) { VisibilityTestModel.new(visible) }
|
23
|
-
let(:visible) { true }
|
24
|
-
let(:_name) { 'Vedeu::Visibility' }
|
25
|
-
|
26
|
-
describe '#initialize' do
|
27
|
-
it { instance.must_be_instance_of(described) }
|
28
|
-
it { instance.instance_variable_get('@model').must_equal(model) }
|
29
|
-
end
|
30
|
-
|
31
|
-
describe '.show' do
|
32
|
-
subject { described.show(model) }
|
33
|
-
|
34
|
-
it { subject.must_equal(model) }
|
35
|
-
|
36
|
-
it { subject; instance.state.must_equal(:visible) }
|
37
|
-
end
|
38
|
-
|
39
|
-
describe '.hide' do
|
40
|
-
subject { described.hide(model) }
|
41
|
-
|
42
|
-
it { subject.must_equal(model) }
|
43
|
-
|
44
|
-
it { subject; instance.state.must_equal(:invisible) }
|
45
|
-
end
|
46
|
-
|
47
|
-
describe '.show_cursor' do
|
48
|
-
subject { described.show_cursor(_name) }
|
49
|
-
|
50
|
-
it { subject; instance.state.must_equal(:visible) }
|
51
|
-
end
|
52
|
-
|
53
|
-
describe '.hide_cursor' do
|
54
|
-
subject { described.hide_cursor(_name) }
|
55
|
-
|
56
|
-
# @todo
|
57
|
-
# it { subject; instance.state.must_equal(:invisible) }
|
58
|
-
# it { skip }
|
59
|
-
end
|
60
|
-
|
61
|
-
describe '.toggle' do
|
62
|
-
subject { described.toggle(model) }
|
63
|
-
|
64
|
-
it { subject.must_equal(model) }
|
65
|
-
|
66
|
-
context 'when the model is visible' do
|
67
|
-
it { subject; instance.state.must_equal(:invisible) }
|
68
|
-
end
|
69
|
-
|
70
|
-
context 'when the model is not visible' do
|
71
|
-
let(:visible) { false }
|
72
|
-
|
73
|
-
it { subject; instance.state.must_equal(:visible) }
|
74
|
-
end
|
75
|
-
end
|
76
|
-
|
77
|
-
describe '#state' do
|
78
|
-
subject { instance.state }
|
79
|
-
|
80
|
-
it { subject.must_be_instance_of(Symbol) }
|
81
|
-
|
82
|
-
context 'when the model is visible' do
|
83
|
-
it { subject.must_equal(:visible) }
|
84
|
-
end
|
85
|
-
|
86
|
-
context 'when the model is not visible' do
|
87
|
-
let(:visible) { false }
|
88
|
-
|
89
|
-
it { subject.must_equal(:invisible) }
|
90
|
-
end
|
91
|
-
end
|
92
|
-
|
93
|
-
end # Visibility
|
94
|
-
|
95
|
-
end # Vedeu
|