示例#1
0
    def test_importexport_instance(self):
        opts = {
            u'include_instance': True
        }
        ed = importexport.export_data(opts)

        testdata = ed[u'instance'][self.instance.key]
        testdata[u'key'] += testtools.tt_make_str() + u'A'  # Test uppercase
        ed[u'instance'] = {testdata[u'key']: testdata}

        importexport.import_data(opts, ed)
        imported_instance = model.Instance.find(testdata[u'key'])
        self.assertTrue(imported_instance)

        INSTANCE_PROPS = [
            u'label', u'creator', u'description', u'required_majority',
            u'activation_delay',
            u'create_time', u'access_time', u'delete_time',
            u'default_group_id', u'allow_adopt', u'allow_delegate',
            u'allow_propose', u'allow_index', u'hidden', u'locale', u'css',
            u'frozen', u'milestones', u'use_norms', u'require_selection',
            u'is_authenticated', u'hide_global_categories',
            u'editable_comments_default', u'editable_proposals_default',
            u'require_valid_email', u'allow_thumbnailbadges',
            u'thumbnailbadges_height', u'thumbnailbadges_width',
        ]
        for p in INSTANCE_PROPS:
            imported = getattr(imported_instance, p)
            expected = getattr(self.instance, p)
            msg = (u'Instance.%s: Got %r, but expected %r' %
                   (p, imported, expected))
            self.assertEqual(expected, imported, msg)
示例#2
0
    def test_importexport_instance(self):
        opts = {u"include_instance": True}
        ed = importexport.export_data(opts)

        testdata = ed[u"instance"][self.instance.key]
        testdata[u"key"] += testtools.tt_make_str() + u"A"  # Test uppercase
        ed[u"instance"] = {testdata[u"key"]: testdata}

        importexport.import_data(opts, ed)
        imported_instance = model.Instance.find(testdata[u"key"])
        self.assertTrue(imported_instance)

        INSTANCE_PROPS = [
            u"label",
            u"creator",
            u"description",
            u"required_majority",
            u"activation_delay",
            u"create_time",
            u"access_time",
            u"delete_time",
            u"default_group_id",
            u"allow_adopt",
            u"allow_delegate",
            u"allow_propose",
            u"allow_index",
            u"hidden",
            u"locale",
            u"css",
            u"frozen",
            u"milestones",
            u"use_norms",
            u"require_selection",
            u"is_authenticated",
            u"hide_global_categories",
            u"editable_comments_default",
            u"editable_proposals_default",
            u"require_valid_email",
            u"allow_thumbnailbadges",
            u"thumbnailbadges_height",
            u"thumbnailbadges_width",
        ]
        for p in INSTANCE_PROPS:
            imported = getattr(imported_instance, p)
            expected = getattr(self.instance, p)
            msg = u"Instance.%s: Got %r, but expected %r" % (p, imported, expected)
            self.assertEqual(expected, imported, msg)
示例#3
0
    def test_import_badge(self):
        test_data = {
            u"badge": {
                u"importexport_b1": {
                    u"title": u"importexport_b1",
                    u"color": u"mauve",
                    u"adhocracy_badge_type": u"user",
                    u"visible": False,
                    u"description": u"test badge"
                }
            }
        }
        opts = {u'include_badge': True}

        importexport.import_data(opts, test_data)
        b = model.UserBadge.find(u'importexport_b1')
        self.assertTrue(b)
        self.assertEqual(b.title, u'importexport_b1')
        self.assertEqual(b.color, u'mauve')
        self.assertEqual(b.polymorphic_identity, u'user')
        self.assertTrue(not b.visible)
        self.assertEqual(b.description, u'test badge')
示例#4
0
    def test_import_badge(self):
        test_data = {
            u"badge": {
                u"importexport_b1": {
                    u"title": u"importexport_b1",
                    u"color": u"mauve",
                    u"adhocracy_badge_type": u"user",
                    u"visible": False,
                    u"description": u"test badge",
                }
            }
        }
        opts = {u"include_badge": True}

        importexport.import_data(opts, test_data)
        b = model.UserBadge.find(u"importexport_b1")
        self.assertTrue(b)
        self.assertEqual(b.title, u"importexport_b1")
        self.assertEqual(b.color, u"mauve")
        self.assertEqual(b.polymorphic_identity, u"user")
        self.assertTrue(not b.visible)
        self.assertEqual(b.description, u"test badge")
示例#5
0
    def test_import_user(self):
        test_data = {
            u"user": {
                u"importexport_u1": {
                    u"user_name": u"importexport_u1",
                    u"display_name": u"Mr. Imported",
                    u"email": u"test@test_importexport.de",
                    u"bio": u"hey",
                    u"locale": u"de_DE",
                    u"adhocracy_banned": True
                }
            }
        }
        opts = dict(include_user=True, user_personal=True, user_password=False)

        importexport.import_data(opts, test_data)
        u = model.User.find_by_email(u'test@test_importexport.de')
        self.assertTrue(u)
        self.assertEqual(u.user_name, u'importexport_u1')
        self.assertEqual(u.email, u'test@test_importexport.de')
        self.assertEqual(u.display_name, u'Mr. Imported')
        self.assertEqual(u.bio, u'hey')
        self.assertEqual(str(u.locale), u'de_DE')
        self.assertTrue(not u.banned)

        opts[u'replacement_strategy'] = u'skip'
        testdata_user = test_data[u'user'][u'importexport_u1']
        testdata_user[u'display_name'] = u'Dr. Imported'
        importexport.import_data(opts, test_data)
        u = model.User.find_by_email(u'test@test_importexport.de')
        self.assertTrue(u)
        self.assertEqual(u.display_name, u'Mr. Imported')
        self.assertTrue(not u.banned)

        opts[u'replacement_strategy'] = u'update'
        opts[u'user_password'] = True
        importexport.import_data(opts, test_data)
        u = model.User.find_by_email(u'test@test_importexport.de')
        self.assertTrue(u)
        self.assertEqual(u.display_name, u'Dr. Imported')
        self.assertTrue(u.banned)
示例#6
0
    def test_import_user(self):
        test_data = {
            u"user": {
                u"importexport_u1": {
                    u"user_name": u"importexport_u1",
                    u"display_name": u"Mr. Imported",
                    u"email": u"test@test_importexport.de",
                    u"bio": u"hey",
                    u"locale": u"de_DE",
                    u"adhocracy_banned": True,
                }
            }
        }
        opts = dict(include_user=True, user_personal=True, user_password=False)

        importexport.import_data(opts, test_data)
        u = model.User.find_by_email(u"test@test_importexport.de")
        self.assertTrue(u)
        self.assertEqual(u.user_name, u"importexport_u1")
        self.assertEqual(u.email, u"test@test_importexport.de")
        self.assertEqual(u.display_name, u"Mr. Imported")
        self.assertEqual(u.bio, u"hey")
        self.assertEqual(str(u.locale), u"de_DE")
        self.assertTrue(not u.banned)

        opts[u"replacement_strategy"] = u"skip"
        testdata_user = test_data[u"user"][u"importexport_u1"]
        testdata_user[u"display_name"] = u"Dr. Imported"
        importexport.import_data(opts, test_data)
        u = model.User.find_by_email(u"test@test_importexport.de")
        self.assertTrue(u)
        self.assertEqual(u.display_name, u"Mr. Imported")
        self.assertTrue(not u.banned)

        opts[u"replacement_strategy"] = u"update"
        opts[u"user_password"] = True
        importexport.import_data(opts, test_data)
        u = model.User.find_by_email(u"test@test_importexport.de")
        self.assertTrue(u)
        self.assertEqual(u.display_name, u"Dr. Imported")
        self.assertTrue(u.banned)