### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

I created an SQS FIFO queue with content based deduplication and sent a message that contains the same messageBody and attributes twice.

The message gets sent and received by the queue twice.

Im using the latest version of localstack with docker-compose.


### Expected Behavior

When ContetBasedDeduplication is set to true a message with the same body should only be recieved once by the queue during the 5 minute deduplication interval.

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

create queue
```
sqs_client.create_queue(
            QueueName='my_queue.fifo',
            Attributes={
                'FifoQueue': 'true',
                'ContentBasedDeduplication': 'true'
            },
        )
```

send message
```
item = {'hello': 'hola'}
sqs_client.send_message(
            QueueUrl='my_queue.fifo',
            MessageBody=json.dumps(item),
            MessageAttributes= {'hello': {'StringValue': 'hola', 'DataType': 'String'}},
            MessageGroupId='group-1'
        )
```





### Environment

```markdown
- OS:Ubuntu 20.04
- LocalStack: latest
```


### Anything else?

_No response_
):
        
        
        queue_url = sqs_create_queue()
        lambda_name = f"lambda-{short_uid()}"
        create_lambda_function(
            func_name=lambda_name,
            libs=TEST_LAMBDA_LIBS,
            handler_file=TEST_LAMBDA_PYTHON,
            runtime=LAMBDA_RUNTIME_PYTHON36,
        )
        delete_batch_payload = {lambda_integration.MSG_BODY_DELETE_BATCH: queue_url}
        batch = []
        for i in range(4):
            batch.append({"Id": str(i), "MessageBody": str(i)})
        sqs_client.send_message_batch(QueueUrl=queue_url, Entries=batch)
        lambda_client.invoke(
            FunctionName=lambda_name, Payload=json.dumps(delete_batch_payload), LogType="Tail"
        )
        receive_result = sqs_client.receive_message(QueueUrl=queue_url)
        assert "Messages" not in receive_result.keys()
    def test_invalid_receipt_handle_should_return_error_message(self, sqs_client, sqs_create_queue):
        
        queue_url = sqs_create_queue()
        with pytest.raises(Exception) as e:
            sqs_client.change_message_visibility(
                QueueUrl=queue_url, ReceiptHandle="INVALID", VisibilityTimeout=60
            )
        e.match("ReceiptHandleIsInvalid")
    def test_message_with_attributes_should_be_enqueued(self, sqs_client, sqs_create_queue):