예제 #1
0
    def test_VATINField_admin(self):
        """Admin form is generated."""
        ma = ModelAdmin(VIESModel, self.site)

        try:
            ma.get_form(request)
        except Exception as e:
            self.fail(e.message)
예제 #2
0
    def test_vatin_field_admin(self):
        """Admin form is generated."""
        ma = ModelAdmin(VIESModel, self.site)

        try:
            ma.get_form(request)
        except Exception as e:
            self.fail(e.message)
예제 #3
0
    def change_decision_via_admin(self, decision, new_organization=None):
        """
        Used for testing custom behaviour for Decision change in django
        admin - see publicweb/admin.py, DecisionAdmin.save_model()
        Requirement: logged in user is_staff and is_superuser.
        """
        ma = ModelAdmin(Decision, AdminSite())
        data = ma.get_form(None)(instance=decision).initial
        for key, value in data.items():
            if value == None:
                data[key] = u''
        man_data = {
            'feedback_set-TOTAL_FORMS': u'1',
            'feedback_set-INITIAL_FORMS': u'0',
            'feedback_set-MAX_NUM_FORMS': u''
        }
        data.update(man_data)
        if new_organization:
            data['organization'] = new_organization.id

        url = reverse('admin:publicweb_decision_change', args=[decision.id])
        response = self.client.post(url, data, follow=True)
        self.assertEquals(response.template_name,
                          'admin/decision_change_list.html',
                          "Failed to edit Decision via admin screen")

        decision = Decision.objects.get(id=decision.id)
        if new_organization:
            self.assertEquals(decision.organization.id, new_organization.id)
예제 #4
0
파일: tests.py 프로젝트: Caramel/django
    def test_default_foreign_key_widget(self):
        # First, without any radio_fields specified, the widgets for ForeignKey
        # and fields with choices specified ought to be a basic Select widget.
        # ForeignKey widgets in the admin are wrapped with RelatedFieldWidgetWrapper so
        # they need to be handled properly when type checking. For Select fields, all of
        # the choices lists have a first entry of dashes.

        cma = ModelAdmin(Concert, self.site)
        cmafa = cma.get_form(request)

        self.assertEqual(type(cmafa.base_fields["main_band"].widget.widget), Select)
        self.assertEqual(
            list(cmafa.base_fields["main_band"].widget.choices), [("", "---------"), (self.band.id, "The Doors")]
        )

        self.assertEqual(type(cmafa.base_fields["opening_band"].widget.widget), Select)
        self.assertEqual(
            list(cmafa.base_fields["opening_band"].widget.choices), [("", "---------"), (self.band.id, "The Doors")]
        )

        self.assertEqual(type(cmafa.base_fields["day"].widget), Select)
        self.assertEqual(list(cmafa.base_fields["day"].widget.choices), [("", "---------"), (1, "Fri"), (2, "Sat")])

        self.assertEqual(type(cmafa.base_fields["transport"].widget), Select)
        self.assertEqual(
            list(cmafa.base_fields["transport"].widget.choices),
            [("", "---------"), (1, "Plane"), (2, "Train"), (3, "Bus")],
        )
    def change_decision_via_admin(self, decision, new_organization=None):
        """
        Used for testing custom behaviour for Decision change in django
        admin - see publicweb/admin.py, DecisionAdmin.save_model()
        Requirement: logged in user is_staff and is_superuser.
        """
        ma = ModelAdmin(Decision, AdminSite())
        data = ma.get_form(None)(instance=decision).initial
        for key, value in data.items():
            if value == None:
                data[key] = u''
        man_data = {
            'feedback_set-TOTAL_FORMS': u'1', 
            'feedback_set-INITIAL_FORMS': u'0', 
            'feedback_set-MAX_NUM_FORMS': u''
        }
        data.update(man_data)
        if new_organization:
            data['organization'] = new_organization.id

        url = reverse('admin:publicweb_decision_change', args=[decision.id])
        response = self.client.post(url, data, follow=True)
        self.assertEquals(
            response.template_name, 
            'admin/decision_change_list.html',
            "Failed to edit Decision via admin screen")

        decision = Decision.objects.get(id=decision.id)
        if new_organization:
            self.assertEquals(decision.organization.id, new_organization.id)
예제 #6
0
    def test_default_foreign_key_widget(self):
        # First, without any radio_fields specified, the widgets for ForeignKey
        # and fields with choices specified ought to be a basic Select widget.
        # ForeignKey widgets in the admin are wrapped with RelatedFieldWidgetWrapper so
        # they need to be handled properly when type checking. For Select fields, all of
        # the choices lists have a first entry of dashes.

        cma = ModelAdmin(Concert, self.site)
        cmafa = cma.get_form(request)

        self.assertEqual(type(cmafa.base_fields['main_band'].widget.widget),
                         Select)
        self.assertEqual(list(cmafa.base_fields['main_band'].widget.choices),
                         [('', '---------'), (self.band.id, 'The Doors')])

        self.assertEqual(type(cmafa.base_fields['opening_band'].widget.widget),
                         Select)
        self.assertEqual(
            list(cmafa.base_fields['opening_band'].widget.choices),
            [('', '---------'), (self.band.id, 'The Doors')])

        self.assertEqual(type(cmafa.base_fields['day'].widget), Select)
        self.assertEqual(list(cmafa.base_fields['day'].widget.choices),
                         [('', '---------'), (1, 'Fri'), (2, 'Sat')])

        self.assertEqual(type(cmafa.base_fields['transport'].widget), Select)
        self.assertEqual(list(cmafa.base_fields['transport'].widget.choices),
                         [('', '---------'), (1, 'Plane'), (2, 'Train'),
                          (3, 'Bus')])
예제 #7
0
파일: tests.py 프로젝트: ArcTanSusan/django
    def test_default_foreign_key_widget(self):
        # First, without any radio_fields specified, the widgets for ForeignKey
        # and fields with choices specified ought to be a basic Select widget.
        # ForeignKey widgets in the admin are wrapped with RelatedFieldWidgetWrapper so
        # they need to be handled properly when type checking. For Select fields, all of
        # the choices lists have a first entry of dashes.
        cma = ModelAdmin(Concert, self.site)
        cmafa = cma.get_form(request)

        self.assertEqual(type(cmafa.base_fields['main_band'].widget.widget), Select)
        self.assertEqual(
            list(cmafa.base_fields['main_band'].widget.choices),
            [('', '---------'), (self.band.id, 'The Doors')])

        self.assertEqual(type(cmafa.base_fields['opening_band'].widget.widget), Select)
        self.assertEqual(
            list(cmafa.base_fields['opening_band'].widget.choices),
            [('', '---------'), (self.band.id, 'The Doors')]
        )
        self.assertEqual(type(cmafa.base_fields['day'].widget), Select)
        self.assertEqual(
            list(cmafa.base_fields['day'].widget.choices),
            [('', '---------'), (1, 'Fri'), (2, 'Sat')]
        )
        self.assertEqual(type(cmafa.base_fields['transport'].widget), Select)
        self.assertEqual(
            list(cmafa.base_fields['transport'].widget.choices),
            [('', '---------'), (1, 'Plane'), (2, 'Train'), (3, 'Bus')])
예제 #8
0
    def change_organization_via_admin_screens(self, decision, new_organization=None):
        orig_user = self.user

        admin_user = User.objects.filter(is_staff=True)[0]
        self.login(admin_user.username)
        ma = ModelAdmin(Decision, AdminSite())
        data = ma.get_form(None)(instance=decision).initial
        for key, value in data.items():
            if value == None:
                data[key] = u''
        man_data = {
            'feedback_set-TOTAL_FORMS': u'1', 
            'feedback_set-INITIAL_FORMS': u'0', 
            'feedback_set-MAX_NUM_FORMS': u''
        }
        data.update(man_data)
        if new_organization:
            data['organization'] = new_organization.id
        url = reverse('admin:publicweb_decision_change', args=[decision.id])
        response = self.client.post(url, data, follow=True)
        self.assertEquals(response.status_code, 200)
        if new_organization:
            self.assertEquals(Decision.objects.get(id=decision.id).organization.id, new_organization.id)

        self.login(orig_user)
        return admin_user
예제 #9
0
파일: tests.py 프로젝트: mpachas/django
    def test_default_foreign_key_widget(self):
        # First, without any radio_fields specified, the widgets for ForeignKey
        # and fields with choices specified ought to be a basic Select widget.
        # ForeignKey widgets in the admin are wrapped with RelatedFieldWidgetWrapper so
        # they need to be handled properly when type checking. For Select fields, all of
        # the choices lists have a first entry of dashes.
        cma = ModelAdmin(Concert, self.site)
        cmafa = cma.get_form(request)

        self.assertEqual(type(cmafa.base_fields["main_band"].widget.widget),
                         Select)
        self.assertEqual(
            list(cmafa.base_fields["main_band"].widget.choices),
            [("", "---------"), (self.band.id, "The Doors")],
        )

        self.assertEqual(type(cmafa.base_fields["opening_band"].widget.widget),
                         Select)
        self.assertEqual(
            list(cmafa.base_fields["opening_band"].widget.choices),
            [("", "---------"), (self.band.id, "The Doors")],
        )
        self.assertEqual(type(cmafa.base_fields["day"].widget), Select)
        self.assertEqual(
            list(cmafa.base_fields["day"].widget.choices),
            [("", "---------"), (1, "Fri"), (2, "Sat")],
        )
        self.assertEqual(type(cmafa.base_fields["transport"].widget), Select)
        self.assertEqual(
            list(cmafa.base_fields["transport"].widget.choices),
            [("", "---------"), (1, "Plane"), (2, "Train"), (3, "Bus")],
        )
예제 #10
0
    def test_fields(self):
        ma = ModelAdmin(CustomUser, self.site)
        expected = ['password', 'last_login', 'is_superuser', 'groups',
                    'user_permissions', 'email', 'is_active', 'is_admin',
                    'is_staff', 'is_company_admin', 'avatar', 'name',
                    'activation_key', 'company']

        self.assertEqual(expected, ma.get_form(None).base_fields.keys())
예제 #11
0
파일: tests.py 프로젝트: cemoulto/django
    def test_default_fields(self):
        ma = ModelAdmin(Band, self.site)

        self.assertEqual(list(ma.get_form(request).base_fields), ["name", "bio", "sign_date"])

        self.assertEqual(list(ma.get_fields(request)), ["name", "bio", "sign_date"])

        self.assertEqual(list(ma.get_fields(request, self.band)), ["name", "bio", "sign_date"])
예제 #12
0
 def test_06_sensor_base_fields(self):
     ma = ModelAdmin(Sensor, self.site)
     base_fields = [
         'created_by', 'name', 'sku', 'serial_no', 'temp_units',
         'pressure_units', 'alt_units', 'ws_units', 'climate', 'camera',
         'link', 'ulink', 'dlink'
     ]
     self.assertListEqual(base_fields,
                          list(ma.get_form(self.request).base_fields))
예제 #13
0
 def test_08_event_base_fields(self):
     ma = ModelAdmin(Event, self.site)
     base_fields = [
         'sensor', 'timestamp', 'location', 'status', 'camera', 'avg_temp',
         'avg_pressure', 'pct_humidity', 'altitude', 'windspeed', 'deleted',
         'link', 'ulink', 'dlink'
     ]
     self.assertListEqual(base_fields,
                          list(ma.get_form(self.request).base_fields))
예제 #14
0
 def test_default_fields(self):
     """
     Tests widget.
     """
     ma = ModelAdmin(Pizza, AdminSite)
     self.assertEqual(list(ma.get_form(request).base_fields),
                      ['toppings', 'cheeses'])
     self.assertEqual(list(ma.get_fields(request)), ['toppings', 'cheeses'])
     self.assertEqual(ma.get_fields(request), ['toppings', 'cheeses'])
 def test_default_fields(self):
     ma = ModelAdmin(Category, self.site)
     self.assertEqual(list(ma.get_form(request).base_fields),
                      ['title', 'slug', 'description', 'parent'])
     self.assertEqual(list(ma.get_fields(request)),
                      ['title', 'slug', 'description', 'parent'])
     self.assertEqual(list(ma.get_fields(request, self.category)),
                      ['title', 'slug', 'description', 'parent'])
     self.assertIsNone(ma.get_exclude(request, self.category))
예제 #16
0
    def test_fields(self):
        ma = ModelAdmin(CustomUser, self.site)
        expected = [
            'password', 'last_login', 'is_superuser', 'groups',
            'user_permissions', 'email', 'is_active', 'is_admin', 'is_staff',
            'is_company_admin', 'avatar', 'name', 'activation_key', 'company'
        ]

        self.assertEqual(expected, ma.get_form(None).base_fields.keys())
예제 #17
0
파일: tests.py 프로젝트: mozza/django
 def test_default_fields(self):
     ma = ModelAdmin(Band, self.site)
     self.assertEqual(list(ma.get_form(request).base_fields),
                      ['name', 'bio', 'sign_date'])
     self.assertEqual(list(ma.get_fields(request)),
                      ['name', 'bio', 'sign_date'])
     self.assertEqual(list(ma.get_fields(request, self.band)),
                      ['name', 'bio', 'sign_date'])
     self.assertIsNone(ma.get_exclude(request, self.band))
예제 #18
0
파일: tests.py 프로젝트: mpachas/django
    def test_queryset_override(self):
        # If the queryset of a ModelChoiceField in a custom form is overridden,
        # RelatedFieldWidgetWrapper doesn't mess that up.
        band2 = Band.objects.create(name="The Beatles",
                                    bio="",
                                    sign_date=date(1962, 1, 1))

        ma = ModelAdmin(Concert, self.site)
        form = ma.get_form(request)()

        self.assertHTMLEqual(
            str(form["main_band"]),
            '<div class="related-widget-wrapper" data-model-ref="band">'
            '<select name="main_band" id="id_main_band" required>'
            '<option value="" selected>---------</option>'
            '<option value="%d">The Beatles</option>'
            '<option value="%d">The Doors</option>'
            "</select></div>" % (band2.id, self.band.id),
        )

        class AdminConcertForm(forms.ModelForm):
            def __init__(self, *args, **kwargs):
                super().__init__(*args, **kwargs)
                self.fields["main_band"].queryset = Band.objects.filter(
                    name="The Doors")

        class ConcertAdminWithForm(ModelAdmin):
            form = AdminConcertForm

        ma = ConcertAdminWithForm(Concert, self.site)
        form = ma.get_form(request)()

        self.assertHTMLEqual(
            str(form["main_band"]),
            '<div class="related-widget-wrapper" data-model-ref="band">'
            '<select name="main_band" id="id_main_band" required>'
            '<option value="" selected>---------</option>'
            '<option value="%d">The Doors</option>'
            "</select></div>" % self.band.id,
        )
예제 #19
0
 def test_default_fields(self):
     ma = ModelAdmin(Product, self.site)
     default_list_fields = [
         'title', 'creation_date', 'categories', 'status',
         'start_publication', 'end_publication', 'excerpt', 'content',
         'image', 'image_caption', 'owner'
     ]
     self.assertEqual(list(ma.get_form(request).base_fields),
                      default_list_fields)
     self.assertEqual(list(ma.get_fields(request)), default_list_fields)
     self.assertEqual(list(ma.get_fields(request, self.product)),
                      default_list_fields)
     self.assertIsNone(ma.get_exclude(request, self.product))
예제 #20
0
파일: tests.py 프로젝트: ArcTanSusan/django
    def test_queryset_override(self):
        # If the queryset of a ModelChoiceField in a custom form is overridden,
        # RelatedFieldWidgetWrapper doesn't mess that up.
        band2 = Band.objects.create(name='The Beatles', bio='', sign_date=date(1962, 1, 1))

        ma = ModelAdmin(Concert, self.site)
        form = ma.get_form(request)()

        self.assertHTMLEqual(
            str(form["main_band"]),
            '<div class="related-widget-wrapper">'
            '<select name="main_band" id="id_main_band" required>'
            '<option value="" selected>---------</option>'
            '<option value="%d">The Beatles</option>'
            '<option value="%d">The Doors</option>'
            '</select></div>' % (band2.id, self.band.id)
        )

        class AdminConcertForm(forms.ModelForm):
            def __init__(self, *args, **kwargs):
                super().__init__(*args, **kwargs)
                self.fields["main_band"].queryset = Band.objects.filter(name='The Doors')

        class ConcertAdminWithForm(ModelAdmin):
            form = AdminConcertForm

        ma = ConcertAdminWithForm(Concert, self.site)
        form = ma.get_form(request)()

        self.assertHTMLEqual(
            str(form["main_band"]),
            '<div class="related-widget-wrapper">'
            '<select name="main_band" id="id_main_band" required>'
            '<option value="" selected>---------</option>'
            '<option value="%d">The Doors</option>'
            '</select></div>' % self.band.id
        )
예제 #21
0
 def test_default_fields(self):
     ma = ModelAdmin(Invoice, self.site)
     self.assertEqual(
         list(ma.get_form(request).base_fields),
         ["date", "customer", "invoiced", "draft", "cash", "paid_date"],
     )
     self.assertEqual(
         list(ma.get_fields(request)),
         ["date", "customer", "invoiced", "draft", "cash", "paid_date"],
     )
     self.assertEqual(
         list(ma.get_fields(request, self.invoice)),
         ["date", "customer", "invoiced", "draft", "cash", "paid_date"],
     )
     self.assertIsNone(ma.get_exclude(request, self.invoice))
예제 #22
0
 def test_fields(self):
     model_admin = ModelAdmin(User, self.site)
     self.assertEqual(list(model_admin.get_form(request).base_fields), [
         'password',
         'last_login',
         'is_superuser',
         'groups',
         'user_permissions',
         'is_removed',
         'email',
         'is_staff',
         'is_active',
         'date_joined',
         'name'
     ])
     self.assertEqual(list(model_admin.get_fields(request)), [
         'password',
         'last_login',
         'is_superuser',
         'groups',
         'user_permissions',
         'is_removed',
         'email',
         'is_staff',
         'is_active',
         'date_joined',
         'name'
     ])
     self.assertEqual(list(model_admin.get_fields(request, self.user)), [
         'password',
         'last_login',
         'is_superuser',
         'groups',
         'user_permissions',
         'is_removed',
         'email',
         'is_staff',
         'is_active',
         'date_joined',
         'name'
     ])
     self.assertIsNone(model_admin.get_exclude(request, self.user))
예제 #23
0
파일: tests.py 프로젝트: ArcTanSusan/django
 def test_default_fields(self):
     ma = ModelAdmin(Band, self.site)
     self.assertEqual(list(ma.get_form(request).base_fields), ['name', 'bio', 'sign_date'])
     self.assertEqual(list(ma.get_fields(request)), ['name', 'bio', 'sign_date'])
     self.assertEqual(list(ma.get_fields(request, self.band)), ['name', 'bio', 'sign_date'])
     self.assertIsNone(ma.get_exclude(request, self.band))
예제 #24
0
 def test_default_fields(self):
     ma = ModelAdmin(OSBUAdvisor, self.site)
     self.assertEqual(list(ma.get_form(self.client).base_fields),
                      ['name', 'email', 'phone'])
예제 #25
0
 def test_default_fields(self):
     ma = ModelAdmin(OSBUAdvisor, self.site)
     self.assertEqual(
         list(ma.get_form(self.client).base_fields),
         ['name', 'email', 'phone']
     )
예제 #26
0
    def test_default_fields(self):
        ma = ModelAdmin(Band, self.site)

        self.assertEquals(ma.get_form(request).base_fields.keys(),
            ['name', 'bio', 'sign_date'])
예제 #27
0
    def test_default_fields(self):
        ma = ModelAdmin(Band, self.site)

        self.assertEqual(
            ma.get_form(request).base_fields.keys(),
            ['name', 'bio', 'sign_date'])
예제 #28
0
 def test_fiels_Cours(self):
     ma = ModelAdmin(Cours, self.site)
     self.assertEqual(list(ma.get_form(request).base_fields), ['date', 'heure', 'adresse', 'texte_etudie'])
     self.assertEqual(list(ma.get_fields(request)), ['date', 'heure', 'adresse', 'texte_etudie'])
     self.assertEqual(list(ma.get_fields(request, self.cours)), ['date', 'heure', 'adresse', 'texte_etudie'])
예제 #29
0
 def test_fiels_Actualite(self):
     ma = ModelAdmin(Actualite, self.site)
     self.assertEqual(list(ma.get_form(request).base_fields), ['nom', 'texte', 'image', 'date'])
     self.assertEqual(list(ma.get_fields(request)), ['nom', 'texte', 'image', 'date'])
     self.assertEqual(list(ma.get_fields(request, self.actualite)), ['nom', 'texte', 'image', 'date'])