from praw.util import camel_to_snake

from .. import UnitTest


class TestUtil(UnitTest):
    def test_camel_to_snake(self):
        test_strings = (
            ("camelCase", "camel_case"),
            ("PascalCase", "pascal_case"),
            ("camelCasePlace", "camel_case_place"),
            ("Pascal8Camel8Snake", "pascal8_camel8_snake"),
            ("HTTPResponseCode", "http_response_code"),
            ("ResponseHTTP", "response_http"),
            ("ResponseHTTP200", "response_http200"),
            ("getHTTPResponseCode", "get_http_response_code"),
            ("get200HTTPResponseCode", "get200_http_response_code"),
            ("getHTTP200ResponseCode", "get_http200_response_code"),
            ("12PolarBears", "12_polar_bears"),
            ("11buzzingBees", "11buzzing_bees"),
            ("TacocaT", "tacoca_t"),
            ("fooBARbaz", "foo_ba_rbaz"),
            ("foo_BAR_baz", "foo_bar_baz"),
            ("Base_BASE", "base_base"),
            ("Case_Case", "case_case"),
            ("FACE_Face", "face_face"),
        )
        for camel, snake in test_strings:
            assert camel_to_snake(camel) == snake

Add test for `camel_to_snake()`