def test_bootstrap_picks_up_user(self): user = self.make_user_without_txlog() TransactionLog.bootstrap(user) txlog = TransactionLog.objects.get( op_type=TransactionLog.OP_USER_CREATED) self.assertTxLogDetailsMatchesUserDetails(user, txlog)
def test_bootstrap_picks_up_only_live_files(self): user = self.factory.make_user() photos = self._create_files_for_user(user, 'image/jpeg') # Even though all files in this second UDF are dead, the UDF itself is # alive so we will have a txlog for it. self._create_files_for_user(user, 'image/jpeg', status=STATUS_DEAD) TransactionLog.bootstrap(user) self.assertBootstrappingPickedUpFiles(user, photos)
def test_bootstrap_picks_up_only_files_owned_by_the_given_user(self): user = self.factory.make_user() photos = self._create_files_for_user(user, 'image/jpeg') # These files do not belong to the user we're bootstrapping now, so # they won't show up on the TXLog. self._create_files_for_user(self.factory.make_user(), 'image/jpeg') TransactionLog.bootstrap(user) self.assertBootstrappingPickedUpFiles(user, photos)
def test_bootstrap_picks_up_public_folders(self): user = self.factory.make_user() public_dir = self.factory.make_directory(user, public=True) self.factory.make_directory(user) self.clear_txlogs() public_url = public_dir.public_url self.assertIsNotNone(public_url) TransactionLog.bootstrap(user) self.assertBootstrappingPickedUpFolders(user, [public_dir])
def test_bootstrap_picks_up_only_live_udfs(self): user = self.factory.make_user() live_udf = self.factory.make_user_volume(owner=user) live_udf2 = self.factory.make_user_volume(owner=user) self.factory.make_user_volume(owner=user, status=STATUS_DEAD) self.clear_txlogs() TransactionLog.bootstrap(user) self.assertBootstrappingPickedUpUDFs( user, [user.root_node.volume, live_udf, live_udf2])
def test_bootstrap_picks_up_shares(self): user = self.factory.make_user() directory = self.factory.make_directory(user) share = self.factory.make_share(subtree=directory) self.clear_txlogs() TransactionLog.bootstrap(user) txlog = TransactionLog.objects.get( op_type=TransactionLog.OP_SHARE_ACCEPTED) expected_attrs = self._get_dict_with_txlog_attrs_from_share( share, TransactionLog.OP_SHARE_ACCEPTED) self.assert_txlog_correct(txlog, expected_attrs)
def test_bootstrap_picks_up_only_folders_in_live_udfs(self): user = self.factory.make_user() folder_in_root = self.factory.make_directory( owner=user, parent=user.root_node, name='folder1', public=True) dead_udf = self.factory.make_user_volume(owner=user) self.factory.make_directory( owner=user, parent=dead_udf.root_node, name='folder2', public=True) dead_udf.kill() self.clear_txlogs() TransactionLog.bootstrap(user) self.assertBootstrappingPickedUpFolders(user, [folder_in_root])
def test_bootstrap_picks_up_only_files_in_live_udfs(self): user = self.factory.make_user() photo_in_root = self.factory.make_file( owner=user, parent=user.root_node, name='foo.jpg', mimetype='image/jpeg') dead_udf = self.factory.make_user_volume(owner=user) self.factory.make_file( owner=user, parent=dead_udf.root_node, name='foo-in-dead-udf.jpg', mimetype='image/jpeg') dead_udf.kill() self.clear_txlogs() TransactionLog.bootstrap(user) self.assertBootstrappingPickedUpFiles(user, [photo_in_root])
def test_bootstrap_picks_up_only_folders_in_live_udfs(self): user = self.factory.make_user() folder_in_root = self.factory.make_directory(owner=user, parent=user.root_node, name='folder1', public=True) dead_udf = self.factory.make_user_volume(owner=user) self.factory.make_directory(owner=user, parent=dead_udf.root_node, name='folder2', public=True) dead_udf.kill() self.clear_txlogs() TransactionLog.bootstrap(user) self.assertBootstrappingPickedUpFolders(user, [folder_in_root])
def test_bootstrap_picks_up_only_files_in_live_udfs(self): user = self.factory.make_user() photo_in_root = self.factory.make_file(owner=user, parent=user.root_node, name='foo.jpg', mimetype='image/jpeg') dead_udf = self.factory.make_user_volume(owner=user) self.factory.make_file(owner=user, parent=dead_udf.root_node, name='foo-in-dead-udf.jpg', mimetype='image/jpeg') dead_udf.kill() self.clear_txlogs() TransactionLog.bootstrap(user) self.assertBootstrappingPickedUpFiles(user, [photo_in_root])