Beispiel #1
0
	def test_phrase_reordering(self):
		"""
		This is not necessarily a desired feature compared to returning the
		same phrase the user entered, but it works for now.
		"""
		phrase = 'finances: r noon every 3mo Oil change next Tuesday *'
		target_phrase = 'finances: Oil change next Tuesday every 3mo r noon *'
		task = TaskParser(phrase)
		new_phrase = task.phrase_with()

		assert target_phrase == new_phrase
Beispiel #2
0
	def test_complex_unchanged_phrase(self):
		phrase = 'fin: Oil change next Tuesday at noon repeat every 3mo *'
		task = TaskParser(phrase)
		new_phrase = task.phrase_with()

		assert phrase == new_phrase
Beispiel #3
0
class TestPhrases():

	task = None
	title = 'a sample task'

	@pytest.fixture(autouse=True)
	def setup_task(self):
		phrase = self.title
		self.task = TaskParser(phrase)

	def test_simple_unchanged_phrase(self):
		phrase = self.task.phrase
		new_phrase = self.task.phrase_with()

		assert phrase == new_phrase

	def test_complex_unchanged_phrase(self):
		phrase = 'fin: Oil change next Tuesday at noon repeat every 3mo *'
		task = TaskParser(phrase)
		new_phrase = task.phrase_with()

		assert phrase == new_phrase

	def test_phrase_reordering(self):
		"""
		This is not necessarily a desired feature compared to returning the
		same phrase the user entered, but it works for now.
		"""
		phrase = 'finances: r noon every 3mo Oil change next Tuesday *'
		target_phrase = 'finances: Oil change next Tuesday every 3mo r noon *'
		task = TaskParser(phrase)
		new_phrase = task.phrase_with()

		assert target_phrase == new_phrase

	def test_change_title(self):
		new_title = 'new title'
		new_phrase = self.task.phrase_with(title=new_title)

		assert new_phrase == '%s' % (new_title)

	def test_change_taskfolder_title(self):
		new_taskfolder_title = 'new title'
		new_phrase = self.task.phrase_with(list_title=new_taskfolder_title)

		assert new_phrase == '%s: %s' % (new_taskfolder_title, self.title)

	def test_change_due_date(self):
		new_due_date = 'due tomorrow'
		new_phrase = self.task.phrase_with(due_date=new_due_date)

		assert new_phrase == '%s %s' % (self.title, new_due_date)

	def test_change_recurrence(self):
		new_recurrence = 'every month'
		new_phrase = self.task.phrase_with(recurrence=new_recurrence)

		assert new_phrase == '%s %s' % (self.title, new_recurrence)

	def test_change_reminder(self):
		new_reminder = 'r tomorrow at noon'
		new_phrase = self.task.phrase_with(reminder_date=new_reminder)

		assert new_phrase == '%s %s' % (self.title, new_reminder)

	def test_add_reminder_prompt(self):
		new_reminder = 'remind me '
		new_phrase = self.task.phrase_with(reminder_date=True)

		assert new_phrase == '%s %s' % (self.title, new_reminder)

	def test_change_star(self):
		new_phrase = self.task.phrase_with(starred=True)

		assert new_phrase == '%s *' % (self.title)

	def test_prompt_taskfolder_title(self):
		new_phrase = self.task.phrase_with(list_title=True)

		assert new_phrase == ': %s' % (self.title)

	def test_prompt_due_date(self):
		new_phrase = self.task.phrase_with(due_date=True)

		assert new_phrase == '%s due ' % (self.title)

	def test_prompt_recurrence(self):
		new_phrase = self.task.phrase_with(recurrence=True)

		assert new_phrase == '%s every ' % (self.title)

	def test_add_hashtags(self):
		hashtag = 'Example'
		phrase = self.title
		task = TaskParser(phrase)

		new_phrase = self.task.phrase_with(hashtag=hashtag)

		assert new_phrase == '%s #%s' % (self.title, hashtag)

	def test_change_hashtags(self):
		hashtag = 'Example'
		phrase = '%s #' % self.title
		task = TaskParser(phrase)

		new_phrase = self.task.phrase_with(hashtag=hashtag)

		assert new_phrase == '%s #%s' % (self.title, hashtag)

	def test_remove_hashtag_prompt(self):
		hashtag = 'Example'
		phrase = '%s #%s' % (self.title, hashtag)
		task = TaskParser(phrase)

		new_phrase = self.task.phrase_with(hashtag=None)

		assert new_phrase == '%s' % (self.title)