@Test public void getObject() throws IOException { StoredObject object1 = container.getObject("some-object"); assertFalse(object1.exists()); object1.uploadObject(new byte[] {0x01}); StoredObject object2 = container.getObject("some-object"); assertEquals(object1, object2); assertTrue(object1.exists()); }
@Test public void listObjectsPaged() { container.getObject("A").uploadObject(new byte[] {}); container.getObject("B").uploadObject(new byte[] {}); StoredObject object3 = container.getObject("C"); object3.uploadObject(new byte[] {}); StoredObject object4 = container.getObject("D"); object4.uploadObject(new byte[] {}); Collection<StoredObject> objects = container.list(null, "B", 2); assertEquals(2, objects.size()); objects.contains(object3); objects.contains(object4); }
@Test public void listContainersUsePaginationMap() { container.getObject("A").uploadObject(new byte[] {}); container.getObject("B").uploadObject(new byte[] {}); StoredObject object3 = container.getObject("C"); object3.uploadObject(new byte[] {}); StoredObject object4 = container.getObject("D"); object4.uploadObject(new byte[] {}); PaginationMap paginationMap = container.getPaginationMap(2); Collection<StoredObject> objects = container.list(paginationMap, 1); assertEquals(2, objects.size()); objects.contains(object3); objects.contains(object4); }
@Test public void getDoesNotExist() { try { container.getObject("somevalue").delete(); fail("Should have thrown an exception"); } catch (CommandException err) { assertEquals(CommandExceptionError.ENTITY_DOES_NOT_EXIST, err.getError()); } }
// TODO implement exists() method before reactivating these chaps @Test public void getOrCreateDoesNotExist() { assertFalse(container.getObject("somevalue").exists()); }
protected void addObjects(int times) throws IOException { for (int i = 0; i < times; i++) { container.getObject("someobject" + i).uploadObject(new byte[] {}); } }
protected void addObject(String name, byte[] bytes) throws IOException { StoredObject object = container.getObject(name); object.uploadObject(bytes); }