code: def hacking_assert_is_none(logical_line, noqa):
      
      if noqa:
          return
      for func_name in ('assertEqual', 'assertIs', 'assertNotEqual',
                        'assertIsNot'):
          try:
              start = logical_line.index('.%s(' % func_name) + 1
          except ValueError:
              continue
          checker = NoneArgChecker(func_name)
          checker.visit(ast.parse(logical_line))
          if checker.none_found:
              yield start, "H203: Use assertIs(Not)None to check for None"
docs: Use assertIs(Not)None to check for None in assertions.
  
      Okay: self.assertEqual('foo', 'bar')
      Okay: self.assertNotEqual('foo', {}.get('bar', None))
      Okay: self.assertIs('foo', 'bar')
      Okay: self.assertIsNot('foo', 'bar', None)
      Okay: foo(self.assertIsNot('foo', 'bar'))
      H203: self.assertEqual(None, 'foo')
      H203: self.assertNotEqual('foo', None)
      H203: self.assertIs(None, 'foo', 'bar')
      H203: self.assertIsNot('foo', None, 'bar')
      H203: foo(self.assertIsNot('foo', None, 'bar'))
      Okay: self.assertEqual(None, 'foo')  # noqa
      Okay: self.assertIs(None, 'foo')  # noqa
      Okay: self.assertIsNone('foo')