Advertisement
Guest User

hw2

a guest
Nov 2nd, 2022
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.17 KB | Software | 0 0
  1. import unittest
  2.  
  3. from solution import (nums_to_text, text_to_nums, nums_to_angle,
  4.                       angles_to_nums, is_phone_tastic)
  5.  
  6.  
  7. class TestNumsToText(unittest.TestCase):
  8.     """Test the nums_to_text function."""
  9.  
  10.     def test_simple_conversion(self):
  11.         """Sanity test for a single number."""
  12.         self.assertEqual(nums_to_text([2]).lower(), 'a')
  13.         self.assertEqual(nums_to_text([7, 9, 9, 9, 8, 4, 4, 6, 6, 6, -1, 6, 6]).lower(), 'python')
  14.         self.assertEqual(nums_to_text([2, 0, -1, 0, 2]).lower(), 'a  a')
  15.         self.assertEqual(nums_to_text([2, 0, 0, 2]).lower(), 'a a')
  16.         self.assertEqual(nums_to_text([2, 0, 2]).lower(), 'a a')
  17.         self.assertEqual(nums_to_text([2, 3]).lower(), 'ad')
  18.         self.assertEqual(nums_to_text([0, -1, 0, 2, 0, 2, 3]).lower(), '  a ad')
  19.         self.assertEqual(nums_to_text([2, 2, 2, 2, 2, 2]).lower(), 'c')
  20.         self.assertEqual(nums_to_text([1]), '')
  21.         self.assertEqual(nums_to_text([2, 2, 1, 2, 2]), 'BB')
  22.         self.assertEqual(nums_to_text([2, 2, -1, 2, 2]), 'BB')
  23.         self.assertEqual(nums_to_text([2, 2, 1, 2]), 'BA')
  24.         self.assertEqual(nums_to_text([4, 4, 3, 3, 5, 5, 5, -1, 5, 5, 5, 6, 6, 6, 6, 6, 6]), 'HELLO')
  25.  
  26.  
  27. class TestTextToNums(unittest.TestCase):
  28.     """Test the text_to_nums function."""
  29.  
  30.     def test_simple_conversion(self):
  31.         """Sanity test for a single letter."""
  32.         self.assertEqual(text_to_nums('a'), [2])
  33.         self.assertEqual(text_to_nums(''), [])
  34.         self.assertEqual(text_to_nums('aaa'), [2, -1, 2, -1, 2])
  35.         self.assertEqual(text_to_nums('a a a'), [2, 0, 2, 0, 2])
  36.         self.assertEqual(text_to_nums('PYTHON'), [7, 9, 9, 9, 8, 4, 4, 6, 6, 6, -1, 6, 6])
  37.         self.assertEqual(text_to_nums('asl pls'), [2, 7, 7, 7, 7, 5, 5, 5, 0, 7, 5, 5, 5, 7, 7, 7, 7])
  38.  
  39.  
  40. class TestNumsToAngles(unittest.TestCase):
  41.     """Test the nums_to_angle function."""
  42.  
  43.     def test_simple_conversion(self):
  44.         """Sanity test for a single number."""
  45.         self.assertEqual(nums_to_angle([1]), 30)
  46.         self.assertEqual(nums_to_angle([1, 5, 9]), 90)
  47.         self.assertEqual(nums_to_angle([9, 2]), 330)
  48.        
  49.  
  50.  
  51. class TestAnglesToNums(unittest.TestCase):
  52.     """Test the angles_to_nums function."""
  53.  
  54.     def test_simple_conversion(self):
  55.         """Sanity test for a single angle."""
  56.         self.assertEqual(angles_to_nums([30]), [1])
  57.         self.assertEqual(angles_to_nums([16, 14, 90, -120]), [1, 3, 8])
  58.         self.assertEqual(angles_to_nums([0, 400, -20, 15]), [1])
  59.         self.assertEqual(angles_to_nums([390, 15, 16, 75]), [1, 1, 2])
  60.         self.assertEqual(angles_to_nums([345]), [])
  61.         self.assertEqual(angles_to_nums([346]), [])
  62.  
  63.  
  64. class TestIsPhonetastic(unittest.TestCase):
  65.     """Test the is_phone_tastic function."""
  66.  
  67.     def test_simple_word(self):
  68.         """Sanity test for a single letter word."""
  69.         self.assertTrue(is_phone_tastic('a'))
  70.         self.assertTrue(is_phone_tastic('GOD'))
  71.         self.assertTrue(is_phone_tastic('LLL'))
  72.         self.assertTrue(is_phone_tastic('sl pls'))
  73.         self.assertFalse(is_phone_tastic(''))
  74.  
  75.  
  76. if __name__ == '__main__':
  77.     unittest.main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement