.. _UseAssertInRule:

===============
UseAssertInRule
===============

Discourages use of ``assertTrue(x in y)`` and ``assertFalse(x in y)``
as it is deprecated (https://docs.python.org/3.8/library/unittest.html#deprecated-aliases).
Use ``assertIn(x, y)`` and ``assertNotIn(x, y)``) instead.

-------
Message
-------
Use assertIn/assertNotIn instead of assertTrue/assertFalse for inclusion check.
See https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertIn)

----------------
Has Autofix: Yes
----------------

-------------------
VALID Code Examples
-------------------

# 1:







.. code-block:: python

            self.assertIn(a, b)




# 2:







.. code-block:: python

            self.assertIn(f(), b)




# 3:







.. code-block:: python

            self.assertIn(f(x), b)




.. container:: toggle


    # 4:







    .. code-block:: python

                self.assertIn(f(g(x)), b)





    # 5:







    .. code-block:: python

                self.assertNotIn(a, b)





    # 6:







    .. code-block:: python

                self.assertNotIn(f(), b)





    # 7:







    .. code-block:: python

                self.assertNotIn(f(x), b)





    # 8:







    .. code-block:: python

                self.assertNotIn(f(g(x)), b)





---------------------
INVALID Code Examples
---------------------

# 1:







.. code-block:: python

            self.assertTrue(a in b)




Autofix:

.. code-block:: python

    --- 
    +++ 
    @@ -1 +1 @@
    -self.assertTrue(a in b)
    +self.assertIn(a, b)

# 2:







.. code-block:: python

            self.assertTrue(f() in b)




Autofix:

.. code-block:: python

    --- 
    +++ 
    @@ -1 +1 @@
    -self.assertTrue(f() in b)
    +self.assertIn(f(), b)

# 3:







.. code-block:: python

            self.assertTrue(f(x) in b)




Autofix:

.. code-block:: python

    --- 
    +++ 
    @@ -1 +1 @@
    -self.assertTrue(f(x) in b)
    +self.assertIn(f(x), b)

.. container:: toggle


    # 4:







    .. code-block:: python

                self.assertTrue(f(g(x)) in b)




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -self.assertTrue(f(g(x)) in b)
        +self.assertIn(f(g(x)), b)


    # 5:







    .. code-block:: python

                self.assertTrue(a not in b)




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -self.assertTrue(a not in b)
        +self.assertNotIn(a, b)


    # 6:







    .. code-block:: python

                self.assertTrue(not a in b)




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -self.assertTrue(not a in b)
        +self.assertNotIn(a, b)


    # 7:







    .. code-block:: python

                self.assertFalse(a in b)




    Autofix:

    .. code-block:: python

        --- 
        +++ 
        @@ -1 +1 @@
        -self.assertFalse(a in b)
        +self.assertNotIn(a, b)

