Esempio n. 1
0
 def test_basic(self):
     demo = Demo(1, 2)
     self.assertEqual(1, demo.num1)
     self.assertEqual(2, demo.num2)
     self.assertEqual(1, demo._special_number())
     self.assertEqual(4, demo.sum())
     self.assertEqual(8, demo.sum_bias())
Esempio n. 2
0
class TPopulationCount(unittest.TestCase):
    def setUp(self):
        #print("[setUp]")
        self.d = Demo()

    def tearDown(self):
        #print("[tearDown]")
        pass

    def test_population_count_1(self):
        res = self.d.population_count(0)
        self.assertEqual(res, 0)

    def test_population_count_2(self):
        res = self.d.population_count(8)
        self.assertEqual(res, 1)

    def test_population_count_3(self):
        res = self.d.population_count(15)
        self.assertEqual(res, 4)

    def test_population_count_4(self):
        res = self.d.population_count(19)
        self.assertEqual(res, 3)
Esempio n. 3
0
class TLargestSubArray(unittest.TestCase):
    def setUp(self):
        #print("[setUp]")
        self.d = Demo()

    def tearDown(self):
        #print("[tearDown]")
        pass

    def test_largest_subarray_1(self):
        res = self.d.largest_subarray([1, 2, 4])
        self.assertEqual(res, 7)

    def test_largest_subarray_2(self):
        res = self.d.largest_subarray([-21, -1, -1, 0])
        self.assertEqual(res, 0)

    def test_largest_subarray_3(self):
        res = self.d.largest_subarray([1, 2, -10, 3, 100, 1222])
        self.assertEqual(res, 1325)

    def test_largest_subarray_4(self):
        res = self.d.largest_subarray([-1, -2, -5])
        self.assertEqual(res, -1)
Esempio n. 4
0
 def setUp(self):
     #print("[setUp]")
     self.d = Demo()
Esempio n. 5
0
 def test_mock_datetime(self, mocked_datetime):
     mocked_datetime.datetime.today.return_value = 'This is a mocked method'
     demo = Demo(1, 2)
     self.assertTrue('mocked' in demo.append_datetime('abc'))
     mocked_datetime.datetime.today.assert_called_once()
Esempio n. 6
0
 def test_datetime(self):
     demo = Demo(1, 2)
     self.assertTrue('abc' in demo.append_datetime('abc'))
Esempio n. 7
0
 def test_sum_bias(self, mocked_bias):
     mocked_bias.get_bias.return_value = 7
     demo = Demo(1, 2)
     self.assertEqual(10, demo.sum_bias())
Esempio n. 8
0
 def test_mock_sum_bias(self):
     demo = Demo(1, 2)
     self.assertEqual(8, demo.sum_bias())
Esempio n. 9
0
 def test_raise_error_patch(self):    
     with patch.object(Demo, '_special_number', return_value=-1) as mocked_mathod:
         demo = Demo(1, 2)
         with self.assertRaises(ValueError):
             demo.sum()
     mocked_mathod.assert_called_once_with()
Esempio n. 10
0
 def test_raise_error_side_effect(self):
     demo = Demo(1, 2)
     demo._special_number = MagicMock(side_effect=SpecialError)
     with self.assertRaises(SpecialError):
         demo.sum()
     demo._special_number.assert_called_with()
Esempio n. 11
0
 def test_raise_error(self):
     demo = Demo(1, 2)
     demo._special_number = MagicMock(return_value=-1)
     with self.assertRaises(ValueError):
         demo.sum()
     demo._special_number.assert_called_with()
Esempio n. 12
0
def help():
    print("""
syntax: %s ARG

where ARG:
  demo one [args]   : run demo one, population count
  demo two [args]   : run demo two, max subarray
  test              : run tests
""" % (os.path.basename(__file__)))


if __name__ == '__main__':

    if len(sys.argv) > 1:
        d = Demo()
        arg = sys.argv[1]
        args = sys.argv[2:]
        if arg == "test":
            print("# running tests")
            suite = unittest.TestLoader().discover('./test')
            runner = unittest.TextTestRunner()
            runner.run(suite)
        elif arg == "demo":
            print("# running demo")
            d.process(args)
        else:
            help()
            print("unsupported arg %r!" % (str(arg)))
    else:
        help()