Skip to content

Commit c16d0fe

Browse files
Added changes and unittests
1 parent e77b4ee commit c16d0fe

File tree

2 files changed

+22
-4
lines changed

2 files changed

+22
-4
lines changed

pydesignpatterns/creational/builder_naive.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"""
22
Author: CHIRAG SHAH
33
Created On: 18th September 2018
4-
Modified On: 10th October 2018
4+
Modified On: 14th October 2018
55
"""
66

77
import inspect, sys
@@ -112,5 +112,4 @@ def get_outputimage():
112112
plt.show()
113113
return output
114114

115-
#get_outputimage()
116-
#print(get_code())
115+
test_builder()

tests/test_builder.py

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"""
22
Author: CHIRAG SHAH
33
Created On: 10th October 2018
4-
Modified On: 10th October 2018
4+
Modified On: 14th October 2018
55
"""
66

77
import unittest, sys, inspect
@@ -17,6 +17,25 @@
1717
builder_naive
1818
)
1919

20+
class TestBuilder(unittest.TestCase):
21+
22+
def test_classes(self):
23+
self.assertEqual(inspect.isclass(builder_naive.Director), True)
24+
self.assertEqual(inspect.isclass(builder_naive.Product), True)
25+
self.assertEqual(inspect.isclass(builder_naive.Builder), True)
26+
self.assertEqual(inspect.isclass(builder_naive.ConcreteBuilder), True)
27+
28+
def test_instances(self):
29+
self.assertEqual(isinstance(builder_naive.ConcreteBuilder(), builder_naive.Builder), True)
30+
self.assertEqual(isinstance(builder_naive.Builder, ABCMeta), True)
31+
32+
def test_builder(self):
33+
concrete_builder = builder_naive.ConcreteBuilder()
34+
director = builder_naive.Director()
35+
director.construct(concrete_builder)
36+
product = concrete_builder.product
37+
#Unable to identify any assertion condition for product. Let me know if anyone finds :)
38+
2039
class TestBuilderAircraft(unittest.TestCase):
2140

2241
def test_classes(self):

0 commit comments

Comments
 (0)