'Test that edx.course.bookmark.listed event values are as expected for different page size values'

@patch('eventtracking.tracker.emit')
@ddt.unpack
@ddt.data({'page_size': (-1), 'expected_bookmarks_count': 2, 'expected_page_size': 10, 'expected_page_number': 1}, {'page_size': 0, 'expected_bookmarks_count': 2, 'expected_page_size': 10, 'expected_page_number': 1}, {'page_size': 999, 'expected_bookmarks_count': 2, 'expected_page_size': 100, 'expected_page_number': 1})
def test_listed_event_for_different_page_size_values(self, mock_tracker, page_size, expected_bookmarks_count, expected_page_size, expected_page_number):

    query_parameters = 'course_id={}&page_size={}'.format(urllib.quote(self.course_id), page_size)
    self.send_get(client=self.client, url=reverse('bookmarks'), query_parameters=query_parameters)
    self.assert_bookmark_event_emitted(mock_tracker, event_name='edx.bookmark.listed', course_id=self.course_id, list_type='per_course', bookmarks_count=expected_bookmarks_count, page_size=expected_page_size, page_number=expected_page_number)
