|
19 | 19 | import org.junit.Test;
|
20 | 20 |
|
21 | 21 | import java.util.ArrayList;
|
| 22 | +import java.util.Arrays; |
22 | 23 | import java.util.Comparator;
|
23 | 24 | import java.util.Date;
|
24 | 25 | import java.util.List;
|
|
41 | 42 |
|
42 | 43 |
|
43 | 44 | import static io.objectbox.TestEntity_.simpleBoolean;
|
| 45 | +import static io.objectbox.TestEntity_.simpleByteArray; |
44 | 46 | import static io.objectbox.TestEntity_.simpleFloat;
|
45 | 47 | import static io.objectbox.TestEntity_.simpleInt;
|
46 | 48 | import static io.objectbox.TestEntity_.simpleLong;
|
47 | 49 | import static io.objectbox.TestEntity_.simpleShort;
|
48 | 50 | import static io.objectbox.TestEntity_.simpleString;
|
49 | 51 | import static org.junit.Assert.assertEquals;
|
| 52 | +import static org.junit.Assert.assertFalse; |
50 | 53 | import static org.junit.Assert.assertNotNull;
|
51 | 54 | import static org.junit.Assert.assertNull;
|
52 | 55 | import static org.junit.Assert.assertSame;
|
@@ -349,6 +352,65 @@ public void testStringIn() {
|
349 | 352 | assertEquals("foo bar", entities.get(1).getSimpleString());
|
350 | 353 | }
|
351 | 354 |
|
| 355 | + @Test |
| 356 | + public void testByteArrayEqualsAndSetParameter() { |
| 357 | + putTestEntitiesScalars(); |
| 358 | + |
| 359 | + byte[] value = {1, 2, (byte) 2000}; |
| 360 | + Query<TestEntity> query = box.query().equal(simpleByteArray, value).parameterAlias("bytes").build(); |
| 361 | + |
| 362 | + assertEquals(1, query.count()); |
| 363 | + TestEntity first = query.findFirst(); |
| 364 | + assertNotNull(first); |
| 365 | + assertTrue(Arrays.equals(value, first.getSimpleByteArray())); |
| 366 | + |
| 367 | + byte[] value2 = {1, 2, (byte) 2001}; |
| 368 | + query.setParameter(simpleByteArray, value2); |
| 369 | + |
| 370 | + assertEquals(1, query.count()); |
| 371 | + TestEntity first2 = query.findFirst(); |
| 372 | + assertNotNull(first2); |
| 373 | + assertTrue(Arrays.equals(value2, first2.getSimpleByteArray())); |
| 374 | + |
| 375 | + byte[] value3 = {1, 2, (byte) 2002}; |
| 376 | + query.setParameter("bytes", value3); |
| 377 | + |
| 378 | + assertEquals(1, query.count()); |
| 379 | + TestEntity first3 = query.findFirst(); |
| 380 | + assertNotNull(first3); |
| 381 | + assertTrue(Arrays.equals(value3, first3.getSimpleByteArray())); |
| 382 | + } |
| 383 | + |
| 384 | + @Test |
| 385 | + public void testByteArrayLess() { |
| 386 | + putTestEntitiesScalars(); |
| 387 | + |
| 388 | + byte[] value = {1, 2, (byte) 2005}; |
| 389 | + Query<TestEntity> query = box.query().less(simpleByteArray, value).build(); |
| 390 | + List<TestEntity> results = query.find(); |
| 391 | + |
| 392 | + assertEquals(5, results.size()); |
| 393 | + // Java does not have compareTo for arrays, so just make sure its not equal to the value |
| 394 | + for (TestEntity result : results) { |
| 395 | + assertFalse(Arrays.equals(value, result.getSimpleByteArray())); |
| 396 | + } |
| 397 | + } |
| 398 | + |
| 399 | + @Test |
| 400 | + public void testByteArrayGreater() { |
| 401 | + putTestEntitiesScalars(); |
| 402 | + |
| 403 | + byte[] value = {1, 2, (byte) 2005}; |
| 404 | + Query<TestEntity> query = box.query().greater(simpleByteArray, value).build(); |
| 405 | + List<TestEntity> results = query.find(); |
| 406 | + |
| 407 | + assertEquals(4, results.size()); |
| 408 | + // Java does not have compareTo for arrays, so just make sure its not equal to the value |
| 409 | + for (TestEntity result : results) { |
| 410 | + assertFalse(Arrays.equals(value, result.getSimpleByteArray())); |
| 411 | + } |
| 412 | + } |
| 413 | + |
352 | 414 | @Test
|
353 | 415 | public void testScalarFloatLessAndGreater() {
|
354 | 416 | putTestEntitiesScalars();
|
|
0 commit comments