@Test
public void testInsertNotStructuredData() {

    // GIVEN
    final List<Document> values1 = Arrays.asList(DOCUMENT_1);
    final List<Document> values2 = Arrays.asList(DOCUMENT_2);
    final Document data = new Document().append(COLLECTION_NAME_1, values1).append(COLLECTION_NAME_2, values2);
    // WHEN
    operation.execute(connection, data);
    // THEN
    verify(connection, times(2)).getCollection(collectionNameCaptor.capture());
    final List<String> capturedCollectionNames = collectionNameCaptor.getAllValues();
    assertThat(capturedCollectionNames.size(), equalTo(2));
    assertThat(capturedCollectionNames, hasItems(COLLECTION_NAME_1, COLLECTION_NAME_2));
    verify(collection, times(2)).insertMany(documentCaptor.capture());
    final List<List<Document>> capturedDocuments = documentCaptor.getAllValues();
    assertThat(capturedDocuments.size(), equalTo(2));
    assertThat(capturedDocuments, hasItems(values1, values2));
}