Merge pull request #670 from Cory-Bradshaw/v1.x
Fixing LeaseManagementIntegrationTest
This commit is contained in:
commit
e8180c9804
1 changed files with 23 additions and 2 deletions
|
|
@ -14,17 +14,25 @@
|
||||||
*/
|
*/
|
||||||
package com.amazonaws.services.kinesis.leases.impl;
|
package com.amazonaws.services.kinesis.leases.impl;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.concurrent.atomic.AtomicInteger;
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
|
|
||||||
|
import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient;
|
||||||
import com.amazonaws.services.dynamodbv2.model.BillingMode;
|
import com.amazonaws.services.dynamodbv2.model.BillingMode;
|
||||||
|
import com.amazonaws.services.dynamodbv2.model.DescribeTableRequest;
|
||||||
|
import com.amazonaws.services.dynamodbv2.model.DescribeTableResult;
|
||||||
|
import com.amazonaws.services.dynamodbv2.model.ListTablesResult;
|
||||||
|
import com.amazonaws.services.dynamodbv2.model.TableDescription;
|
||||||
|
import com.amazonaws.services.dynamodbv2.model.TableStatus;
|
||||||
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisClientLibConfiguration;
|
import com.amazonaws.services.kinesis.clientlibrary.lib.worker.KinesisClientLibConfiguration;
|
||||||
import junit.framework.Assert;
|
import junit.framework.Assert;
|
||||||
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
import com.amazonaws.services.kinesis.leases.exceptions.LeasingException;
|
import com.amazonaws.services.kinesis.leases.exceptions.LeasingException;
|
||||||
|
import org.mockito.Mockito;
|
||||||
|
|
||||||
public class LeaseManagerIntegrationTest extends LeaseIntegrationTest {
|
public class LeaseManagerIntegrationTest extends LeaseIntegrationTest {
|
||||||
|
|
||||||
|
|
@ -235,7 +243,13 @@ public class LeaseManagerIntegrationTest extends LeaseIntegrationTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testWaitUntilLeaseTableExists() throws LeasingException {
|
public void testWaitUntilLeaseTableExists() throws LeasingException {
|
||||||
KinesisClientLeaseManager manager = new KinesisClientLeaseManager("nagl_ShardProgress", ddbClient, true,
|
AmazonDynamoDBClient ddbMock = Mockito.mock(ddbClient.getClass());
|
||||||
|
DescribeTableResult result = Mockito.mock(DescribeTableResult.class);
|
||||||
|
TableDescription description = Mockito.mock(TableDescription.class);
|
||||||
|
Mockito.when(description.getTableStatus()).thenReturn(TableStatus.ACTIVE.name());
|
||||||
|
Mockito.when(result.getTable()).thenReturn(description);
|
||||||
|
Mockito.when(ddbMock.describeTable(Mockito.any(DescribeTableRequest.class))).thenReturn(result);
|
||||||
|
KinesisClientLeaseManager manager = new KinesisClientLeaseManager("existing_table", ddbMock, true,
|
||||||
KinesisClientLibConfiguration.DEFAULT_DDB_BILLING_MODE) {
|
KinesisClientLibConfiguration.DEFAULT_DDB_BILLING_MODE) {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -246,12 +260,19 @@ public class LeaseManagerIntegrationTest extends LeaseIntegrationTest {
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
Assert.assertTrue(manager.waitUntilLeaseTableExists(1, 1));
|
Assert.assertTrue(manager.waitUntilLeaseTableExists(1, 1));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testWaitUntilLeaseTableExistsPayPerRequest() throws LeasingException {
|
public void testWaitUntilLeaseTableExistsPayPerRequest() throws LeasingException {
|
||||||
KinesisClientLeaseManager manager = new KinesisClientLeaseManager("nagl_ShardProgress_PayPerRequest", ddbClient, true,
|
AmazonDynamoDBClient ddbMock = Mockito.mock(ddbClient.getClass());
|
||||||
|
DescribeTableResult result = Mockito.mock(DescribeTableResult.class);
|
||||||
|
TableDescription description = Mockito.mock(TableDescription.class);
|
||||||
|
Mockito.when(description.getTableStatus()).thenReturn(TableStatus.ACTIVE.name());
|
||||||
|
Mockito.when(result.getTable()).thenReturn(description);
|
||||||
|
Mockito.when(ddbMock.describeTable(Mockito.any(DescribeTableRequest.class))).thenReturn(result);
|
||||||
|
KinesisClientLeaseManager manager = new KinesisClientLeaseManager("existing_table", ddbMock, true,
|
||||||
BillingMode.PAY_PER_REQUEST) {
|
BillingMode.PAY_PER_REQUEST) {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue