Skip to content
This repository was archived by the owner on Nov 30, 2024. It is now read-only.

Commit 7154a0d

Browse files
committed
Refactor: accept a file path in preceding_declaration_line.
...but do not use it yet.
1 parent c2090a6 commit 7154a0d

File tree

4 files changed

+14
-10
lines changed

4 files changed

+14
-10
lines changed

lib/rspec/core/metadata_filter.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ def location_filter_applies?(locations, metadata)
5454
line_num = meta[:line_number]
5555

5656
locations[file_path].any? do |filter_line_num|
57-
line_num == RSpec.world.preceding_declaration_line(filter_line_num)
57+
line_num == RSpec.world.preceding_declaration_line(file_path, filter_line_num)
5858
end
5959
end
6060
end

lib/rspec/core/world.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ def all_examples
9696
# @api private
9797
#
9898
# Find line number of previous declaration.
99-
def preceding_declaration_line(filter_line)
99+
def preceding_declaration_line(_file_name, filter_line)
100100
declaration_line_numbers.sort.inject(nil) do |highest_prior_declaration_line, line|
101101
line <= filter_line ? line : highest_prior_declaration_line
102102
end

spec/rspec/core/metadata_filter_spec.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,8 @@ def filter_applies?(key, value, metadata)
5252
}}
5353

5454
before do
55-
expect(world).to receive(:preceding_declaration_line).at_least(:once) do |v|
56-
preceeding_declaration_lines[v]
55+
expect(world).to receive(:preceding_declaration_line).at_least(:once) do |_file_name, line_num|
56+
preceeding_declaration_lines[line_num]
5757
end
5858
end
5959

spec/rspec/core/world_spec.rb

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -91,27 +91,31 @@ module RSpec::Core
9191
let(:group_declaration_line) { group.metadata[:line_number] }
9292
let(:example_declaration_line) { group_declaration_line + 2 }
9393

94+
def preceding_declaration_line(line_num)
95+
world.preceding_declaration_line(__FILE__, line_num)
96+
end
97+
9498
context "with one example" do
9599
before { world.register(group) }
96100

97101
it "returns nil if no example or group precedes the line" do
98-
expect(world.preceding_declaration_line(group_declaration_line - 1)).to be_nil
102+
expect(preceding_declaration_line(group_declaration_line - 1)).to be_nil
99103
end
100104

101105
it "returns the argument line number if a group starts on that line" do
102-
expect(world.preceding_declaration_line(group_declaration_line)).to eq(group_declaration_line)
106+
expect(preceding_declaration_line(group_declaration_line)).to eq(group_declaration_line)
103107
end
104108

105109
it "returns the argument line number if an example starts on that line" do
106-
expect(world.preceding_declaration_line(example_declaration_line)).to eq(example_declaration_line)
110+
expect(preceding_declaration_line(example_declaration_line)).to eq(example_declaration_line)
107111
end
108112

109113
it "returns line number of a group that immediately precedes the argument line" do
110-
expect(world.preceding_declaration_line(group_declaration_line + 1)).to eq(group_declaration_line)
114+
expect(preceding_declaration_line(group_declaration_line + 1)).to eq(group_declaration_line)
111115
end
112116

113117
it "returns line number of an example that immediately precedes the argument line" do
114-
expect(world.preceding_declaration_line(example_declaration_line + 1)).to eq(example_declaration_line)
118+
expect(preceding_declaration_line(example_declaration_line + 1)).to eq(example_declaration_line)
115119
end
116120
end
117121

@@ -124,7 +128,7 @@ module RSpec::Core
124128
end
125129

126130
it 'return line number of group if a group start on that line' do
127-
expect(world.preceding_declaration_line(second_group_declaration_line)).to eq(second_group_declaration_line)
131+
expect(preceding_declaration_line(second_group_declaration_line)).to eq(second_group_declaration_line)
128132
end
129133
end
130134
end

0 commit comments

Comments
 (0)