diff options
Diffstat (limited to 'spec/lib/gitlab/marker_range_spec.rb')
-rw-r--r-- | spec/lib/gitlab/marker_range_spec.rb | 33 |
1 files changed, 30 insertions, 3 deletions
diff --git a/spec/lib/gitlab/marker_range_spec.rb b/spec/lib/gitlab/marker_range_spec.rb index 5f73d2a5048..c4670ec58a8 100644 --- a/spec/lib/gitlab/marker_range_spec.rb +++ b/spec/lib/gitlab/marker_range_spec.rb @@ -9,7 +9,7 @@ RSpec.describe Gitlab::MarkerRange do let(:last) { 10 } let(:mode) { nil } - it { is_expected.to eq(first..last) } + it { expect(marker_range.to_range).to eq(first..last) } it 'behaves like a Range' do is_expected.to be_kind_of(Range) @@ -51,14 +51,14 @@ RSpec.describe Gitlab::MarkerRange do end it 'keeps correct range' do - is_expected.to eq(range) + is_expected.to eq(described_class.new(1, 3)) end context 'when range excludes end' do let(:range) { 1...3 } it 'keeps correct range' do - is_expected.to eq(range) + is_expected.to eq(described_class.new(1, 3, exclude_end: true)) end end @@ -68,4 +68,31 @@ RSpec.describe Gitlab::MarkerRange do it { is_expected.to be(marker_range) } end end + + describe '#==' do + subject { default_marker_range == another_marker_range } + + let(:default_marker_range) { described_class.new(0, 1, mode: :addition) } + let(:another_marker_range) { default_marker_range } + + it { is_expected.to be_truthy } + + context 'when marker ranges have different modes' do + let(:another_marker_range) { described_class.new(0, 1, mode: :deletion) } + + it { is_expected.to be_falsey } + end + + context 'when marker ranges have different ranges' do + let(:another_marker_range) { described_class.new(0, 2, mode: :addition) } + + it { is_expected.to be_falsey } + end + + context 'when marker ranges is a simple range' do + let(:another_marker_range) { (0..1) } + + it { is_expected.to be_falsey } + end + end end |