You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
langchain/libs/experimental/tests/unit_tests/test_python.py

35 lines
1.3 KiB
Python

import unittest
from langchain_experimental.utilities import PythonREPL
class TestSanitizeInput(unittest.TestCase):
def test_whitespace_removal(self) -> None:
query = " print('Hello, world!') "
sanitized_query = PythonREPL.sanitize_input(query)
self.assertEqual(sanitized_query, "print('Hello, world!')")
def test_python_removal(self) -> None:
query = "python print('Hello, world!') "
sanitized_query = PythonREPL.sanitize_input(query)
self.assertEqual(sanitized_query, "print('Hello, world!')")
def test_backtick_removal(self) -> None:
query = "`print('Hello, world!')`"
sanitized_query = PythonREPL.sanitize_input(query)
self.assertEqual(sanitized_query, "print('Hello, world!')")
def test_combined_removal(self) -> None:
query = " `python print('Hello, world!')` "
sanitized_query = PythonREPL.sanitize_input(query)
self.assertEqual(sanitized_query, "print('Hello, world!')")
def test_mixed_case_removal(self) -> None:
query = " pYtHoN print('Hello, world!') "
sanitized_query = PythonREPL.sanitize_input(query)
self.assertEqual(sanitized_query, "print('Hello, world!')")
if __name__ == "__main__":
unittest.main()