Skip to content

Commit 6dc4311

Browse files
committed
[API] Test Runner: Updates version ranges calculation for skipping tests
In free/search.aggregation/500_serial_diff.yml, a new format was introduced like this: version: " - 7.17.3, 8.0.0 - 8.2.99" Test is allowed in 7.17.4
1 parent c2607c3 commit 6dc4311

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

api-spec-testing/test_file.rb

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -69,18 +69,28 @@ def skip_entire_test_file?
6969

7070
def skip_version?(client, skip_definition)
7171
return true if skip_definition['version'] == 'all'
72-
73-
range_partition = /\s*-\s*/
7472
return unless (versions = skip_definition['version'])
7573

76-
low, high = __parse_versions(versions.partition(range_partition))
77-
range = low..high
7874
begin
7975
server_version = client.info['version']['number']
8076
rescue
8177
warn('Could not determine Elasticsearch version when checking if test should be skipped.')
8278
end
83-
range.cover?(Gem::Version.new(server_version))
79+
80+
range_partition = /\s*-\s*/
81+
82+
if versions.include?(',')
83+
# == " - 7.17.3, 8.0.0 - 8.2.99"
84+
versions.split(',').each do |version_range|
85+
low, high = __parse_versions(version_range.partition(range_partition))
86+
range = low..high
87+
return true if range.cover?(Gem::Version.new(server_version))
88+
end
89+
else
90+
low, high = __parse_versions(versions.partition(range_partition))
91+
range = low..high
92+
range.cover?(Gem::Version.new(server_version))
93+
end
8494
end
8595

8696
def __parse_versions(versions)

0 commit comments

Comments
 (0)