👨🏾‍💻Create test:

import unittest
import myprogram
  
class TestStringMethods(unittest.TestCase): 

    def test_sum(self): 
        angka_1 = 3
        angka_2 = 2
        result = myprogram.sum(angka_1, angka_2)
        self.assertEqual(result, 5, 'Unexpected value sum(3, 2): {}'.format(result))
  
if __name__ == '__main__': 
    unittest.main()

🔴Run test:

-> % python test.py
E
======================================================================
ERROR: test_sum (__main__.TestStringMethods)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test.py", line 9, in test_sum
    result = myprogram.sum(angka_1, angka_2)
AttributeError: module 'myprogram' has no attribute 'sum'

----------------------------------------------------------------------
Ran 1 test in 0.000s

FAILED (errors=1)

👨🏾‍💻Coding:

def sum(angka_1, angka_2):
   return 4

🔴Run test:

-> % python test.py
F
======================================================================
FAIL: test_sum (__main__.TestStringMethods)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "test.py", line 10, in test_sum
    self.assertEqual(result, 5, 'Unexpected value sum(3, 2): {}'.format(result))
AssertionError: 4 != 5 : Unexpected value sum(3, 2): 4

----------------------------------------------------------------------
Ran 1 test in 0.000s

FAILED (failures=1)

👨🏾‍💻Coding:

def sum(angka_1, angka_2):
   return angka_1 + angka_2   

💚Run test:

-> % python test.py
.
----------------------------------------------------------------------
Ran 1 test in 0.000s

OK