def METHOD_NAME(self):
    d1 = defaultdict()
    self.assertEqual(d1.default_factory, None)
    self.assertEqual(repr(d1), "defaultdict(None, {})")
    self.assertEqual(eval(repr(d1)), d1)
    d1[11] = 41
    self.assertEqual(repr(d1), "defaultdict(None, {11: 41})")
    d2 = defaultdict(int)
    self.assertEqual(d2.default_factory, int)
    d2[12] = 42
    self.assertEqual(repr(d2), "defaultdict(<class 'int'>, {12: 42})")
    def foo(): return 43
    d3 = defaultdict(foo)
    self.assertTrue(d3.default_factory is foo)
    d3[13]
    self.assertEqual(repr(d3), "defaultdict(%s, {13: 43})" % repr(foo))