Пример #1
0
	def convert(time):
		if not(is_valid_time(time)):
			return ConvertTimeToSpoken.invalid_input_message;
		
		hours = None
		hours = time[0:-3]
		minutes = time[3:]	
		
		if not(hours.isdigit() and minutes.isdigit()):
			return ConvertTimeToSpoken.invalid_input_message;
		
		hours_int = int(hours)
		minutes_int = int(minutes)
		assert hours != None
		assert minutes != None
		
		if not(hours_int < 24 and hours_int >= 0) \
			or not(minutes_int < 60 and minutes_int >= 0):
			return ConvertTimeToSpoken.invalid_input_message;
		
		if hours_int < 12:
			spoken_am = "am"
		else:
			spoken_am = "pm"
		
		#hours special cases
		if (hours_int == 0):
			spoken_hours = "twelve"
		else:
			if (hours_int > 12):
				spoken_hours = spoken_number.get_spoken(str(hours_int - 12))
			else:
				spoken_hours = spoken_number.get_spoken(hours)
				
		#minutes special cases
		if (minutes_int == 0):
			return "It's {} {}".format(spoken_hours, spoken_am)
		elif minutes_int < 10:
			spoken_mintues = "oh " + spoken_number.get_spoken(minutes)
		else:
			spoken_mintues = spoken_number.get_spoken(minutes)
			
		return "It's {} {} {}".format(spoken_hours, spoken_mintues, spoken_am)
Пример #2
0
	def test_13(self):
		result = spoken_number.get_spoken("13")
		self.assertEqual("thirteen", result)
Пример #3
0
	def test_1000(self):
		with self.assertRaises(AssertionError):
			spoken_number.get_spoken("1000")
			
Пример #4
0
	def test_single_digit_num(self):
		result = spoken_number.get_spoken("5")
		self.assertEqual("five", result)
Пример #5
0
	def test_oh(self):
		result = spoken_number.get_spoken("0000003")
		self.assertEqual("three", result)
Пример #6
0
	def test_30(self):
		result = spoken_number.get_spoken("30")
		self.assertEqual("thirty", result)
Пример #7
0
	def test_49(self):
		result = spoken_number.get_spoken("49")
		self.assertEqual("forty nine", result)
Пример #8
0
	def test_0(self):
		result = spoken_number.get_spoken("0")
		self.assertEqual("zero", result)
Пример #9
0
 def test_single_digit_num(self):
     result = spoken_number.get_spoken("5")
     self.assertEqual("five", result)
Пример #10
0
 def test_13(self):
     result = spoken_number.get_spoken("13")
     self.assertEqual("thirteen", result)
Пример #11
0
 def test_1000(self):
     with self.assertRaises(AssertionError):
         spoken_number.get_spoken("1000")
Пример #12
0
 def test_30(self):
     result = spoken_number.get_spoken("30")
     self.assertEqual("thirty", result)
Пример #13
0
 def test_oh(self):
     result = spoken_number.get_spoken("0000003")
     self.assertEqual("three", result)
Пример #14
0
 def test_0(self):
     result = spoken_number.get_spoken("0")
     self.assertEqual("zero", result)
Пример #15
0
 def test_49(self):
     result = spoken_number.get_spoken("49")
     self.assertEqual("forty nine", result)