Example #1
0
    def test_item_storage_as_edit(self):
        """WorkspaceStorageItem to WorkspaceEditItem conversion."""
        workspace_storage_item = WorkspaceStorageItem(
            workspace=self.workspace_storage)
        workspace_storage_item.save()

        workspace_item_edit = workspace_storage_item.as_edit(
            workspace=self.workspace_edit)
        workspace_item_edit.save()  # Do not crash.

        # This dict does not have _state, _workspace_cache, workspace_id
        storage_dict = workspace_storage_item.__dict__

        edit_dict = workspace_item_edit.__dict__

        # _workspace_cache does not appear in other code... strange?
        del edit_dict['id']
        del edit_dict['_state']
        del edit_dict['_workspace_cache']
        del edit_dict['workspace_id']

        self.assertEquals(edit_dict, storage_dict)
Example #2
0
    def test_loads_stored_workspace(self):
        """WorkspaceEdit's get_or_create should copy an existing
        stored workspace when creating a new one if the relevant
        setting exists."""
        user = AnonymousUser()
        Setting.objects.create(
            key="default_workspace_anonymous_user",
            value="some_secret_slug")

        workspace_storage = WorkspaceStorage(
            name='storage', secret_slug="some_secret_slug")
        workspace_storage.save()
        workspace_storage_item = WorkspaceStorageItem(
            workspace=workspace_storage)
        workspace_storage_item.save()

        session_key = "whee"
        workspace_edit = WorkspaceEdit.get_or_create(session_key, user)

        # Should contain 1 item, copied from the workspace storage
        self.assertEquals(
            len(workspace_edit.workspace_items.all()),
            1)