summaryrefslogtreecommitdiff
path: root/lecture_notes/test_driven_development/generate_testcases.py
diff options
context:
space:
mode:
Diffstat (limited to 'lecture_notes/test_driven_development/generate_testcases.py')
-rw-r--r--lecture_notes/test_driven_development/generate_testcases.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/lecture_notes/test_driven_development/generate_testcases.py b/lecture_notes/test_driven_development/generate_testcases.py
new file mode 100644
index 0000000..17b48a7
--- /dev/null
+++ b/lecture_notes/test_driven_development/generate_testcases.py
@@ -0,0 +1,36 @@
+import random
+
+def gcd(a, b):
+ while b != 0:
+ a, b = b, a % b
+ return a
+
+a = random.sample(xrange(100), 10)
+b = random.sample(xrange(1000), 10)
+c = random.sample(xrange(10000), 10)
+c = random.sample(xrange(10000), 10)
+d = random.sample(xrange(100000), 10)
+e = random.sample(xrange(1000000), 10)
+f = a + b + c + d + e
+f.sort()
+a = random.sample(xrange(100), 10)
+b = random.sample(xrange(1000), 10)
+c = random.sample(xrange(10000), 10)
+d = random.sample(xrange(100000), 10)
+e = random.sample(xrange(1000000), 10)
+g = a + b + c + d + e
+
+testcases = []
+for item in f:
+ a = f[random.randrange(0, len(f))]
+ b = g[random.randrange(0, len(g))]
+ gc = gcd(a, b)
+ testcases.append([a, b, gc])
+
+sortedcases = sorted(testcases, key=lambda case: case[0])
+
+fil = open('/home/madhu/Desktop/gcdtest.dat', 'w')
+for case in sortedcases:
+ fil.write('%d, %d, %d\n' % (case[0], case[1], case[2]))
+
+fil.close()