test/lib/vedeu/models/cell_test.rb in vedeu-0.6.9 vs test/lib/vedeu/models/cell_test.rb in vedeu-0.6.10
- old
+ new
@@ -8,53 +8,84 @@
let(:described) { Vedeu::Models::Cell }
let(:instance) { described.new(attributes) }
let(:attributes) {
{
- colour: colour,
- style: style,
- value: _value,
- x: x,
- y: y,
+ colour: colour,
+ style: style,
+ value: _value,
+ position: position,
}
}
- let(:colour) { Vedeu::Colours::Colour.new(background: '#000000') }
- let(:style) {}
- let(:_value) {}
- let(:x) {}
- let(:y) {}
+ let(:colour) { Vedeu::Colours::Colour.new(background: '#000000') }
+ let(:style) {}
+ let(:_value) {}
+ let(:position) {}
describe '#initialize' do
it { instance.must_be_instance_of(described) }
it { instance.instance_variable_get('@colour').must_equal(colour) }
it { instance.instance_variable_get('@style').must_equal(style) }
- it { instance.instance_variable_get('@value').must_equal(_value) }
- it { instance.instance_variable_get('@x').must_equal(x) }
- it { instance.instance_variable_get('@y').must_equal(y) }
+ it { instance.instance_variable_get('@value').must_equal('') }
+ it { instance.instance_variable_get('@position').must_equal([1, 1]) }
end
describe 'accessors' do
it { instance.must_respond_to(:colour) }
it { instance.must_respond_to(:style) }
it { instance.must_respond_to(:value) }
- it { instance.must_respond_to(:x) }
- it { instance.must_respond_to(:y) }
end
describe '#eql?' do
- let(:other) { described.new(value: nil) }
+ let(:other) { described.new(value: nil, position: nil) }
subject { instance.eql?(other) }
it { subject.must_respond_to(:==) }
it { subject.must_equal(true) }
context 'when different to other' do
- let(:other) { described.new(value: 'b') }
+ let(:other) { described.new(value: 'b', position: [2, 3]) }
it { subject.must_equal(false) }
end
+ end
+
+ describe '#position' do
+ subject { instance.position }
+
+ it { subject.must_be_instance_of(Vedeu::Geometry::Position) }
+ end
+
+ describe '#to_hash' do
+ let(:expected) {
+ {
+ colour: "\e[48;2;0;0;0m",
+ style: '',
+ value: '',
+ position: "\e[1;1H",
+ }
+ }
+
+ subject { instance.to_hash }
+
+ it { subject.must_be_instance_of(Hash) }
+ it { subject.must_equal(expected) }
+ end
+
+ describe '#to_html' do
+ subject { instance.to_html }
+
+ it { subject.must_be_instance_of(String) }
+ it { subject.must_equal('') }
+ end
+
+ describe '#to_s' do
+ subject { instance.to_s }
+
+ it { subject.must_be_instance_of(String) }
+ it { subject.must_equal('') }
end
end # Cell
end # Models