@@ -26,6 +26,7 @@ def test_send_records(self, test_instance, mocker):
2626 MOCK_RECORDS = [b'a' , b'b' , b'c' , b'd' , b'e' ]
2727 mocked_send_method = mocker .patch (
2828 'nypl_py_utils.classes.kinesis_client.KinesisClient._send_kinesis_format_records' ) # noqa: E501
29+ mock_sleep = mocker .patch ('time.sleep' , return_value = None )
2930
3031 test_instance .send_records (MOCK_RECORDS )
3132 mocked_send_method .assert_has_calls ([
@@ -34,6 +35,25 @@ def test_send_records(self, test_instance, mocker):
3435 mocker .call ([_TEST_KINESIS_RECORDS [2 ],
3536 _TEST_KINESIS_RECORDS [3 ]], 1 ),
3637 mocker .call ([_TEST_KINESIS_RECORDS [4 ]], 1 )])
38+ mock_sleep .assert_not_called ()
39+
40+ def test_send_records_with_pause (self , mocker ):
41+ mocker .patch ('boto3.client' )
42+ test_instance = KinesisClient ('test_stream_arn' , 500 )
43+
44+ MOCK_RECORDS = [b'a' ] * 2200
45+ mocked_send_method = mocker .patch (
46+ 'nypl_py_utils.classes.kinesis_client.KinesisClient._send_kinesis_format_records' ) # noqa: E501
47+ mock_sleep = mocker .patch ('time.sleep' , return_value = None )
48+
49+ test_instance .send_records (MOCK_RECORDS )
50+ mocked_send_method .assert_has_calls ([
51+ mocker .call ([_TEST_KINESIS_RECORDS [0 ]]* 500 , 1 ),
52+ mocker .call ([_TEST_KINESIS_RECORDS [0 ]]* 500 , 1 ),
53+ mocker .call ([_TEST_KINESIS_RECORDS [0 ]]* 500 , 1 ),
54+ mocker .call ([_TEST_KINESIS_RECORDS [0 ]]* 500 , 1 ),
55+ mocker .call ([_TEST_KINESIS_RECORDS [0 ]]* 200 , 1 )])
56+ assert mock_sleep .call_count == 2
3757
3858 def test_send_kinesis_format_records (self , test_instance ):
3959 test_instance .kinesis_client .put_records .return_value = {
0 commit comments