Skip to content

Commit

Permalink
TEIID-5363 adding quoting to the attribute selection
Browse files Browse the repository at this point in the history
  • Loading branch information
shawkins committed Jun 11, 2018
1 parent 5a38d29 commit 73d1ea4
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.services.simpledb.AmazonSimpleDBClient;
import com.amazonaws.services.simpledb.model.*;
import com.amazonaws.services.simpledb.util.SimpleDBUtils;

public class SimpleDBConnectionImpl extends BasicConnection implements SimpleDBConnection {
private AmazonSimpleDBClient client;
Expand Down Expand Up @@ -87,7 +88,7 @@ public Set<SimpleDBAttribute> getAttributeNames(String domainName) throws Transl
DomainMetadataRequest domainMetadataRequest = new DomainMetadataRequest(domainName);
DomainMetadataResult metadataResult = client.domainMetadata(domainMetadataRequest);
int attributesCount = metadataResult.getAttributeNameCount();
SelectResult selectResult = client.select(new SelectRequest("SELECT * FROM " + domainName)); //$NON-NLS-1$
SelectResult selectResult = client.select(new SelectRequest("SELECT * FROM " + SimpleDBUtils.quoteName(domainName))); //$NON-NLS-1$
return getAttributeNamesFromSelectResult(selectResult, attributesCount);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.mockito.invocation.InvocationOnMock;
import org.mockito.stubbing.Answer;

import com.amazonaws.AmazonServiceException;
import com.amazonaws.services.simpledb.AmazonSimpleDBClient;
Expand Down Expand Up @@ -66,7 +68,14 @@ public void getAttributeNamesTest() throws Exception {
items.add(new Item("1", Arrays.asList(new Attribute("c", "d"), new Attribute("a", "b"))));
stub(result.getItems()).toReturn(items);
when(metadataResult.getAttributeNameCount()).thenReturn(2);
when(client.select(any(SelectRequest.class))).thenReturn(result);
when(client.select(any(SelectRequest.class))).thenAnswer(new Answer<SelectResult>() {
@Override
public SelectResult answer(InvocationOnMock invocation)
throws Throwable {
assertEquals("SELECT * FROM `x`", ((SelectRequest)invocation.getArguments()[0]).getSelectExpression());
return result;
}
});
when(client.domainMetadata(any(DomainMetadataRequest.class))).thenReturn(metadataResult);

assertEquals("c", simpleDbApi.getAttributeNames("x").iterator().next().getName());
Expand Down

0 comments on commit 73d1ea4

Please sign in to comment.