vedeu 0.6.61 → 0.6.62
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/benchmarks/array_vs_range.rb +1 -1
- data/docs/events/drb.md +2 -2
- data/docs/events/visibility.md +1 -1
- data/lib/vedeu/buffers/all.rb +1 -0
- data/lib/vedeu/buffers/empty.rb +2 -2
- data/lib/vedeu/{terminal/buffer.rb → buffers/terminal.rb} +12 -16
- data/lib/vedeu/cursors/cursor.rb +4 -8
- data/lib/vedeu/cursors/refresh.rb +5 -0
- data/lib/vedeu/editor/all.rb +1 -0
- data/lib/vedeu/editor/collection.rb +26 -0
- data/lib/vedeu/editor/document.rb +0 -8
- data/lib/vedeu/editor/line.rb +17 -47
- data/lib/vedeu/editor/lines.rb +22 -51
- data/lib/vedeu/geometries/geometry.rb +0 -6
- data/lib/vedeu/groups/group.rb +0 -6
- data/lib/vedeu/input/capture.rb +1 -1
- data/lib/vedeu/interfaces/clear.rb +1 -1
- data/lib/vedeu/logging/log.rb +5 -2
- data/lib/vedeu/models/focus.rb +4 -13
- data/lib/vedeu/output/compressor.rb +8 -4
- data/lib/vedeu/output/output.rb +3 -3
- data/lib/vedeu/output/renderers/all.rb +2 -2
- data/lib/vedeu/output/renderers/html.rb +1 -1
- data/lib/vedeu/output/renderers/json.rb +1 -1
- data/lib/vedeu/repositories/all.rb +1 -0
- data/lib/vedeu/repositories/assemblage.rb +57 -0
- data/lib/vedeu/repositories/collection.rb +1 -40
- data/lib/vedeu/repositories/model.rb +17 -0
- data/lib/vedeu/runtime/launcher.rb +5 -8
- data/lib/vedeu/terminal/all.rb +0 -1
- data/lib/vedeu/version.rb +1 -1
- data/test/lib/vedeu/{terminal/buffer_test.rb → buffers/terminal_test.rb} +24 -50
- data/test/lib/vedeu/cursors/cursor_test.rb +0 -6
- data/test/lib/vedeu/editor/collection_test.rb +38 -0
- data/test/lib/vedeu/editor/document_test.rb +0 -16
- data/test/lib/vedeu/editor/line_test.rb +17 -75
- data/test/lib/vedeu/editor/lines_test.rb +21 -88
- data/test/lib/vedeu/geometries/geometry_test.rb +0 -6
- data/test/lib/vedeu/groups/group_test.rb +0 -6
- data/test/lib/vedeu/input/mouse_test.rb +1 -1
- data/test/lib/vedeu/logging/log_test.rb +3 -3
- data/test/lib/vedeu/models/focus_test.rb +62 -56
- data/test/lib/vedeu/output/output_test.rb +2 -2
- data/test/lib/vedeu/output/renderers/html_test.rb +2 -2
- data/test/lib/vedeu/output/renderers/json_test.rb +1 -1
- data/test/lib/vedeu/repositories/assemblage_test.rb +96 -0
- data/test/lib/vedeu/repositories/collection_test.rb +0 -54
- data/test/lib/vedeu/repositories/model_test.rb +15 -0
- data/vedeu.gemspec +1 -1
- metadata +13 -7
@@ -0,0 +1,96 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
module Vedeu
|
4
|
+
|
5
|
+
module Repositories
|
6
|
+
|
7
|
+
class CollectionTestClass
|
8
|
+
|
9
|
+
include Vedeu::Repositories::Assemblage
|
10
|
+
|
11
|
+
attr_accessor :collection
|
12
|
+
|
13
|
+
def initialize(collection)
|
14
|
+
@collection = collection
|
15
|
+
end
|
16
|
+
|
17
|
+
end # CollectionTestClass
|
18
|
+
|
19
|
+
describe Assemblage do
|
20
|
+
|
21
|
+
let(:described) { Vedeu::Repositories::Assemblage }
|
22
|
+
let(:instance) { Vedeu::Repositories::CollectionTestClass.new(collection) }
|
23
|
+
let(:collection) { 'Some text...'.chars }
|
24
|
+
|
25
|
+
describe '#[]' do
|
26
|
+
let(:collection) { [:hydrogen, :helium, :lithium, :beryllium] }
|
27
|
+
|
28
|
+
subject { instance[index] }
|
29
|
+
|
30
|
+
context 'when the index is a range' do
|
31
|
+
let(:index) { 1..2 }
|
32
|
+
|
33
|
+
it { subject.must_be_instance_of(Array) }
|
34
|
+
it { subject.must_equal([:helium, :lithium]) }
|
35
|
+
end
|
36
|
+
|
37
|
+
context 'when the index is an integer' do
|
38
|
+
let(:index) { 3 }
|
39
|
+
|
40
|
+
it { subject.must_be_instance_of(Symbol) }
|
41
|
+
it { subject.must_equal(:beryllium) }
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
describe '#empty?' do
|
46
|
+
subject { instance.empty? }
|
47
|
+
|
48
|
+
context 'when the collection is empty' do
|
49
|
+
let(:collection) { [] }
|
50
|
+
|
51
|
+
it { subject.must_equal(true) }
|
52
|
+
end
|
53
|
+
|
54
|
+
context 'when the collection is not empty' do
|
55
|
+
it { subject.must_equal(false) }
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
describe '#eql?' do
|
60
|
+
let(:other) { instance }
|
61
|
+
|
62
|
+
subject { instance.eql?(other) }
|
63
|
+
|
64
|
+
it { subject.must_equal(true) }
|
65
|
+
|
66
|
+
context 'when different to other' do
|
67
|
+
let(:some_collection) {
|
68
|
+
Vedeu::Repositories::CollectionTestClass.new('Some text...'.chars)
|
69
|
+
}
|
70
|
+
let(:other_collection) {
|
71
|
+
Vedeu::Repositories::CollectionTestClass.new('Other text...'.chars)
|
72
|
+
}
|
73
|
+
|
74
|
+
it { (some_collection == other_collection).must_equal(false) }
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
describe '#size' do
|
79
|
+
subject { instance.size }
|
80
|
+
|
81
|
+
context 'when the collection is empty' do
|
82
|
+
let(:collection) { [] }
|
83
|
+
|
84
|
+
it { subject.must_equal(0) }
|
85
|
+
end
|
86
|
+
|
87
|
+
context 'when the collection is not empty' do
|
88
|
+
it { subject.must_equal(12) }
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
end # Assemblage
|
93
|
+
|
94
|
+
end # Repositories
|
95
|
+
|
96
|
+
end # Vedeu
|
@@ -37,16 +37,6 @@ module Vedeu
|
|
37
37
|
# it { skip }
|
38
38
|
end
|
39
39
|
|
40
|
-
describe '#[]' do
|
41
|
-
let(:collection) { [:hydrogen, :helium, :lithium, :beryllium] }
|
42
|
-
let(:_value) { 1..2 }
|
43
|
-
|
44
|
-
subject { instance[_value] }
|
45
|
-
|
46
|
-
it { subject.must_be_instance_of(Array) }
|
47
|
-
it { subject.must_equal([:helium, :lithium]) }
|
48
|
-
end
|
49
|
-
|
50
40
|
describe '#add' do
|
51
41
|
subject { instance.add(:hydrogen) }
|
52
42
|
|
@@ -70,50 +60,6 @@ module Vedeu
|
|
70
60
|
end
|
71
61
|
end
|
72
62
|
|
73
|
-
describe '#empty?' do
|
74
|
-
subject { instance.empty? }
|
75
|
-
|
76
|
-
context 'when the collection is empty' do
|
77
|
-
it { subject.must_be_instance_of(TrueClass) }
|
78
|
-
end
|
79
|
-
|
80
|
-
context 'when the collection is not empty' do
|
81
|
-
before { instance.add(:hydrogen) }
|
82
|
-
|
83
|
-
it { subject.must_be_instance_of(FalseClass) }
|
84
|
-
end
|
85
|
-
end
|
86
|
-
|
87
|
-
describe '#eql?' do
|
88
|
-
let(:other) { instance }
|
89
|
-
|
90
|
-
subject { instance.eql?(other) }
|
91
|
-
|
92
|
-
it { subject.must_equal(true) }
|
93
|
-
|
94
|
-
context 'when different to other' do
|
95
|
-
let(:other) { described.new([:different]) }
|
96
|
-
|
97
|
-
it { subject.must_equal(false) }
|
98
|
-
end
|
99
|
-
end
|
100
|
-
|
101
|
-
describe '#size' do
|
102
|
-
subject { instance.size }
|
103
|
-
|
104
|
-
it { subject.must_be_instance_of(Fixnum) }
|
105
|
-
|
106
|
-
context 'when the collection is empty' do
|
107
|
-
it { subject.must_equal(0) }
|
108
|
-
end
|
109
|
-
|
110
|
-
context 'when the collection is not empty' do
|
111
|
-
before { instance.add(:hydrogen) }
|
112
|
-
|
113
|
-
it { subject.must_equal(1) }
|
114
|
-
end
|
115
|
-
end
|
116
|
-
|
117
63
|
describe '#to_s' do
|
118
64
|
subject { instance.to_s }
|
119
65
|
|
@@ -49,6 +49,21 @@ module Vedeu
|
|
49
49
|
# it { skip }
|
50
50
|
end
|
51
51
|
|
52
|
+
describe '.store' do
|
53
|
+
let(:klass) {}
|
54
|
+
|
55
|
+
context 'when a block is given' do
|
56
|
+
subject { described.store(klass) }
|
57
|
+
end
|
58
|
+
|
59
|
+
context 'when a block is not given' do
|
60
|
+
subject { described.store(klass) { :some_proc } }
|
61
|
+
end
|
62
|
+
|
63
|
+
# @todo Add more tests.
|
64
|
+
# it { skip }
|
65
|
+
end
|
66
|
+
|
52
67
|
describe '#store' do
|
53
68
|
subject { instance.store }
|
54
69
|
|
data/vedeu.gemspec
CHANGED
@@ -23,7 +23,7 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.add_development_dependency 'guard', '2.13.0'
|
24
24
|
spec.add_development_dependency 'guard-minitest', '2.4.4'
|
25
25
|
spec.add_development_dependency 'guard-rubocop', '1.2.0'
|
26
|
-
spec.add_development_dependency 'minitest', '5.8.
|
26
|
+
spec.add_development_dependency 'minitest', '5.8.3'
|
27
27
|
spec.add_development_dependency 'minitest-reporters', '1.1.5'
|
28
28
|
spec.add_development_dependency 'mocha', '1.1.0'
|
29
29
|
spec.add_development_dependency 'pry', '0.10.3'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vedeu
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.62
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gavin Laking
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-11-
|
11
|
+
date: 2015-11-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: guard
|
@@ -58,14 +58,14 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - '='
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 5.8.
|
61
|
+
version: 5.8.3
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - '='
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 5.8.
|
68
|
+
version: 5.8.3
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: minitest-reporters
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -341,6 +341,7 @@ files:
|
|
341
341
|
- lib/vedeu/buffers/null.rb
|
342
342
|
- lib/vedeu/buffers/refresh.rb
|
343
343
|
- lib/vedeu/buffers/repository.rb
|
344
|
+
- lib/vedeu/buffers/terminal.rb
|
344
345
|
- lib/vedeu/buffers/view.rb
|
345
346
|
- lib/vedeu/colours/all.rb
|
346
347
|
- lib/vedeu/colours/background.rb
|
@@ -386,6 +387,7 @@ files:
|
|
386
387
|
- lib/vedeu/dsl/use.rb
|
387
388
|
- lib/vedeu/dsl/view.rb
|
388
389
|
- lib/vedeu/editor/all.rb
|
390
|
+
- lib/vedeu/editor/collection.rb
|
389
391
|
- lib/vedeu/editor/cropper.rb
|
390
392
|
- lib/vedeu/editor/cursor.rb
|
391
393
|
- lib/vedeu/editor/delete.rb
|
@@ -500,6 +502,7 @@ files:
|
|
500
502
|
- lib/vedeu/plugins/plugin.rb
|
501
503
|
- lib/vedeu/plugins/plugins.rb
|
502
504
|
- lib/vedeu/repositories/all.rb
|
505
|
+
- lib/vedeu/repositories/assemblage.rb
|
503
506
|
- lib/vedeu/repositories/collection.rb
|
504
507
|
- lib/vedeu/repositories/defaults.rb
|
505
508
|
- lib/vedeu/repositories/model.rb
|
@@ -522,7 +525,6 @@ files:
|
|
522
525
|
- lib/vedeu/templating/template.rb
|
523
526
|
- lib/vedeu/templating/view_template.rb
|
524
527
|
- lib/vedeu/terminal/all.rb
|
525
|
-
- lib/vedeu/terminal/buffer.rb
|
526
528
|
- lib/vedeu/terminal/mode.rb
|
527
529
|
- lib/vedeu/terminal/terminal.rb
|
528
530
|
- lib/vedeu/version.rb
|
@@ -543,6 +545,7 @@ files:
|
|
543
545
|
- test/lib/vedeu/buffers/null_test.rb
|
544
546
|
- test/lib/vedeu/buffers/refresh_test.rb
|
545
547
|
- test/lib/vedeu/buffers/repository_test.rb
|
548
|
+
- test/lib/vedeu/buffers/terminal_test.rb
|
546
549
|
- test/lib/vedeu/buffers/view_test.rb
|
547
550
|
- test/lib/vedeu/colours/background_test.rb
|
548
551
|
- test/lib/vedeu/colours/backgrounds_test.rb
|
@@ -573,6 +576,7 @@ files:
|
|
573
576
|
- test/lib/vedeu/dsl/text_test.rb
|
574
577
|
- test/lib/vedeu/dsl/use_test.rb
|
575
578
|
- test/lib/vedeu/dsl/view_test.rb
|
579
|
+
- test/lib/vedeu/editor/collection_test.rb
|
576
580
|
- test/lib/vedeu/editor/cropper_test.rb
|
577
581
|
- test/lib/vedeu/editor/cursor_test.rb
|
578
582
|
- test/lib/vedeu/editor/delete_test.rb
|
@@ -671,6 +675,7 @@ files:
|
|
671
675
|
- test/lib/vedeu/output/wordwrap_test.rb
|
672
676
|
- test/lib/vedeu/plugins/plugin_test.rb
|
673
677
|
- test/lib/vedeu/plugins/plugins_test.rb
|
678
|
+
- test/lib/vedeu/repositories/assemblage_test.rb
|
674
679
|
- test/lib/vedeu/repositories/collection_test.rb
|
675
680
|
- test/lib/vedeu/repositories/defaults_test.rb
|
676
681
|
- test/lib/vedeu/repositories/model_test.rb
|
@@ -690,7 +695,6 @@ files:
|
|
690
695
|
- test/lib/vedeu/templating/helpers_test.rb
|
691
696
|
- test/lib/vedeu/templating/template_test.rb
|
692
697
|
- test/lib/vedeu/templating/view_template_test.rb
|
693
|
-
- test/lib/vedeu/terminal/buffer_test.rb
|
694
698
|
- test/lib/vedeu/terminal/mode_test.rb
|
695
699
|
- test/lib/vedeu/terminal/terminal_test.rb
|
696
700
|
- test/lib/vedeu_test.rb
|
@@ -754,6 +758,7 @@ test_files:
|
|
754
758
|
- test/lib/vedeu/buffers/null_test.rb
|
755
759
|
- test/lib/vedeu/buffers/refresh_test.rb
|
756
760
|
- test/lib/vedeu/buffers/repository_test.rb
|
761
|
+
- test/lib/vedeu/buffers/terminal_test.rb
|
757
762
|
- test/lib/vedeu/buffers/view_test.rb
|
758
763
|
- test/lib/vedeu/colours/background_test.rb
|
759
764
|
- test/lib/vedeu/colours/backgrounds_test.rb
|
@@ -784,6 +789,7 @@ test_files:
|
|
784
789
|
- test/lib/vedeu/dsl/text_test.rb
|
785
790
|
- test/lib/vedeu/dsl/use_test.rb
|
786
791
|
- test/lib/vedeu/dsl/view_test.rb
|
792
|
+
- test/lib/vedeu/editor/collection_test.rb
|
787
793
|
- test/lib/vedeu/editor/cropper_test.rb
|
788
794
|
- test/lib/vedeu/editor/cursor_test.rb
|
789
795
|
- test/lib/vedeu/editor/delete_test.rb
|
@@ -882,6 +888,7 @@ test_files:
|
|
882
888
|
- test/lib/vedeu/output/wordwrap_test.rb
|
883
889
|
- test/lib/vedeu/plugins/plugin_test.rb
|
884
890
|
- test/lib/vedeu/plugins/plugins_test.rb
|
891
|
+
- test/lib/vedeu/repositories/assemblage_test.rb
|
885
892
|
- test/lib/vedeu/repositories/collection_test.rb
|
886
893
|
- test/lib/vedeu/repositories/defaults_test.rb
|
887
894
|
- test/lib/vedeu/repositories/model_test.rb
|
@@ -901,7 +908,6 @@ test_files:
|
|
901
908
|
- test/lib/vedeu/templating/helpers_test.rb
|
902
909
|
- test/lib/vedeu/templating/template_test.rb
|
903
910
|
- test/lib/vedeu/templating/view_template_test.rb
|
904
|
-
- test/lib/vedeu/terminal/buffer_test.rb
|
905
911
|
- test/lib/vedeu/terminal/mode_test.rb
|
906
912
|
- test/lib/vedeu/terminal/terminal_test.rb
|
907
913
|
- test/lib/vedeu_test.rb
|