title: TextTestRunner runs 2 tests (test_methods when one is called) in pyunit
body: <p>I am just trying to understand the behavior of unittest's subclasses and methods. In the following code, I want to just run test_add method and not test_sub. Can someone please explain to me what I am doing wrong since the output proves that both the methods are being executed:</p>
  
  <pre><code>import unittest
  
  def add(a,b):
      x=a+b
      return x 
  
  def sub(x,y):
      z=x-y
      return z
  
  class addnum():
      def calladd(self, a, b):
          sum1 = add(a, b)
          return sum1
      def callsub(self,x,y):
          diff = sub(x , y)
          print "subtraction succ"
          return diff
  
  class test(addnum, unittest.TestCase):
      def setup(self):
          pass
  
      def teardown(self):
          pass
  
      def test_add(self):
          a1=addnum()
          if a1.calladd(1, 2) ==3:
              print "add successful"
          assert addnum().calladd(1,2) == 3
  
      def test_sub(self):
          assert addnum().callsub(5, 3) == 2
          print "abc"
  
  #suite = unittest.TestSuite()
  #suite.addTest(test('test_add'))
  runner = unittest.TextTestRunner(verbosity=2)
  runner.run(test(methodName='test_add'))
  </code></pre>
  
  <p>The output is as follows:</p>
  
  <pre><code>Finding files... done.
  Importing test modules ... add successful
  done.
  
  add successful
  subtraction succ
  abc
  ----------------------------------------------------------------------
  Ran 2 tests in 0.000s
  
  OK
  test_add (trial2.test) ... ok
  
  ----------------------------------------------------------------------
  Ran 1 test in 0.000s
  
  OK
  </code></pre>
  
  <p>Please help. I admit my knowledge is pretty limited at this point.</p>