diff options
| author | mo khan <mo.khan@gmail.com> | 2020-05-12 11:58:05 -0600 |
|---|---|---|
| committer | mo khan <mo.khan@gmail.com> | 2020-05-12 11:58:05 -0600 |
| commit | b0ccf1bda6e192051ad498451e20531aa5a29367 (patch) | |
| tree | 9d32c3efd5062642a1cf5ad2617fe8ed866a3f1a /spec/unit/core | |
| parent | e5b60f31deeb6c1dd1ddf773ddd743f5fdf6f696 (diff) | |
Extract index scan to work towards more efficient seeks
Diffstat (limited to 'spec/unit/core')
| -rw-r--r-- | spec/unit/core/index_file_spec.rb | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/spec/unit/core/index_file_spec.rb b/spec/unit/core/index_file_spec.rb new file mode 100644 index 0000000..8d82b15 --- /dev/null +++ b/spec/unit/core/index_file_spec.rb @@ -0,0 +1,40 @@ +# frozen_string_literal: true + +RSpec.describe Spandx::Core::IndexFile do + subject { described_class.new(data_file) } + + let(:data_file) { Spandx::Core::DataFile.new(tmp_file.path) } + let(:tmp_file) { Tempfile.new } + + after do + tmp_file.unlink + end + + describe '#scan' do + before do + data_file.insert('activemodel', '6.0.2.2', ['Apache-2.0']) + data_file.insert('spandx', '0.1.0', ['MIT']) + data_file.insert('zlib', '1.1.0', ['0BSD']) + + subject.update! + end + + specify do + subject.scan do |x| + expect(x.row(0)).to eql("\"activemodel\",\"6.0.2.2\",\"Apache-2.0\"\n") + end + end + + specify do + subject.scan do |x| + expect(x.row(1)).to eql("\"spandx\",\"0.1.0\",\"MIT\"\n") + end + end + + specify do + subject.scan do |x| + expect(x.row(2)).to eql("\"zlib\",\"1.1.0\",\"0BSD\"\n") + end + end + end +end |
