@Test
public void testExecute() throws InvalidArgumentException, ChangeValueException, TaskPrepareException, TaskExecutionException, IDatabaseException {

    InMemoryDBInsertTask insertTask = new InMemoryDBInsertTask();
    IObject query = new DSObject("{\"collectionName\": \"collection_name\"}");
    IObject document = new DSObject("{\"hello\": \"world\"}");
    IFieldName documentFieldName = new FieldName("document");
    query.setValue(documentFieldName, document);
    insertTask.prepare(query);
    insertTask.execute();
    verify(inMemoryDatabase).insert(document, "collection_name");
}