Code Duplication    Length = 28-29 lines in 2 locations

tests/test_field.py 2 locations

@@ 190-218 (lines=29) @@
187
        field = LocalizedField(blank=False, required=[])
188
        assert field.formfield().required
189
        for field in field.formfield().fields:
190
            assert not field.required
191
192
        # case required for specific languages
193
        required_langs = ['ro', 'nl']
194
        field = LocalizedField(blank=False, required=required_langs)
195
        assert field.formfield().required
196
        for field in field.formfield().fields:
197
            if field.label in required_langs:
198
                assert field.required
199
            else:
200
                assert not field.required
201
202
        # case required for all languages
203
        field = LocalizedField(blank=False, required=True)
204
        assert field.formfield().required
205
        for field in field.formfield().fields:
206
            assert field.required
207
208
    def test_required_all(self):
209
        """Tests whether passing required=True properly validates
210
        that all languages are filled in."""
211
212
        model = get_fake_model(dict(
213
            title=LocalizedField(required=True)
214
        ))
215
216
        with self.assertRaises(IntegrityError):
217
            model.objects.create(title=dict(ro='romanian', nl='dutch'))
218
219
        with self.assertRaises(IntegrityError):
220
            model.objects.create(title=dict(nl='dutch'))
221
@@ 161-188 (lines=28) @@
158
        None as the output when it is passed an empty, but
159
        valid LocalizedValue value but, only when null=True."""
160
161
        localized_value = LocalizedValue()
162
163
        with self.assertRaises(IntegrityError):
164
            LocalizedField(null=False).get_prep_value(localized_value)
165
166
        assert not LocalizedField(null=True).get_prep_value(localized_value)
167
        assert not LocalizedField().clean(None)
168
        assert not LocalizedField().clean(['huh'])
169
170
    @staticmethod
171
    def test_formfield():
172
        """Tests whether the :see:formfield function
173
        correctly returns a valid form."""
174
175
        assert isinstance(
176
            LocalizedField().formfield(),
177
            LocalizedFieldForm
178
        )
179
180
        # case optional filling
181
        field = LocalizedField(blank=True, required=[])
182
        assert not field.formfield().required
183
        for field in field.formfield().fields:
184
            assert not field.required
185
186
        # case required for any language
187
        field = LocalizedField(blank=False, required=[])
188
        assert field.formfield().required
189
        for field in field.formfield().fields:
190
            assert not field.required
191