From 9ee6209302f6dce6fd191efeb4a2d2b645aed6ab Mon Sep 17 00:00:00 2001
From: nq2-hung <Nguyen5.Hung@live.uwe.ac.uk>
Date: Wed, 26 Mar 2025 13:48:46 +0700
Subject: [PATCH] Commit ASD Term 2 labs p2

---
 Week 11/__pycache__/cal.cpython-312.pyc    | Bin 0 -> 578 bytes
 Week 11/__pycache__/my_sum.cpython-312.pyc | Bin 0 -> 939 bytes
 Week 11/cal.py                             |   7 +++++
 Week 11/my_sum.py                          |  17 +++++++++++
 Week 11/test_calculator.py                 |  34 +++++++++++++++++++++
 Week 11/test_my_sum.py                     |  14 +++++++++
 Week 11/users.json                         |   1 +
 7 files changed, 73 insertions(+)
 create mode 100644 Week 11/__pycache__/cal.cpython-312.pyc
 create mode 100644 Week 11/__pycache__/my_sum.cpython-312.pyc
 create mode 100644 Week 11/cal.py
 create mode 100644 Week 11/my_sum.py
 create mode 100644 Week 11/test_calculator.py
 create mode 100644 Week 11/test_my_sum.py
 create mode 100644 Week 11/users.json

diff --git a/Week 11/__pycache__/cal.cpython-312.pyc b/Week 11/__pycache__/cal.cpython-312.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..48cf04e7c30bfa665642ab79bffff5408c3272a7
GIT binary patch
literal 578
zcmX@j%ge>Uz`($B>Uw$=0|Ucj5C?`?pp4HF3=9m@8JHN{8B!Qp7*ZHlGeKmc7%G`G
znUf(L2+0Vc7@&Gm8KM|d7^0X`7+V;km{XWq7@}AznKfB%aXKgFB$wtSmZT;_4FhWg
zv6&ed7(VlWt*l|FVFWoVm|-QO-%5s+Ot%;lZ!snngOn*K{4z?hig8RSOUz47RS3>c
zD=AMbN>y-4ElbVGFUU>JD~a(*EQl#jP0fxsG>l13%+V{Tyv1Bxnp?#Sw_UHeG#6xH
zF*gGPLj%JN0l^7|6InWVK7*V?&}pm;48aUVtPBhcMQk8~oq>S?>bN3MxZdK(EzK#(
zEXb*>5<*xB69Z{Mve$7UYX@%;$m4#RthYGg<MR@8Q{&@ramB~y=BJeAfY?0o@r9*{
zIS`p5keiG6Ko*0H0&4|ZTLkhEm;gmbG04akhEFVvtfHUU7+J+23PEc8G#SClAg%|g
p1MC0AVFR(zu1JW1fdOm?KLZ292WCb_#_vpQjAEY{*cc(^000lYcDMil

literal 0
HcmV?d00001

diff --git a/Week 11/__pycache__/my_sum.cpython-312.pyc b/Week 11/__pycache__/my_sum.cpython-312.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..c27772a5b7fa7269b4bc201b7e0e185c11147357
GIT binary patch
literal 939
zcmX@j%ge>Uz`$U0@p`&GBLl-@5C?`?pp4HF3=9m@8JHN{8B!Qp7*ZHlGeKmc7%G`G
znUf(L2+0Vc7(T0j^`tUHF{Us?F{LoJFhnt@Ftsp5v7|7!FhsGYu(U8lu~o8avfbix
zPRvOz%}FfDFG_}*3^oPCW@cbu_{;+~tA?S5v5J9#A(&w$qu)w~l}xu76K^pl6@!#1
zDEu-_v5Ij_DND>tPE`obPb(=;EJ{^yNi9pw$uG!F%`1uVNi2vdPfg8^H#CgNt&A@&
z&DATYyv1Bxnp?$(aDiTNX)f4OZUzR128J8_0uvNFOFFnegPcUrd8{Dk6|pifFch(Y
z2zCYr2B-szKmmP=BeyiCB(or=vPu}qPM9D_Pcgz`!_LwUo+4fb1_pu_a}l(-xHPGx
zC^5MN#bTHsC&;m&V8*l!6c`}<SqBmej46!S8Vn3Y+$FHMW=LUL4P`emf@6sr<Qh$8
zzn7putCDxgEXyp;%+FIus#K^-Ey`EOELO<NFHuO$$;mHIP0?h$#TAyAQ<~~pRFq#-
zgb`+JDVb%NDXCS0NFfFh0=c+Y4iZt^JQEnZ%<c%uT#&W9EM$Ly#~u`Sh#>USWWU7`
zAD@?)n;IW~iz_}pH$SB`2gK%yk1s4u%z?-hfr7t?9~2&fAVL&GfZ_!lGT=xo0tE+{
z0QtIDjDdlnh2awmBdf?KHbz!a5FzrJjhR&xq6MVdPm>X>0g@^}F$y;67l#eR6?R3E
c3=9ll<3Lt_U}j`w{LaM3DEf(kj}c-H0KIX>`Tzg`

literal 0
HcmV?d00001

diff --git a/Week 11/cal.py b/Week 11/cal.py
new file mode 100644
index 0000000..4a2a40a
--- /dev/null
+++ b/Week 11/cal.py	
@@ -0,0 +1,7 @@
+class Calculate:
+      
+    def sum(a, b ):
+        return  a +b
+    
+    def multiply(a, b ):
+        return  a * b
\ No newline at end of file
diff --git a/Week 11/my_sum.py b/Week 11/my_sum.py
new file mode 100644
index 0000000..41988b4
--- /dev/null
+++ b/Week 11/my_sum.py	
@@ -0,0 +1,17 @@
+class Calculator:
+
+    def sum(a, b):
+        return a +b
+
+    def multiply(a, b):
+        return a * b
+
+    def subtract(a, b):
+        return a -b
+
+    def divide(a, b):
+        if b == 0:
+            raise ValueError("Division by zero is not allowed")
+        return a / b
+    
+    
diff --git a/Week 11/test_calculator.py b/Week 11/test_calculator.py
new file mode 100644
index 0000000..eb0e93b
--- /dev/null
+++ b/Week 11/test_calculator.py	
@@ -0,0 +1,34 @@
+import unittest
+from my_sum import Calculator
+
+class TestCalculator(unittest.TestCase):
+    def test_add(self):
+        self.assertEqual(Calculator.sum(2, 3), 5)
+        self.assertEqual(Calculator.sum(5, 7), 12)
+        self.assertEqual(Calculator.sum(-1, 1), 0)
+        self.assertEqual(Calculator.sum(-1, -1), -2)
+        self.assertEqual(Calculator.sum(0, 0), 0)
+        self.assertEqual(Calculator.sum(0, 1), 1)
+        
+    def test_multiply(self):
+        self.assertEqual(Calculator.multiply(2, 3), 6)
+        self.assertEqual(Calculator.multiply(5, 7), 35)
+        self.assertEqual(Calculator.multiply(-1, 1), -1)
+        self.assertEqual(Calculator.multiply(-1, -1), 1)
+        self.assertEqual(Calculator.multiply(0, 0), 0)
+        
+    def test_divide(self):
+        self.assertEqual(Calculator.divide(6, 2), 3)
+        self.assertEqual(Calculator.divide(10, 2), 5)
+        self.assertEqual(Calculator.divide(5, 1), 5)
+        self.assertEqual(Calculator.divide(0, 1), 0)
+        self.assertEqual(Calculator.divide(0, 2), 0)
+        
+    def test_subtract(self):
+        self.assertEqual(Calculator.subtract(2, 3), -1)
+        self.assertEqual(Calculator.subtract(5, 7), -2)
+        self.assertEqual(Calculator.subtract(-1, 1), -2)
+        self.assertEqual(Calculator.subtract(-1, -1), 0)
+        
+if __name__ == '__main__':
+    unittest.main()
\ No newline at end of file
diff --git a/Week 11/test_my_sum.py b/Week 11/test_my_sum.py
new file mode 100644
index 0000000..7a72e70
--- /dev/null
+++ b/Week 11/test_my_sum.py	
@@ -0,0 +1,14 @@
+import unittest
+from cal import Calculate
+class TestCalculate(unittest.TestCase):
+    def test_sum(self):
+        self.assertEqual(Calculate.sum(2, 3), 5)
+        self.assertEqual(Calculate.sum(5, 7), 12)
+    
+    def test_multiply(self):
+        self.assertEqual(Calculate.multiply(2, 3), 6)
+        self.assertEqual(Calculate.multiply(5, 7), 35)
+        
+        
+if __name__ == '__main__':
+    unittest.main()
\ No newline at end of file
diff --git a/Week 11/users.json b/Week 11/users.json
new file mode 100644
index 0000000..b856f4f
--- /dev/null
+++ b/Week 11/users.json	
@@ -0,0 +1 @@
+[["Zaheer Khan", "Prof", "3Q31", "zaheer2.khan@uwe.ac.uk"], ["Mehmet Aydin", "Senior Lecturer", "4Q59", "mehmet.aydin@uwe.ac.uk"], ["James Lear", "Lecturer", "4Q59", "james.lear@uwe.ac.uk"], ["Barkha Javed", "Lecturer", "3E40", "barkha.javed@uwe.ac.uk"], ["Elias Pimenides", "Senior Lecturer", "3Q31", "elias.pimenides@uwe.ac.uk"]]
\ No newline at end of file
-- 
GitLab