vedeu 0.6.58 → 0.6.59

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d33a3d7e8cd6ab472659549aafd770caeadce867
4
- data.tar.gz: 7c8de69994fd536b0d42db2d95d09a51610b3eaa
3
+ metadata.gz: e5813addb77c651976f42073bc53aab1b4af606a
4
+ data.tar.gz: 3cb787a6bb92c95ef9a883eced3c6452afdccf8b
5
5
  SHA512:
6
- metadata.gz: eebb2b6fecc5b82b8f936d5f57732729db7ec0698eace850ab92e9d048e5aea66196757d3c1a65d5a932f4ee15dd2feae3ee63d24f4ad68a5168969f69d4d1a9
7
- data.tar.gz: 3e11185cf8ae5e7862f4f072ddad207cffc17197b086aae08d403afb02eaa281bf8ca92a5df6c3abc61e0144d7e942780831431e0a0e07ec4c2b085ade3e5863
6
+ metadata.gz: b55242a13ddc309b76455ccb9938abf0f2c517f448b82a43f885cede2e82616c2b6c9419f80f48b7283f4fcda220cc3d5eb1b31b74e719ebb751d1d9f7ed4849
7
+ data.tar.gz: e8005cd4ff555b0a51cfbbba53401cf2040291382c6b87f7687c1553c97a9c24f6eb6f308c2d4df106c5e2a5b728b7c36e93599bdc61eb3cded59be34e77dfc2
@@ -8,29 +8,12 @@ module Vedeu
8
8
  # @api private
9
9
  class Empty
10
10
 
11
+ include Vedeu::Repositories::Defaults
12
+
11
13
  # @!attribute [r] name
12
14
  # @return [NilClass|String|Symbol]
13
15
  attr_reader :name
14
16
 
15
- # Returns a new instance of Vedeu::Buffers::Empty.
16
- #
17
- # @note
18
- # If a particular key is missing from the attributes
19
- # parameter, then it is added with the respective value from
20
- # #defaults.
21
- #
22
- # @param attributes [Hash<Symbol => Fixnum, NilClass, String,
23
- # Symbol]
24
- # @option attributes name [NilClass|String|Symbol]
25
- # @option attributes height [Fixnum]
26
- # @option attributes width [Fixnum]
27
- # @return [Vedeu::Buffers::Empty]
28
- def initialize(attributes = {})
29
- defaults.merge!(attributes).each do |key, value|
30
- instance_variable_set("@#{key}", value || defaults.fetch(key))
31
- end
32
- end
33
-
34
17
  # @return [Array<Array<Vedeu::Models::Cell>>]
35
18
  def buffer
36
19
  Array.new(width) do |y|
@@ -62,7 +45,7 @@ module Vedeu
62
45
 
63
46
  # Returns the default options/attributes for this class.
64
47
  #
65
- # @return [Hash<Symbol => void>]
48
+ # @return [Hash<Symbol => Fixnum|NilClass|String|Symbol>]
66
49
  def defaults
67
50
  {
68
51
  height: Vedeu.height,
@@ -8,16 +8,7 @@ module Vedeu
8
8
  #
9
9
  class View
10
10
 
11
- # Returns a new instance of Vedeu::Buffers::View.
12
- #
13
- # @param attributes [Hash<Symbol => NilClass|String|Symbol]
14
- # @option attributes name [NilClass|String|Symbol]
15
- # @return [Vedeu::Buffers::View]
16
- def initialize(attributes = {})
17
- defaults.merge!(attributes).each do |key, value|
18
- instance_variable_set("@#{key}", value || defaults.fetch(key))
19
- end
20
- end
11
+ include Vedeu::Repositories::Defaults
21
12
 
22
13
  private
23
14
 
@@ -8,6 +8,7 @@ module Vedeu
8
8
  #
9
9
  class Document
10
10
 
11
+ include Vedeu::Repositories::Defaults
11
12
  include Vedeu::Repositories::Model
12
13
  extend Forwardable
13
14
 
@@ -18,7 +19,8 @@ module Vedeu
18
19
  :y
19
20
 
20
21
  # @!attribute [r] attributes
21
- # @return [Hash]
22
+ # @return [Hash<Symbol => String|Symbol|
23
+ # Vedeu::Repositories::Repository>]
22
24
  attr_reader :attributes
23
25
 
24
26
  # @!attribute [rw] data
@@ -37,26 +39,6 @@ module Vedeu
37
39
  new(attributes).store
38
40
  end
39
41
 
40
- # Returns a new instance of Vedeu::Editor::Document.
41
- #
42
- # @note
43
- # If a particular key is missing from the attributes
44
- # parameter, then it is added with the respective value from
45
- # #defaults.
46
- #
47
- # @param attributes [Hash<Symbol => String|Symbol|
48
- # Vedeu::Repositories::Repository>]
49
- # @option attributes data [String]
50
- # @option attributes name [String|Symbol]
51
- # @option attributes repository
52
- # [Vedeu::Repositories::Repository]
53
- # @return [Vedeu::Editor::Document]
54
- def initialize(attributes = {})
55
- defaults.merge!(attributes).each do |key, value|
56
- instance_variable_set("@#{key}", value || defaults.fetch(key))
57
- end
58
- end
59
-
60
42
  # Returns the document as a string with line breaks if there is
61
43
  # more than one line.
62
44
  #
@@ -27,6 +27,5 @@ require 'vedeu/geometry/coordinate'
27
27
  require 'vedeu/geometry/geometry'
28
28
  require 'vedeu/geometry/grid'
29
29
  require 'vedeu/geometry/move'
30
- require 'vedeu/geometry/null'
31
30
  require 'vedeu/geometry/position'
32
31
  require 'vedeu/geometry/repository'
@@ -18,6 +18,7 @@ module Vedeu
18
18
  #
19
19
  class Move
20
20
 
21
+ include Vedeu::Repositories::Defaults
21
22
  extend Forwardable
22
23
 
23
24
  def_delegators :geometry,
@@ -32,23 +33,6 @@ module Vedeu
32
33
  new(attributes).move
33
34
  end
34
35
 
35
- # Returns a new instance of Vedeu::Geometry::Move.
36
- #
37
- # @param attributes [Hash<Symbol => Boolean|Fixnum|String|
38
- # Symbol|Vedeu::Geometry::Repository]
39
- # @option attributes name [String|Symbol] The name of the
40
- # interface/view.
41
- # @option attributes direction [Symbol] The direction to move;
42
- # one of: :down, :left, :origin, :right, :up.
43
- # @option attributes offset [Fixnum] The number of columns or
44
- # rows to move by.
45
- # @return [Vedeu::Geometry::Move]
46
- def initialize(attributes = {})
47
- defaults.merge!(attributes).each do |key, value|
48
- instance_variable_set("@#{key}", value || defaults.fetch(key))
49
- end
50
- end
51
-
52
36
  # @return [FalseClass|Vedeu::Geometry::Geometry]
53
37
  def move
54
38
  return false unless valid?
@@ -62,15 +46,16 @@ module Vedeu
62
46
  protected
63
47
 
64
48
  # @!attribute [r] direction
65
- # @return [Symbol]
49
+ # @return [Symbol] The direction to move; one of: :down, :left,
50
+ # :origin, :right, :up.
66
51
  attr_reader :direction
67
52
 
68
53
  # @!attribute [r] name
69
- # @return [String|Symbol]
54
+ # @return [String|Symbol] The name of the interface/view.
70
55
  attr_reader :name
71
56
 
72
57
  # @!attribute [r] offset
73
- # @return [Symbol]
58
+ # @return [Symbol] The number of columns or rows to move by.
74
59
  attr_reader :offset
75
60
 
76
61
  private
@@ -9,7 +9,7 @@ module Vedeu
9
9
 
10
10
  singleton_class.send(:alias_method, :geometries, :repository)
11
11
 
12
- null Vedeu::Geometry::Null
12
+ null Vedeu::Geometry::Geometry, height: Vedeu.height, width: Vedeu.width
13
13
  real Vedeu::Geometry::Geometry
14
14
 
15
15
  end # Repository
@@ -8,6 +8,8 @@ module Vedeu
8
8
  #
9
9
  class Cell
10
10
 
11
+ include Vedeu::Repositories::Defaults
12
+
11
13
  # @!attribute [r] colour
12
14
  # @return [NilClass|String]
13
15
  attr_reader :colour
@@ -24,27 +26,6 @@ module Vedeu
24
26
  # @return [NilClass|String]
25
27
  attr_reader :value
26
28
 
27
- # Returns a new instance of Vedeu::Models::Cell.
28
- #
29
- # @note
30
- # If a particular key is missing from the attributes
31
- # parameter, then it is added with the respective value from
32
- # #defaults.
33
- #
34
- # @param attributes [Hash<Symbol => Array<Symbol|String>,
35
- # Fixnum, String, Symbol]
36
- # @option attributes colour [NilClass|String]
37
- # @option attributes style
38
- # [NilClass|Array<Symbol|String>|Symbol|String]
39
- # @option attributes value [NilClass|String]
40
- # @option attributes position [Vedeu::Geometry::Position]
41
- # @return [Vedeu::Models::Cell]
42
- def initialize(attributes = {})
43
- defaults.merge!(attributes).each do |key, value|
44
- instance_variable_set("@#{key}", value || defaults.fetch(key))
45
- end
46
- end
47
-
48
29
  # @return [Boolean]
49
30
  def cell?
50
31
  true
@@ -9,6 +9,7 @@ module Vedeu
9
9
  end # Vedeu
10
10
 
11
11
  require 'vedeu/repositories/collection'
12
+ require 'vedeu/repositories/defaults'
12
13
  require 'vedeu/repositories/repositories'
13
14
  require 'vedeu/repositories/model'
14
15
  require 'vedeu/repositories/store'
@@ -0,0 +1,33 @@
1
+ module Vedeu
2
+
3
+ module Repositories
4
+
5
+ # Some classes expect a certain set of attributes when
6
+ # initialized, this module uses the #defaults method of the class
7
+ # to provide missing attribute keys (and values).
8
+ #
9
+ # @api private
10
+ #
11
+ module Defaults
12
+
13
+ # Returns a new instance of the class including this module.
14
+ #
15
+ # @note
16
+ # If a particular key is missing from the attributes
17
+ # parameter, then it is added with the respective value from
18
+ # #defaults.
19
+ #
20
+ # @param attributes [Hash]
21
+ # @return [void] A new instance of the class including this
22
+ # module.
23
+ def initialize(attributes = {})
24
+ defaults.merge!(attributes).each do |key, value|
25
+ instance_variable_set("@#{key}", value || defaults.fetch(key))
26
+ end
27
+ end
28
+
29
+ end # Defaults
30
+
31
+ end # Repositories
32
+
33
+ end # Vedeu
@@ -13,9 +13,11 @@ module Vedeu
13
13
  # The null model is used when the repository cannot be found.
14
14
  #
15
15
  # @param klass [Class]
16
+ # @param attributes [Hash]
16
17
  # @return [Symbol]
17
- def null(klass)
18
- define_method(:null_model) { klass }
18
+ def null(klass, attributes = {})
19
+ define_method(:null_model) { klass }
20
+ define_method(:null_attributes) { attributes }
19
21
  end
20
22
 
21
23
  # The real model is the usual model to use for a given
@@ -65,7 +65,17 @@ module Vedeu
65
65
  def by_name(name = Vedeu.focus)
66
66
  return find(name) if present?(name) && registered?(name)
67
67
 
68
- null_model.new(name: name)
68
+ attrs = if null_attributes.any?
69
+ null_attributes.merge!(name: name)
70
+
71
+ else
72
+ {
73
+ name: name
74
+ }
75
+
76
+ end
77
+
78
+ null_model.new(attrs)
69
79
  end
70
80
 
71
81
  # Return the model for the interface currently in focus.
@@ -1,6 +1,6 @@
1
1
  module Vedeu
2
2
 
3
3
  # The current version of Vedeu.
4
- VERSION = '0.6.58'.freeze
4
+ VERSION = '0.6.59'.freeze
5
5
 
6
6
  end
@@ -0,0 +1,15 @@
1
+ require 'test_helper'
2
+
3
+ module Vedeu
4
+
5
+ module Repositories
6
+
7
+ describe Defaults do
8
+
9
+ # @todo Add more tests.
10
+
11
+ end # Defaults
12
+
13
+ end # Repositories
14
+
15
+ end # Vedeu
@@ -26,7 +26,9 @@ module Vedeu
26
26
  it { RegisterableTestClass.must_respond_to(:null) }
27
27
 
28
28
  it { subject.must_respond_to(:null_model) }
29
+ it { subject.must_respond_to(:null_attributes) }
29
30
  it { subject.null_model.must_equal(Vedeu::Repositories::ModelTestClass) }
31
+ it { subject.null_attributes.must_equal({}) }
30
32
  end
31
33
 
32
34
  describe '.real' do
@@ -27,6 +27,28 @@ class VedeuMaterialColoursApp
27
27
  # width 20
28
28
  end
29
29
 
30
+ # Borders can be defined as standalone declarations.
31
+ Vedeu.border 'no_bottom' do
32
+ background '#000000'
33
+ foreground '#ffffff'
34
+ show_bottom false
35
+ end
36
+ Vedeu.border 'no_left' do
37
+ background '#000000'
38
+ foreground '#ffffff'
39
+ show_left false
40
+ end
41
+ Vedeu.border 'no_right' do
42
+ background '#000000'
43
+ foreground '#ffffff'
44
+ show_right false
45
+ end
46
+ Vedeu.border 'no_top' do
47
+ background '#000000'
48
+ foreground '#ffffff'
49
+ show_top false
50
+ end
51
+
30
52
  Vedeu.interface 'main_interface' do
31
53
  border 'main_interface' do
32
54
  colour foreground: '#ffffff', background: :default
@@ -98,7 +120,7 @@ class VedeuMaterialColoursApp
98
120
  height 4
99
121
  width 10
100
122
  end
101
- colour foreground: '#000000', background: '#9c27b0'
123
+ colour foreground: '#ffffff', background: '#9c27b0'
102
124
  end
103
125
 
104
126
  Vedeu.interface 'no_bottom' do
@@ -108,7 +130,7 @@ class VedeuMaterialColoursApp
108
130
  height 4
109
131
  width 10
110
132
  end
111
- colour foreground: '#000000', background: '#673ab7'
133
+ colour foreground: '#ffffff', background: '#673ab7'
112
134
  end
113
135
 
114
136
  Vedeu.interface 'no_left' do
@@ -118,7 +140,7 @@ class VedeuMaterialColoursApp
118
140
  height 4
119
141
  width 10
120
142
  end
121
- colour foreground: '#000000', background: '#3f51b5'
143
+ colour foreground: '#ffffff', background: '#3f51b5'
122
144
  end
123
145
 
124
146
  Vedeu.interface 'no_right' do
@@ -128,7 +150,7 @@ class VedeuMaterialColoursApp
128
150
  height 4
129
151
  width 10
130
152
  end
131
- colour foreground: '#000000', background: '#2196f3'
153
+ colour foreground: '#ffffff', background: '#2196f3'
132
154
  end
133
155
 
134
156
  Vedeu.interface 'custom_corners' do
@@ -138,7 +160,7 @@ class VedeuMaterialColoursApp
138
160
  height 4
139
161
  width 10
140
162
  end
141
- colour foreground: '#000000', background: '#03a9f4'
163
+ colour foreground: '#ffffff', background: '#03a9f4'
142
164
  end
143
165
 
144
166
  Vedeu.interface 'custom_sides' do
@@ -153,6 +175,7 @@ class VedeuMaterialColoursApp
153
175
 
154
176
  # Borders can be defined as part of the interface definition.
155
177
  Vedeu.interface 'only_top' do
178
+ colour foreground: '#ffffff', background: '#009688'
156
179
  border do
157
180
  foreground '#ffffff'
158
181
  show_right false
@@ -165,10 +188,10 @@ class VedeuMaterialColoursApp
165
188
  height 4
166
189
  width 10
167
190
  end
168
- colour foreground: '#ffffff', background: '#009688'
169
191
  end
170
192
 
171
193
  Vedeu.interface 'only_bottom' do
194
+ colour foreground: '#000000', background: '#8bc34a'
172
195
  border do
173
196
  foreground '#000000'
174
197
  show_top false
@@ -181,10 +204,10 @@ class VedeuMaterialColoursApp
181
204
  height 4
182
205
  width 10
183
206
  end
184
- colour foreground: '#000000', background: '#8bc34a'
185
207
  end
186
208
 
187
209
  Vedeu.interface 'only_left' do
210
+ colour foreground: '#000000', background: '#cddc39'
188
211
  border do
189
212
  foreground '#000000'
190
213
  show_top false
@@ -197,10 +220,10 @@ class VedeuMaterialColoursApp
197
220
  height 4
198
221
  width 10
199
222
  end
200
- colour foreground: '#000000', background: '#cddc39'
201
223
  end
202
224
 
203
225
  Vedeu.interface 'only_right' do
226
+ colour foreground: '#000000', background: '#ffeb3b'
204
227
  border do
205
228
  foreground '#000000'
206
229
  show_top false
@@ -213,7 +236,6 @@ class VedeuMaterialColoursApp
213
236
  height 4
214
237
  width 10
215
238
  end
216
- colour foreground: '#000000', background: '#ffeb3b'
217
239
  end
218
240
 
219
241
  Vedeu.interface 'custom_colour' do
@@ -248,23 +270,7 @@ class VedeuMaterialColoursApp
248
270
  zindex(0)
249
271
  end
250
272
 
251
- # Borders can be defined as standalone declarations.
252
- Vedeu.border 'no_bottom' do
253
- foreground '#ffffff'
254
- show_bottom false
255
- end
256
- Vedeu.border 'no_left' do
257
- foreground '#ffffff'
258
- show_left false
259
- end
260
- Vedeu.border 'no_right' do
261
- foreground '#ffffff'
262
- show_right false
263
- end
264
- Vedeu.border 'no_top' do
265
- foreground '#ffffff'
266
- show_top false
267
- end
273
+
268
274
 
269
275
  Vedeu.keymap('_global_') do
270
276
  key(:up) { Vedeu.trigger(:_cursor_up_) }
@@ -509,7 +515,7 @@ class VedeuMaterialColoursApp
509
515
  end
510
516
  view('custom_corners') do
511
517
  border do
512
- foreground '#ffffff'
518
+ foreground '#000000'
513
519
  top_right 'B'
514
520
  top_left 'A'
515
521
  bottom_right 'D'
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.58
4
+ version: 0.6.59
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-16 00:00:00.000000000 Z
11
+ date: 2015-11-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: guard
@@ -421,7 +421,6 @@ files:
421
421
  - lib/vedeu/geometry/grid.rb
422
422
  - lib/vedeu/geometry/horizontal_alignment.rb
423
423
  - lib/vedeu/geometry/move.rb
424
- - lib/vedeu/geometry/null.rb
425
424
  - lib/vedeu/geometry/position.rb
426
425
  - lib/vedeu/geometry/repository.rb
427
426
  - lib/vedeu/geometry/validator.rb
@@ -504,6 +503,7 @@ files:
504
503
  - lib/vedeu/plugins/plugins.rb
505
504
  - lib/vedeu/repositories/all.rb
506
505
  - lib/vedeu/repositories/collection.rb
506
+ - lib/vedeu/repositories/defaults.rb
507
507
  - lib/vedeu/repositories/model.rb
508
508
  - lib/vedeu/repositories/registerable.rb
509
509
  - lib/vedeu/repositories/repositories.rb
@@ -607,7 +607,6 @@ files:
607
607
  - test/lib/vedeu/geometry/grid_test.rb
608
608
  - test/lib/vedeu/geometry/horizontal_alignment_test.rb
609
609
  - test/lib/vedeu/geometry/move_test.rb
610
- - test/lib/vedeu/geometry/null_test.rb
611
610
  - test/lib/vedeu/geometry/position_test.rb
612
611
  - test/lib/vedeu/geometry/repository_test.rb
613
612
  - test/lib/vedeu/geometry/validator_test.rb
@@ -677,6 +676,7 @@ files:
677
676
  - test/lib/vedeu/plugins/plugin_test.rb
678
677
  - test/lib/vedeu/plugins/plugins_test.rb
679
678
  - test/lib/vedeu/repositories/collection_test.rb
679
+ - test/lib/vedeu/repositories/defaults_test.rb
680
680
  - test/lib/vedeu/repositories/model_test.rb
681
681
  - test/lib/vedeu/repositories/registerable_test.rb
682
682
  - test/lib/vedeu/repositories/repositories_test.rb
@@ -820,7 +820,6 @@ test_files:
820
820
  - test/lib/vedeu/geometry/grid_test.rb
821
821
  - test/lib/vedeu/geometry/horizontal_alignment_test.rb
822
822
  - test/lib/vedeu/geometry/move_test.rb
823
- - test/lib/vedeu/geometry/null_test.rb
824
823
  - test/lib/vedeu/geometry/position_test.rb
825
824
  - test/lib/vedeu/geometry/repository_test.rb
826
825
  - test/lib/vedeu/geometry/validator_test.rb
@@ -890,6 +889,7 @@ test_files:
890
889
  - test/lib/vedeu/plugins/plugin_test.rb
891
890
  - test/lib/vedeu/plugins/plugins_test.rb
892
891
  - test/lib/vedeu/repositories/collection_test.rb
892
+ - test/lib/vedeu/repositories/defaults_test.rb
893
893
  - test/lib/vedeu/repositories/model_test.rb
894
894
  - test/lib/vedeu/repositories/registerable_test.rb
895
895
  - test/lib/vedeu/repositories/repositories_test.rb
@@ -1,66 +0,0 @@
1
- module Vedeu
2
-
3
- module Geometry
4
-
5
- # Provides a non-existent model to swallow messages.
6
- #
7
- # @api private
8
- #
9
- class Null < Vedeu::Null::Generic
10
-
11
- extend Forwardable
12
-
13
- def_delegators :area,
14
- :bordered_height,
15
- :bordered_width,
16
- :bottom,
17
- :bx,
18
- :bxn,
19
- :by,
20
- :byn,
21
- :east,
22
- :height,
23
- :left,
24
- :north,
25
- :right,
26
- :south,
27
- :top,
28
- :west,
29
- :width,
30
- :x,
31
- :xn,
32
- :y,
33
- :yn
34
-
35
- # @!attribute [rw] maximised
36
- # @return [Boolean]
37
- attr_accessor :maximised
38
-
39
- # @!attribute [r] name
40
- # @return [NilClass|String|Symbol]
41
- attr_reader :name
42
-
43
- # Returns a new instance of Vedeu::Geometry::Null.
44
- #
45
- # @param attributes [Hash<Symbol => void>]
46
- # @option attributes name [String|Symbol|NilClass]
47
- # @return [Vedeu::Geometry::Null]
48
- def initialize(attributes = {})
49
- @attributes = attributes
50
- @name = @attributes[:name]
51
- @maximised = @attributes.fetch(:maximised, false)
52
- end
53
-
54
- private
55
-
56
- # @return [Vedeu::Geometry::Area]
57
- def area
58
- @area ||= Vedeu::Geometry::Area.from_attributes(y_default: Vedeu.height,
59
- x_default: Vedeu.width)
60
- end
61
-
62
- end # Null
63
-
64
- end # Geometry
65
-
66
- end # Vedeu
@@ -1,72 +0,0 @@
1
- require 'test_helper'
2
-
3
- module Vedeu
4
-
5
- module Geometry
6
-
7
- describe Null do
8
-
9
- let(:described) { Vedeu::Geometry::Null }
10
- let(:instance) { described.new(attributes) }
11
- let(:attributes){
12
- {
13
- name: _name
14
- }
15
- }
16
- let(:_name) { 'null_geometry' }
17
-
18
- describe '#initialize' do
19
- it { instance.must_be_instance_of(described) }
20
- it {
21
- instance.instance_variable_get('@attributes').must_equal(attributes)
22
- }
23
- it { instance.instance_variable_get('@name').must_equal(_name) }
24
- end
25
-
26
- describe 'accessors' do
27
- it { instance.must_respond_to(:maximised) }
28
- it { instance.must_respond_to(:maximised=) }
29
- it { instance.must_respond_to(:name) }
30
- end
31
-
32
- describe '#height' do
33
- before { Vedeu::Terminal.stubs(:size).returns([25, 40]) }
34
-
35
- it { instance.height.must_equal(25) }
36
- end
37
-
38
- describe '#width' do
39
- before { Vedeu::Terminal.stubs(:size).returns([25, 40]) }
40
-
41
- it { instance.width.must_equal(40) }
42
- end
43
-
44
- describe '#x' do
45
- before { Vedeu::Terminal.stubs(:size).returns([25, 40]) }
46
-
47
- it { instance.x.must_equal(1) }
48
- end
49
-
50
- describe '#xn' do
51
- before { Vedeu::Terminal.stubs(:size).returns([25, 40]) }
52
-
53
- it { instance.xn.must_equal(40) }
54
- end
55
-
56
- describe '#y' do
57
- before { Vedeu::Terminal.stubs(:size).returns([25, 40]) }
58
-
59
- it { instance.y.must_equal(1) }
60
- end
61
-
62
- describe '#yn' do
63
- before { Vedeu::Terminal.stubs(:size).returns([25, 40]) }
64
-
65
- it { instance.yn.must_equal(25) }
66
- end
67
-
68
- end # Null
69
-
70
- end # Geometry
71
-
72
- end # Vedeu