mirror of https://github.com/snachodog/mybuddy.git
parent
267780d113
commit
e65b1749e0
|
@ -9,6 +9,7 @@ from taggit.forms import TagField
|
||||||
|
|
||||||
from babybuddy.widgets import DateInput, DateTimeInput, TimeInput
|
from babybuddy.widgets import DateInput, DateTimeInput, TimeInput
|
||||||
from core import models
|
from core import models
|
||||||
|
from core.models import Timer
|
||||||
from core.widgets import TagsEditor, ChildRadioSelect
|
from core.widgets import TagsEditor, ChildRadioSelect
|
||||||
|
|
||||||
|
|
||||||
|
@ -43,10 +44,13 @@ def set_initial_values(kwargs, form_type):
|
||||||
# Set start and end time based on Timer from `timer` kwarg.
|
# Set start and end time based on Timer from `timer` kwarg.
|
||||||
timer_id = kwargs.get("timer", None)
|
timer_id = kwargs.get("timer", None)
|
||||||
if timer_id:
|
if timer_id:
|
||||||
|
try:
|
||||||
timer = models.Timer.objects.get(id=timer_id)
|
timer = models.Timer.objects.get(id=timer_id)
|
||||||
kwargs["initial"].update(
|
kwargs["initial"].update(
|
||||||
{"timer": timer, "start": timer.start, "end": timezone.now()}
|
{"timer": timer, "start": timer.start, "end": timezone.now()}
|
||||||
)
|
)
|
||||||
|
except Timer.DoesNotExist:
|
||||||
|
pass
|
||||||
|
|
||||||
# Set type and method values for Feeding instance based on last feed.
|
# Set type and method values for Feeding instance based on last feed.
|
||||||
if form_type == FeedingForm and "child" in kwargs["initial"]:
|
if form_type == FeedingForm and "child" in kwargs["initial"]:
|
||||||
|
|
|
@ -124,10 +124,13 @@ class InitialValuesTestCase(FormsTestCaseBase):
|
||||||
self.assertEqual(page.context["form"].initial["type"], f_three.type)
|
self.assertEqual(page.context["form"].initial["type"], f_three.type)
|
||||||
self.assertEqual(page.context["form"].initial["method"], f_three.method)
|
self.assertEqual(page.context["form"].initial["method"], f_three.method)
|
||||||
|
|
||||||
def test_timer_form_field_set(self):
|
def test_start_end_set_from_timer(self):
|
||||||
self.timer.stop()
|
page = self.c.get("/sleep/add/?timer={}".format(self.timer.id))
|
||||||
|
self.assertTrue("start" in page.context["form"].initial)
|
||||||
|
self.assertTrue("end" in page.context["form"].initial)
|
||||||
|
|
||||||
page = self.c.get("/sleep/add/")
|
def test_start_end_not_set_from_invalid_timer(self):
|
||||||
|
page = self.c.get("/sleep/add/?timer={}".format(42))
|
||||||
self.assertTrue("start" not in page.context["form"].initial)
|
self.assertTrue("start" not in page.context["form"].initial)
|
||||||
self.assertTrue("end" not in page.context["form"].initial)
|
self.assertTrue("end" not in page.context["form"].initial)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue