コード例 #1
0
ファイル: tests.py プロジェクト: weinbusch/django-timesheet
 def test_empty_description(self):
     form = TaskForm({
         'reference': '123',
         'description': ''  # invalid
     })
     self.assertFalse(form.is_valid())
     self.assertIsNotNone(form.errors['description'])
コード例 #2
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)
コード例 #3
0
ファイル: tests.py プロジェクト: weinbusch/django-timesheet
 def test_max_length_reference(self):
     form = TaskForm({
         'reference': 'a' * 129,  # invalid
         'description': 'valid',
     })
     self.assertFalse(form.is_valid())
     self.assertIn('reference', form.errors)
コード例 #4
0
ファイル: tests.py プロジェクト: weinbusch/django-timesheet
 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)
コード例 #5
0
ファイル: tests.py プロジェクト: weinbusch/django-timesheet
 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)
コード例 #6
0
ファイル: tests.py プロジェクト: weinbusch/django-timesheet
 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')
コード例 #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))
コード例 #8
0
ファイル: tests.py プロジェクト: weinbusch/django-timesheet
 def test_initial_reference(self):
     form = TaskForm(initial={'reference': 'foo'})
     self.assertEqual(form['reference'].value(), 'foo')
コード例 #9
0
ファイル: tests.py プロジェクト: weinbusch/django-timesheet
 def test_render_description_field(self):
     form = TaskForm()
     html = '{}'.format(form['description'])
     self.assertNotIn('required', html)
コード例 #10
0
ファイル: tests.py プロジェクト: weinbusch/django-timesheet
 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')])
コード例 #11
0
ファイル: tests.py プロジェクト: weinbusch/django-timesheet
 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')])
コード例 #12
0
ファイル: tests.py プロジェクト: weinbusch/django-timesheet
 def test_reference_widget_template(self):
     form = TaskForm()
     widget = form.fields['reference'].widget
     self.assertEqual(widget.template_name,
                      'timesheet/forms/widgets/datalist_input.html')