Module: Workarea::Storefront::PaginationViewModelTest

Included in:
ProductBrowsingViewModelTest
Defined in:
lib/workarea/storefront/pagination_view_model_test.rb

Instance Method Summary collapse

Instance Method Details

#pagination_view_modelObject



4
5
6
7
8
# File 'lib/workarea/storefront/pagination_view_model_test.rb', line 4

def pagination_view_model
  @pagination_view_model ||= pagination_view_model_class.new(
    stub_everything(:model)
  )
end

#test_first_pageObject



24
25
26
27
# File 'lib/workarea/storefront/pagination_view_model_test.rb', line 24

def test_first_page
  pagination_view_model.expects(:page).returns(1)
  assert(pagination_view_model.first_page?)
end

#test_last_pageObject



29
30
31
32
33
34
# File 'lib/workarea/storefront/pagination_view_model_test.rb', line 29

def test_last_page
  pagination_view_model.expects(:page).returns(2)
  pagination_view_model.expects(:per_page).returns(15)
  pagination_view_model.expects(:total).returns(30)
  assert(pagination_view_model.last_page?)
end

#test_next_pageObject



36
37
38
39
40
41
42
43
44
45
# File 'lib/workarea/storefront/pagination_view_model_test.rb', line 36

def test_next_page
  pagination_view_model.expects(:per_page).returns(15).at_least_once
  pagination_view_model.expects(:total).returns(30).at_least_once

  pagination_view_model.expects(:page).returns(1).at_least_once
  assert_equal(2, pagination_view_model.next_page)

  pagination_view_model.expects(:page).returns(2).at_least_once
  assert_nil(pagination_view_model.next_page)
end

#test_prev_pageObject



47
48
49
50
51
52
53
# File 'lib/workarea/storefront/pagination_view_model_test.rb', line 47

def test_prev_page
  pagination_view_model.expects(:page).returns(1).at_least_once
  assert_nil(pagination_view_model.prev_page)

  pagination_view_model.expects(:page).returns(2).at_least_once
  assert_equal(1, pagination_view_model.prev_page)
end

#test_total_pagesObject



10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/workarea/storefront/pagination_view_model_test.rb', line 10

def test_total_pages
  pagination_view_model.expects(:total).returns(2)
  pagination_view_model.expects(:per_page).returns(1)
  assert_equal(2, pagination_view_model.total_pages)

  pagination_view_model.expects(:total).returns(20)
  pagination_view_model.expects(:per_page).returns(15)
  assert_equal(2, pagination_view_model.total_pages)

  pagination_view_model.expects(:total).returns(1)
  pagination_view_model.expects(:per_page).returns(15)
  assert_equal(1, pagination_view_model.total_pages)
end