Ejemplo n.º 1
0
    def test_fork_reverts_to_using_user_storage_default(self):
        user = UserFactory()
        user2 = UserFactory()
        us = RegionFactory()
        canada = RegionFactory()

        user_settings = user.get_addon('osfstorage')
        user_settings.default_region = us
        user_settings.save()
        user2_settings = user2.get_addon('osfstorage')
        user2_settings.default_region = canada
        user2_settings.save()

        project = ProjectFactory(creator=user, is_public=True)
        child = NodeFactory(parent=project, creator=user, is_public=True)
        child_settings = child.get_addon('osfstorage')
        child_settings.region_id = canada.id
        child_settings.save()

        fork = project.fork_node(Auth(user))
        child_fork = models.Node.objects.get_children(fork).first()
        assert fork.get_addon('osfstorage').region_id == us.id
        assert fork.get_addon('osfstorage').user_settings == user.get_addon(
            'osfstorage')
        assert child_fork.get_addon('osfstorage').region_id == us.id

        fork = project.fork_node(Auth(user2))
        child_fork = models.Node.objects.get_children(fork).first()
        assert fork.get_addon('osfstorage').region_id == canada.id
        assert fork.get_addon('osfstorage').user_settings == user2.get_addon(
            'osfstorage')
        assert child_fork.get_addon('osfstorage').region_id == canada.id
Ejemplo n.º 2
0
    def test_move_nested_between_regions(self):
        canada = RegionFactory()
        new_component = NodeFactory(parent=self.project)
        component_node_settings = new_component.get_addon('osfstorage')
        component_node_settings.region = canada
        component_node_settings.save()

        move_to = component_node_settings.get_root()
        to_move = self.node_settings.get_root().append_folder(
            'Aaah').append_folder('Woop')
        child = to_move.append_file('There it is')

        for _ in range(2):
            version = factories.FileVersionFactory(
                region=self.node_settings.region)
            child.add_version(version)
        child.save()

        moved = to_move.move_under(move_to)
        child.reload()

        assert new_component == child.target
        versions = child.versions.order_by('-created')
        assert versions.first().region == component_node_settings.region
        assert versions.last().region == self.node_settings.region
Ejemplo n.º 3
0
    def test_fork_reverts_to_using_user_storage_default(self):
        user = UserFactory()
        user2 = UserFactory()
        us = RegionFactory()
        canada = RegionFactory()

        user_settings = user.get_addon('osfstorage')
        user_settings.default_region = us
        user_settings.save()
        user2_settings = user2.get_addon('osfstorage')
        user2_settings.default_region = canada
        user2_settings.save()

        project = ProjectFactory(creator=user, is_public=True)
        child = NodeFactory(parent=project, creator=user, is_public=True)
        child_settings = child.get_addon('osfstorage')
        child_settings.region_id = canada.id
        child_settings.save()

        fork = project.fork_node(Auth(user))
        child_fork = models.Node.objects.get_children(fork).first()
        assert fork.get_addon('osfstorage').region_id == us.id
        assert fork.get_addon('osfstorage').user_settings == user.get_addon('osfstorage')
        assert child_fork.get_addon('osfstorage').region_id == us.id

        fork = project.fork_node(Auth(user2))
        child_fork = models.Node.objects.get_children(fork).first()
        assert fork.get_addon('osfstorage').region_id == canada.id
        assert fork.get_addon('osfstorage').user_settings == user2.get_addon('osfstorage')
        assert child_fork.get_addon('osfstorage').region_id == canada.id
Ejemplo n.º 4
0
 def child_node_with_different_region(self, user, node, region2):
     child = NodeFactory(parent=node, creator=user, is_public=True)
     child_settings = child.get_addon('osfstorage')
     child_settings.region_id = region2.id
     child_settings.save()
     return child