def testPublishMetricDataWithDuplicateKeys(self, connectDynamoDB, _gracefulCreateTable): """ Test for elimination of rows with duplicate keys by _publishMetricData """ metricId = "3b035a5916994f2bb950f5717138f94b" rowTemplate = dict( rowid=99, ts=epochFromNaiveUTCDatetime(datetime(2015, 3, 20, 0, 46, 28)), value=10305.0, rawAnomaly=0.275, anomaly=0.999840891 ) row1 = dict(rowTemplate) row2 = dict(rowTemplate) row2["rowid"] = row1["rowid"] + 1 rows = [row1, row2] service = DynamoDBService() service._publishMetricData(metricId, rows) data = dynamodb_service.convertInferenceResultRowToMetricDataItem(metricId, row1) mockPutItem = (service._metric_data.batch_write.return_value.__enter__ .return_value.put_item) mockPutItem.assert_called_once_with(data=data._asdict(), overwrite=True)