def test_test_publishing_a_brief_sets_published_at(self): brief = Brief(data={}, framework=self.framework, lot=self.lot) assert brief.published_at is None brief.status = 'live' assert not brief.clarification_questions_are_closed assert isinstance(brief.published_at, datetime)
def test_can_set_live_brief_to_draft(self): brief = Brief(data={}, framework=self.framework, lot=self.lot, published_at=datetime.utcnow()) brief.status = 'draft' assert brief.published_at is None
def test_cannot_set_live_brief_to_draft(self): brief = Brief(data={}, framework=self.framework, lot=self.lot, published_at=datetime.utcnow()) with pytest.raises(ValidationError): brief.status = 'draft'
def test_cannot_set_brief_to_closed(self): brief = Brief(data={}, framework=self.framework, lot=self.lot) with pytest.raises(ValidationError): brief.status = 'closed'
def test_status_must_be_valid(self): brief = Brief(data={}, framework=self.framework, lot=self.lot) with pytest.raises(ValidationError): brief.status = 'invalid'
def test_can_set_draft_brief_to_the_same_status(self): brief = Brief(data={}, framework=self.framework, lot=self.lot) brief.status = 'draft'