def test_ordered(self): """Three commands that if run out of order will throw an exception.""" parent_path = self.main.fs.get_by_node_id(request.ROOT, self.root).path mdid = self.main.fs.create(os.path.join(parent_path, u"test"), request.ROOT) marker = Marker(mdid) self.aq.make_file(request.ROOT, self.root, 'hola', marker, mdid) self.aq.unlink(request.ROOT, self.root, marker, '', False) self.aq.make_file(request.ROOT, self.root, 'hola', Marker(), mdid) return self.wait_for_nirvana()
def test_fail_many(self): """Test we get many failures.""" # start with root path = self.main.root_dir parent_id = self.root dl = [] ml = [] for letter in LETTERS: # create files, always inside the previous one new_file_path = os.path.join(path, letter) mdid = self.main.fs.create(new_file_path, request.ROOT) m = Marker(mdid) ml.append(m) self.aq.make_file(request.ROOT, parent_id, letter, m, mdid) dl.append( self.wait_for('AQ_FILE_NEW_OK', 'AQ_FILE_NEW_ERROR', marker=m)) path = new_file_path parent_id = m yield defer.DeferredList(dl) for m in ml[1:]: self.assertInListenerEvents( 'AQ_FILE_NEW_ERROR', { 'marker': m, 'failure': FakeFailure('NOT_A_DIRECTORY') })
def test_make_file_in_unknown_dir(self): """Test we can make files in directories we don't know.""" # create a dir dir_path = os.path.join(self.main.root_dir, 'testdir') mdid = self.main.fs.create(dir_path, request.ROOT) dir_marker = Marker(mdid) self.aq.make_dir(request.ROOT, self.root, 'testdir', dir_marker, mdid) # create a file without really knowing the parent file_path = os.path.join(dir_path, 'testfile') mdid = self.main.fs.create(file_path, request.ROOT) file_marker = Marker(mdid) file_deferred = self.wait_for('AQ_FILE_NEW_OK', marker=file_marker) self.aq.make_file(request.ROOT, dir_marker, 'testfile', file_marker, mdid) return file_deferred
def worker(): """Async worker.""" dir_path = os.path.join(self.main.root_dir, 'testdir') mdid = self.main.fs.create(dir_path, request.ROOT) marker = Marker(mdid) self.aq.make_dir('', self.root, 'hola', marker, mdid) self.aq.move('', marker, self.root, self.root, 'chau', 'dir', 'to') return self.hiccup()
def worker(): """Async worker.""" dir_path = os.path.join(self.main.root_dir, 'testdir') mdid = self.main.fs.create(dir_path, request.ROOT) marker = Marker(mdid) self.aq.make_dir('', self.root, 'hola', marker, mdid) self.aq.create_share(marker, 'jack', '', 'View', 'marker:x', '') return self.hiccup()
def test_failure(self): """Test we get failures.""" # create a file file_path = os.path.join(self.main.root_dir, 'testfile') mdid = self.main.fs.create(file_path, request.ROOT) file_marker = Marker(mdid) self.aq.make_file(request.ROOT, self.root, 'testdir', file_marker, mdid) # try to create other file inside it inside_file_path = os.path.join(file_path, 'inside_testfile') mdid = self.main.fs.create(inside_file_path, request.ROOT) inside_file_marker = Marker(mdid) inside_file_deferred = self.wait_for('AQ_FILE_NEW_ERROR', marker=inside_file_marker) self.aq.make_file(request.ROOT, file_marker, 'inside_testfile', inside_file_marker, mdid) yield inside_file_deferred self.assertInListenerEvents( 'AQ_FILE_NEW_ERROR', { 'marker': inside_file_marker, 'failure': FakeFailure('NOT_A_DIRECTORY') })
def test_make_lots(self): """Test we can make lots of them.""" # start with root dir_path = self.main.root_dir parent_id = self.root for letter in LETTERS: # create a dir, always inside the previous one new_dir_path = os.path.join(dir_path, letter) mdid = self.main.fs.create(new_dir_path, request.ROOT) new_dir_marker = Marker(mdid) self.aq.make_dir(request.ROOT, parent_id, letter, new_dir_marker, mdid) dir_path = new_dir_path parent_id = new_dir_marker # returning the last deferred is enough because it isn't fired # until all the others are. return self.wait_for('AQ_DIR_NEW_OK', marker=new_dir_marker)
def setUp(self): """Set things up.""" yield super(TestCancelMarker, self).setUp() self.marker = Marker('marker')