title: Python unittest data provider
body: <p>I am trying to create a unit test in python that has a data provider. As the unittest library does not support this nativity, I'm using the <a href="https://pypi.python.org/pypi/unittest-data-provider" rel="noreferrer">unittest_data_provider package</a>. I'm getting an error, and am not sure where it is coming from (I'm new to python).</p>
  
  <p>My code</p>
  
  <pre><code>import unittest
  from wikibase.dataModel.item_id import ItemId
  from unittest_data_provider import data_provider
  
  
  class TestItemId(unittest.TestCase):
      itemIds = lambda: (
          ( 'q42' ),
          ( 'Q42' ),
          ( 'Q1' ),
          ( 'Q1000' ),
          ( 'Q31337' ),
      )
  
      @data_provider(itemIds)
      def test_constructor(self, itemString):
          itemId = ItemId(itemString)
          self.assertEqual(itemId.getSerialization(), itemString)
  </code></pre>
  
  <p>The error I get:</p>
  
  <blockquote>
    <p>File
    "/usr/local/lib/python3.3/dist-packages/unittest_data_provider/<strong>init</strong>.py",
    line 7, in repl
        fn(self, *i) TypeError: test_constructor() takes 2 positional arguments but 4 were given</p>
  </blockquote>
  
  <p>This is using python 3.3.</p>