def test_one_object(self): swift_stub = SwiftClientStub() swift_stub.with_account('123223') swift_stub.with_container('bob') swift_stub.with_object('bob', 'test', 'test_contents') # create connection conn = swiftclient.client.Connection() # test container lightly cont_info = conn.get_container('bob') self.assertIsNotNone(cont_info) self.assertThat(cont_info[0], KeysEqual('content-length', 'x-container-object-count', 'accept-ranges', 'x-container-bytes-used', 'x-timestamp', 'x-trans-id', 'date', 'content-type')) cont_objects = cont_info[1] self.assertThat(len(cont_objects), Equals(1)) obj_1 = cont_objects[0] self.assertThat(obj_1, Equals( {'bytes': 13, 'last_modified': '2013-03-15T22:10:49.361950', 'hash': 'ccc55aefbf92aa66f42b638802c5e7f6', 'name': 'test', 'content_type': 'application/octet-stream'})) # test object api - not much to do here self.assertThat(conn.get_object('bob', 'test')[1], Is('test_contents')) # test remove object swift_stub.without_object('bob', 'test') # interact conn.delete_object('bob', 'test') with testtools.ExpectedException(swiftclient.ClientException): conn.delete_object('bob', 'test') self.assertThat(len(conn.get_container('bob')[1]), Is(0))
def test_two_objects(self): swift_stub = SwiftClientStub() swift_stub.with_account('123223') swift_stub.with_container('bob') swift_stub.with_container('bob2') swift_stub.with_object('bob', 'test', 'test_contents') swift_stub.with_object('bob', 'test2', 'test_contents2') conn = swiftclient.client.Connection() self.assertIs(len(conn.get_account()), 2) cont_info = conn.get_container('bob') self.assertIsNotNone(cont_info) self.assertThat(cont_info[0], KeysEqual('content-length', 'x-container-object-count', 'accept-ranges', 'x-container-bytes-used', 'x-timestamp', 'x-trans-id', 'date', 'content-type')) self.assertThat(len(cont_info[1]), Equals(2)) self.assertThat(cont_info[1][0], Equals( {'bytes': 13, 'last_modified': '2013-03-15T22:10:49.361950', 'hash': 'ccc55aefbf92aa66f42b638802c5e7f6', 'name': 'test', 'content_type': 'application/octet-stream'})) self.assertThat(conn.get_object('bob', 'test')[1], Is('test_contents')) self.assertThat(conn.get_object('bob', 'test2')[1], Is('test_contents2')) swift_stub.without_object('bob', 'test') conn.delete_object('bob', 'test') with testtools.ExpectedException(swiftclient.ClientException): conn.delete_object('bob', 'test') self.assertThat(len(conn.get_container('bob')[1]), Is(1)) swift_stub.without_container('bob') with testtools.ExpectedException(swiftclient.ClientException): conn.get_container('bob') self.assertThat(len(conn.get_account()), Is(2))