@@ -0,0 +1,1751 @@
+package io.orchestrate.client.integration;%0A%0Aimport static org.junit.Assert.assertNotNull;%0Aimport io.orchestrate.client.KvList;%0Aimport io.orchestrate.client.KvListOperation;%0Aimport io.orchestrate.client.OrchestrateFuture;%0A%0Aimport java.util.concurrent.ExecutionException;%0Aimport java.util.concurrent.TimeUnit;%0Aimport java.util.concurrent.TimeoutException;%0A%0Aimport org.junit.Test;%0A%0Apublic class ListTest extends OperationTest %7B%0A%0A    private %3CT%3E KvList%3CT%3E result(final KvListOperation%3CT%3E listOp)%0A            throws InterruptedException, ExecutionException, TimeoutException %7B%0A        final OrchestrateFuture%3CKvList%3CT%3E%3E future = client().execute(listOp);%0A        return future.get(3, TimeUnit.SECONDS);%0A    %7D%0A%0A    @Test%0A    public void basicList()%0A            throws InterruptedException, ExecutionException, TimeoutException %7B%0A        final KvListOperation%3CString%3E listOp = new KvListOperation%3CString%3E(TEST_COLLECTION, String.class);%0A        final KvList%3CString%3E results = result(listOp);%0A        assertNotNull(results);%0A    %7D%0A%0A    @Test%0A    public void listWithAfterKey()%0A            throws InterruptedException, ExecutionException, TimeoutException %7B%0A        final KvListOperation%3CString%3E listOp = new KvListOperation%3CString%3E(TEST_COLLECTION, %22someKey%22, 3,%0A                false, String.class);%0A        final KvList%3CString%3E results = result(listOp);%0A        assertNotNull(results);%0A    %7D%0A%0A    @Test%0A    public void listWithStartKey()%0A            throws InterruptedException, ExecutionException, TimeoutException %7B%0A        final KvListOperation%3CString%3E listOp = new KvListOperation%3CString%3E(TEST_COLLECTION, %22someKey%22, 3,%0A                true, String.class);%0A        final KvList%3CString%3E results = result(listOp);%0A        assertNotNull(results);%0A    %7D%0A%0A%7D%0A

Add integration test for list operations