Ejemplo n.º 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)
Ejemplo n.º 2
0
	def test_13(self):
		result = spoken_number.get_spoken("13")
		self.assertEqual("thirteen", result)
Ejemplo n.º 3
0
	def test_1000(self):
		with self.assertRaises(AssertionError):
			spoken_number.get_spoken("1000")
			
Ejemplo n.º 4
0
	def test_single_digit_num(self):
		result = spoken_number.get_spoken("5")
		self.assertEqual("five", result)
Ejemplo n.º 5
0
	def test_oh(self):
		result = spoken_number.get_spoken("0000003")
		self.assertEqual("three", result)
Ejemplo n.º 6
0
	def test_30(self):
		result = spoken_number.get_spoken("30")
		self.assertEqual("thirty", result)
Ejemplo n.º 7
0
	def test_49(self):
		result = spoken_number.get_spoken("49")
		self.assertEqual("forty nine", result)
Ejemplo n.º 8
0
	def test_0(self):
		result = spoken_number.get_spoken("0")
		self.assertEqual("zero", result)
Ejemplo n.º 9
0
 def test_single_digit_num(self):
     result = spoken_number.get_spoken("5")
     self.assertEqual("five", result)
Ejemplo n.º 10
0
 def test_13(self):
     result = spoken_number.get_spoken("13")
     self.assertEqual("thirteen", result)
Ejemplo n.º 11
0
 def test_1000(self):
     with self.assertRaises(AssertionError):
         spoken_number.get_spoken("1000")
Ejemplo n.º 12
0
 def test_30(self):
     result = spoken_number.get_spoken("30")
     self.assertEqual("thirty", result)
Ejemplo n.º 13
0
 def test_oh(self):
     result = spoken_number.get_spoken("0000003")
     self.assertEqual("three", result)
Ejemplo n.º 14
0
 def test_0(self):
     result = spoken_number.get_spoken("0")
     self.assertEqual("zero", result)
Ejemplo n.º 15
0
 def test_49(self):
     result = spoken_number.get_spoken("49")
     self.assertEqual("forty nine", result)