--- /dev/null
+import unittest
+
+import probability.Distribution
+
+
+class DistributionTest(unittest.TestCase):
+
+ def testSampledValuesWithinComponentBounds(self):
+ """
+ Create a distribution from the sum of two uniforms, and make
+ sure that the values sampled from the sum lie in the interval
+ (min1+min2, max1+max2).
+ """
+ min1 = 0.1515
+ max1 = 22
+ min2 = 14
+ max2 = 100
+
+ ud1 = probability.Distribution.Uniform(min1, max1)
+ ud2 = probability.Distribution.Uniform(min2, max2)
+ distro = ud1 + ud2
+
+ for x in range(0,1000):
+ s = distro.sample()
+ self.assertTrue(s >= (min1+min2))
+ self.assertTrue(s <= (max1+max2))
+
+
+def suite():
+ suite = unittest.TestSuite()
+ suite.addTest(unittest.makeSuite(DistributionTest))
+ return suite