@Test public void testTo2DStringArray() { List<String[]> keyColumns = new ArrayList<>(); keyColumns.add( new String[]{ "col1", "col2" } ); keyColumns.add( new String[]{ "col3", "col4", "col5" } ); keyColumns.add( new String[]{ "col1" } ); String[][] expectedArr = new String[3][]; expectedArr[0] = keyColumns.get( 0 ); expectedArr[1] = keyColumns.get( 1 ); expectedArr[2] = keyColumns.get( 2 ); String[][] resultArr = ArrayHelper.to2DStringArray( keyColumns ); assertThat( resultArr ).isEqualTo( expectedArr ); }
UpdateTupleWithOptimisticLock updateTupleWithOptimisticLock = appliedOperation.as( UpdateTupleWithOptimisticLock.class ); assertThat( updateTupleWithOptimisticLock.getEntityKey().getTable() ).isEqualTo( "Shipment" ); assertThat( updateTupleWithOptimisticLock.getEntityKey().getColumnValues() ).isEqualTo( new Object[] { "shipment-1" } ); InsertOrUpdateTuple insertOrUpdate = batchedOperations.next().as( InsertOrUpdateTuple.class ); assertThat( insertOrUpdate.getEntityKey().getTable() ).isEqualTo( "Shipment" ); assertThat( insertOrUpdate.getEntityKey().getColumnValues() ).isEqualTo( new Object[] { "shipment-1" } ); assertThat( insertOrUpdate.getEntityKey().getColumnValues() ).isEqualTo( new Object[] { "shipment-2" } ); InsertOrUpdateTuple insertOrUpdate = appliedOperation.as( InsertOrUpdateTuple.class ); assertThat( insertOrUpdate.getEntityKey().getTable() ).isEqualTo( "Shipment" ); assertThat( insertOrUpdate.getEntityKey().getColumnValues() ).isEqualTo( new Object[] { "shipment-1" } );
UpdateTupleWithOptimisticLock updateTupleWithOptimisticLock = appliedOperation.as( UpdateTupleWithOptimisticLock.class ); assertThat( updateTupleWithOptimisticLock.getEntityKey().getTable() ).isEqualTo( "Shipment" ); assertThat( updateTupleWithOptimisticLock.getEntityKey().getColumnValues() ).isEqualTo( new Object[] { "shipment-2" } ); InsertOrUpdateTuple insertOrUpdate = batchedOperations.next().as( InsertOrUpdateTuple.class ); assertThat( insertOrUpdate.getEntityKey().getTable() ).isEqualTo( "Shipment" ); assertThat( insertOrUpdate.getEntityKey().getColumnValues() ).isEqualTo( new Object[] { "shipment-2" } ); assertThat( batchedOperations.hasNext() ).isFalse(); InsertOrUpdateTuple insertOrUpdate = appliedOperation.as( InsertOrUpdateTuple.class ); assertThat( insertOrUpdate.getEntityKey().getTable() ).isEqualTo( "Shipment" ); assertThat( insertOrUpdate.getEntityKey().getColumnValues() ).isEqualTo( new Object[] { "shipment-2" } );
@Test public void getStorageCollectionsQueryAndSort() throws Exception { DBCollection collection = db.getCollection("testQuerySortCollection"); if (collection != null) { collection.drop(); } collection = db.createCollection("testQuerySortCollection", new BasicDBObject("count", 0)); // insert data records for the test setupPeopleData(collection); assertThat(collection.count()).isEqualTo(6); // going through DirectConnector will bypass phase where container sets up Pagination, Sorting, ReturnFields // so resourceParams are only relevant for 'q' parameter SimpleResourceParams resourceParams = new SimpleResourceParams(); resourceParams.put("q", "{country:{$ne:'FR'}}"); // This should return 4 items ordered by lastName descending and name ascending RequestContext requestContext = new RequestContext.Builder() .returnFields(new DefaultReturnFields("*(*)")) .sorting(new Sorting("-lastName,name")) .resourceParams(resourceParams).build(); ResourceState result = client.read(requestContext, "/testApp/" + BASEPATH + "/testQuerySortCollection"); String[] expectedAry = {"Helga", "Hans", "Jane", "John"}; assertThat(expectedAry).isEqualTo(getNames(result)); }
assertThat(expected).isEqualTo(getNames(result));