blob: a546f625ce898e047bd9dd4299984e92bfbab3e9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
# frozen_string_literal: true
require 'spec_helper'
RSpec.describe NumbersHelper do
describe '#limited_counter_with_delimiter' do
using RSpec::Parameterized::TableSyntax
subject { limited_counter_with_delimiter(resource, **options) }
where(:count, :options, :expected_result) do
# Using explicit limit
9 | { limit: 10 } | '9'
10 | { limit: 10 } | '10'
11 | { limit: 10 } | '10+'
12 | { limit: 10 } | '10+'
# Using default limit
999 | {} | '999'
1000 | {} | '1,000'
1001 | {} | '1,000+'
1002 | {} | '1,000+'
end
with_them do
let(:page) { double('page', total_count_with_limit: [count, options.fetch(:limit, 1000) + 1].min) }
let(:resource) { class_double(Ci::Runner, page: page) }
it { is_expected.to eq(expected_result) }
end
end
end
|