Esempio n. 1
0
 def test_empty_description(self):
     form = TaskForm({
         'reference': '123',
         'description': ''  # invalid
     })
     self.assertFalse(form.is_valid())
     self.assertIsNotNone(form.errors['description'])
Esempio n. 2
0
 def test_max_length_reference(self):
     form = TaskForm({
         'reference': 'a' * 129,  # invalid
         'description': 'valid',
     })
     self.assertFalse(form.is_valid())
     self.assertIn('reference', form.errors)
Esempio n. 3
0
 def test_create_task_with_empty_file_reference(self):
     # Creates no file, if reference is empty
     form = TaskForm({
         'reference': '',
         'description': 'task description',
     })
     form.is_valid()
     task = form.save()
     self.assertEqual(Task.objects.count(), 1)
     self.assertIsNone(task.file)
Esempio n. 4
0
 def test_create_task_with_unknown_file_reference(self):
     form = TaskForm({
         'reference': 'abcdef',
         'description': 'task description',
     })
     form.is_valid()
     task = form.save()
     self.assertEqual(Task.objects.count(), 1)
     self.assertEqual(File.objects.count(), 1)
     self.assertEqual(task.file.reference, 'abcdef')
Esempio n. 5
0
 def get_context_data(self, **kwargs):
     if 'form' not in kwargs:
         kwargs['form'] = TaskForm()
     if 'search_form' not in kwargs:
         kwargs['search_form'] = FileSearchForm()
     kwargs['object_list'] = Task.objects.all()
     return super().get_context_data(**kwargs)
Esempio n. 6
0
 def test_render_reference_field(self):
     File.objects.create(reference='foo')
     form = TaskForm()
     html = '{}'.format(form['reference'])
     self.assertIn('input', html)
     self.assertIn('datalist', html)
     self.assertIn('id="reference_datalist"', html)
     self.assertIn('list="reference_datalist"', html)
     self.assertIn('<option value="foo">', html)
Esempio n. 7
0
 def post(self, request):
     form = TaskForm(request.POST)
     if form.is_valid():
         form.save()
         return redirect(reverse('index'))
     return self.render_to_response(self.get_context_data(form=form))
Esempio n. 8
0
 def test_initial_reference(self):
     form = TaskForm(initial={'reference': 'foo'})
     self.assertEqual(form['reference'].value(), 'foo')
Esempio n. 9
0
 def test_render_description_field(self):
     form = TaskForm()
     html = '{}'.format(form['description'])
     self.assertNotIn('required', html)
Esempio n. 10
0
 def test_widget_context(self):
     File.objects.create(reference='foo')
     form = TaskForm()
     widget = form.fields['reference'].widget
     context = widget.get_context('foo', 'bar', {})
     self.assertEqual(context['widget']['datalist'], [('foo', 'foo')])
Esempio n. 11
0
 def test_reference_widget_choices(self):
     File.objects.create(reference='foo')
     form = TaskForm()
     widget = form.fields['reference'].widget
     self.assertListEqual(list(widget.choices), [('foo', 'foo')])
Esempio n. 12
0
 def test_reference_widget_template(self):
     form = TaskForm()
     widget = form.fields['reference'].widget
     self.assertEqual(widget.template_name,
                      'timesheet/forms/widgets/datalist_input.html')