Skip to content

Commit 2c547cb

Browse files
committed
Move tests
1 parent 3994216 commit 2c547cb

File tree

2 files changed

+39
-47
lines changed

2 files changed

+39
-47
lines changed

spec/ajax-datatables-rails/base_spec.rb

Lines changed: 0 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -192,40 +192,6 @@ def paginate_records(records)
192192
end
193193
end
194194
end
195-
196-
describe 'helper methods' do
197-
describe '#offset' do
198-
it 'defaults to 0' do
199-
datatable = described_class.new({})
200-
expect(datatable.datatable.send(:offset)).to eq(0)
201-
end
202-
203-
it 'matches the value on view params[:start]' do
204-
datatable = described_class.new({ start: '11' })
205-
expect(datatable.datatable.send(:offset)).to eq(11)
206-
end
207-
end
208-
209-
describe '#page' do
210-
it 'calculates page number from params[:start] and #per_page' do
211-
datatable = described_class.new({ start: '11' })
212-
expect(datatable.datatable.send(:page)).to eq(2)
213-
end
214-
end
215-
216-
describe '#per_page' do
217-
it 'defaults to 10' do
218-
datatable = described_class.new(sample_params)
219-
expect(datatable.datatable.send(:per_page)).to eq(10)
220-
end
221-
222-
it 'matches the value on view params[:length]' do
223-
other_view = { length: 20 }
224-
datatable = described_class.new(other_view)
225-
expect(datatable.datatable.send(:per_page)).to eq(20)
226-
end
227-
end
228-
end
229195
end
230196

231197
describe 'User helper methods' do

spec/ajax-datatables-rails/datatable/datatable_spec.rb

Lines changed: 39 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,10 @@
33
describe AjaxDatatablesRails::Datatable::Datatable do
44

55
let(:datatable) { ComplexDatatable.new(sample_params).datatable }
6-
let(:order_option) { {'0'=>{'column'=>'0', 'dir'=>'asc'}, '1'=>{'column'=>'1', 'dir'=>'desc'}} }
76

87
describe 'order methods' do
8+
let(:order_option) { {'0'=>{'column'=>'0', 'dir'=>'asc'}, '1'=>{'column'=>'1', 'dir'=>'desc'}} }
9+
910
it 'should be orderable' do
1011
expect(datatable.orderable?).to eq(true)
1112
end
@@ -62,25 +63,50 @@
6263
end
6364

6465
describe 'option methods' do
65-
before :each do
66-
datatable.options[:start] = '50'
67-
datatable.options[:length] = '15'
66+
describe '#paginate?' do
67+
it {
68+
expect(datatable.paginate?).to be(true)
69+
}
6870
end
6971

70-
it 'paginate?' do
71-
expect(datatable.paginate?).to be(true)
72-
end
72+
describe '#per_page' do
73+
context 'when params[:length] is missing' do
74+
it 'defaults to 10' do
75+
expect(datatable.per_page).to eq(10)
76+
end
77+
end
78+
79+
context 'when params[:length] is passed' do
80+
let(:datatable) { ComplexDatatable.new({ length: '20' }).datatable }
7381

74-
it 'offset' do
75-
expect(datatable.offset).to eq(50)
82+
it 'matches the value on view params[:length]' do
83+
expect(datatable.per_page).to eq(20)
84+
end
85+
end
7686
end
7787

78-
it 'page' do
79-
expect(datatable.page).to eq(4)
88+
describe '#offset' do
89+
context 'when params[:start] is missing' do
90+
it 'defaults to 0' do
91+
expect(datatable.offset).to eq(0)
92+
end
93+
end
94+
95+
context 'when params[:start] is passed' do
96+
let(:datatable) { ComplexDatatable.new({ start: '11' }).datatable }
97+
98+
it 'matches the value on view params[:start]' do
99+
expect(datatable.offset).to eq(11)
100+
end
101+
end
80102
end
81103

82-
it 'per_page' do
83-
expect(datatable.per_page).to eq(15)
104+
describe '#page' do
105+
let(:datatable) { ComplexDatatable.new({ start: '11' }).datatable }
106+
107+
it 'calculates page number from params[:start] and #per_page' do
108+
expect(datatable.page).to eq(2)
109+
end
84110
end
85111
end
86112
end

0 commit comments

Comments
 (0)