protected List<TestEntity> putTestEntities(int count, @Nullable String baseString, int baseNr) { List<TestEntity> entities = new ArrayList<>(); for (int i = baseNr; i < baseNr + count; i++) { entities.add(createTestEntity(baseString != null ? baseString + i : null, i)); } getTestEntityBox().put(entities); return entities; }
List<TestEntity> putTestEntitiesStrings() { List<TestEntity> entities = new ArrayList<>(); entities.add(createTestEntity("banana", 1)); entities.add(createTestEntity("apple", 2)); entities.add(createTestEntity("bar", 3)); entities.add(createTestEntity("banana milk shake", 4)); entities.add(createTestEntity("foo bar", 5)); box.put(entities); return entities; } }
@Override public void run() { for (int i = 0; i < count; i++) { Customer customer = new Customer(0, "Customer" + i); customerBox.put(customer); putOrder(customer, "order" + 1); } } });
protected Order putOrder(@Nullable Customer customer, @Nullable String text) { Order order = new Order(); order.setCustomer(customer); order.setText(text); orderBox.put(order); return order; }
protected Customer putCustomer() { Customer customer = new Customer(); customer.setName("Joe"); customerBox.put(customer); return customer; }
@Override public void run() { getTestEntityBox().put(new TestEntity()); } });
@Override public Long call() throws Exception { TestEntity entity = new TestEntity(); entity.setId(-1); getTestEntityBox().put(entity); return null; } };
@Test public void testRemoveAll() { int count = 5; Customer customer = putCustomerWithOrders(count); ToMany<Order> toMany = (ToMany<Order>) customer.orders; List<Order> toRemove = new ArrayList<>(); toRemove.add(toMany.get(1)); toRemove.add(toMany.get(3)); assertTrue(toMany.removeAll(toRemove)); customerBox.put(customer); assertOrder2And4Removed(count, customer, toMany); }
protected TestEntity putTestEntity(@Nullable String simpleString, int nr) { TestEntity entity = createTestEntity(simpleString, nr); long key = getTestEntityBox().put(entity); assertTrue(key != 0); assertEquals(key, entity.getId()); return entity; }
@Override public void run() { putTestEntities(3); Box<TestEntityMinimal> boxMini = store.boxFor(TestEntityMinimal.class); boxMini.put(new TestEntityMinimal(), new TestEntityMinimal()); assertEquals(0, classesWithChanges.size()); } };
@Test public void testClear_removeFromTargetBox() { Customer customer = putCustomerWithOrders(5); ToMany<Order> toMany = (ToMany<Order>) customer.orders; toMany.setRemoveFromTargetBox(true); toMany.clear(); customerBox.put(customer); assertEquals(0, orderBox.count()); }
@Test public void testAddRemove_notPersisted() { Customer customer = putCustomer(); ToMany<Order> toMany = customer.ordersStandalone; Order order = new Order(); toMany.add(order); toMany.remove(order); customerBox.put(customer); assertEquals(0, orderBox.count()); }
@Test public void testRemove() { int count = 5; Customer customer = putCustomerWithOrders(count); ToMany<Order> toMany = customer.ordersStandalone; Order removed1 = toMany.remove(3); assertEquals("order4", removed1.getText()); Order removed2 = toMany.get(1); assertTrue(toMany.remove(removed2)); customerBox.put(customer); assertOrder2And4Removed(count, customer, toMany); }
@Test public void testRemove() { int count = 5; Customer customer = putCustomerWithOrders(count); ToMany<Order> toMany = (ToMany<Order>) customer.orders; Order removed1 = toMany.remove(3); assertEquals("order4", removed1.getText()); Order removed2 = toMany.get(1); assertTrue(toMany.remove(removed2)); customerBox.put(customer); assertOrder2And4Removed(count, customer, toMany); }
@Test public void testPutAndGet() { TestEntity entity = new TestEntity(); entity.setSimpleInt(1977); long key = box.put(entity); assertTrue(key != 0); assertEquals(key, entity.getId()); TestEntity entityRead = box.get(key); assertNotNull(entityRead); assertEquals(1977, entityRead.getSimpleInt()); }
@Test public void testClear() { int count = 5; Customer customer = putCustomerWithOrders(count); ToMany<Order> toMany = customer.ordersStandalone; toMany.clear(); customerBox.put(customer); Customer customer2 = customerBox.get(customer.getId()); assertEquals(0, customer2.getOrdersStandalone().size()); assertEquals(count, orderBox.count()); }
@Test public void testSumDoubleOfFloats() { TestEntity entity = new TestEntity(); entity.setSimpleFloat(0); TestEntity entity2 = new TestEntity(); entity2.setSimpleFloat(-2.05f); box.put(entity, entity2); double sum = box.query().build().property(simpleFloat).sumDouble(); assertEquals(-2.05, sum, 0.0001); }