The Python unittest doc defines a test case as:
"[...] the smallest unit of testing. It checks for a specific response to a particular set of inputs."
However the first example contains a method with two assertions:
def test_shuffle(self):
...
self.assertEqual(self.seq, range(10))
...
self.assertRaises(TypeError, random.shuffle, (1,2,3))
This is clearly a contradiction, since the assertions each contain their own inputs and expected response.
Which approach is most appropriate?