Skip to content

Commit

Permalink
Check for invalid page size
Browse files Browse the repository at this point in the history
  • Loading branch information
David Czarnecki committed Jun 19, 2011
1 parent d1af2df commit 5904879
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 0 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.markdown
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# leaderboard 1.0.6 (in progress)

* Added `disconnect` method
* Check for invalid page size when changing

# leaderboard 1.0.5 (2011-05-04)

Expand Down
6 changes: 6 additions & 0 deletions lib/leaderboard.rb
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,12 @@ def initialize(leaderboard_name, host = DEFAULT_REDIS_HOST, port = DEFAULT_REDIS
@redis_connection = Redis.new(@redis_options)
end

def page_size=(page_size)
page_size = DEFAULT_PAGE_SIZE if page_size < 1

@page_size = page_size
end

def disconnect
@redis_connection.client.disconnect
end
Expand Down
8 changes: 8 additions & 0 deletions test/test_leaderboard.rb
Original file line number Diff line number Diff line change
Expand Up @@ -189,6 +189,14 @@ def test_can_change_page_size_and_have_it_reflected_in_size_of_result_set
assert_equal 5, @leaderboard.leaders(1).size
end

def test_cannot_set_page_size_to_invalid_page_size
add_members_to_leaderboard(Leaderboard::DEFAULT_PAGE_SIZE)

@leaderboard.page_size = 0
assert_equal 1, @leaderboard.total_pages
assert_equal Leaderboard::DEFAULT_PAGE_SIZE, @leaderboard.leaders(1).size
end

def test_score_and_rank_for
add_members_to_leaderboard

Expand Down

0 comments on commit 5904879

Please sign in to comment.