|
21 | 21 | import static com.google.cloud.spanner.MockSpannerTestUtil.READ_ONE_KEY_VALUE_STATEMENT;
|
22 | 22 | import static com.google.cloud.spanner.MockSpannerTestUtil.READ_TABLE_NAME;
|
23 | 23 | import static com.google.cloud.spanner.MockSpannerTestUtil.SELECT1;
|
| 24 | +import static com.google.cloud.spanner.MockSpannerTestUtil.SELECT1_RESULTSET; |
24 | 25 | import static com.google.cloud.spanner.SpannerApiFutures.get;
|
25 | 26 | import static com.google.common.truth.Truth.assertThat;
|
26 | 27 | import static org.junit.Assert.assertEquals;
|
@@ -2943,6 +2944,24 @@ public void testMetadataUnknownTypes() {
|
2943 | 2944 | }
|
2944 | 2945 | }
|
2945 | 2946 |
|
| 2947 | + @Test |
| 2948 | + public void testStatementWithBytesArrayParameter() { |
| 2949 | + Statement statement = |
| 2950 | + Statement.newBuilder("select id from test where b=@p1") |
| 2951 | + .bind("p1") |
| 2952 | + .toBytesArray( |
| 2953 | + ImmutableList.of(ByteArray.copyFrom("test1"), ByteArray.copyFrom("test2"))) |
| 2954 | + .build(); |
| 2955 | + mockSpanner.putStatementResult(StatementResult.query(statement, SELECT1_RESULTSET)); |
| 2956 | + DatabaseClient client = |
| 2957 | + spanner.getDatabaseClient(DatabaseId.of(TEST_PROJECT, TEST_INSTANCE, TEST_DATABASE)); |
| 2958 | + try (ResultSet resultSet = client.singleUse().executeQuery(statement)) { |
| 2959 | + assertTrue(resultSet.next()); |
| 2960 | + assertEquals(1L, resultSet.getLong(0)); |
| 2961 | + assertFalse(resultSet.next()); |
| 2962 | + } |
| 2963 | + } |
| 2964 | + |
2946 | 2965 | static void assertAsString(String expected, ResultSet resultSet, int col) {
|
2947 | 2966 | assertEquals(expected, resultSet.getValue(col).getAsString());
|
2948 | 2967 | assertEquals(ImmutableList.of(expected), resultSet.getValue(col).getAsStringList());
|
|
0 commit comments