コード例 #1
0
ファイル: blank_lines_test.py プロジェクト: neurosnap/yaplint
def test_blank_lines_internal_decorator_fix():
    rules = [BlankLinesRule()]
    src = """
def test():
    pass


class Test(object):
    def one():
        pass


    @a_decorator
    def wow():
        pass
"""

    expected = """
def test():
    pass


class Test(object):
    def one():
        pass

    @a_decorator
    def wow():
        pass
"""

    actual = linter(src, rules, fix=True)
    assert src_equal(actual, expected)
コード例 #2
0
ファイル: blank_lines_test.py プロジェクト: neurosnap/yaplint
def test_blank_lines_internal_func_fix():
    rules = [BlankLinesRule()]
    src = """
def test():
    pass

class Two(object):
    def cool():
        pass
    def wow():
        pass
"""

    expected = """
def test():
    pass


class Two(object):
    def cool():
        pass

    def wow():
        pass
"""

    actual = linter(src, rules, fix=True)
    assert src_equal(actual, expected)
コード例 #3
0
def test_list_wrong_format_and_comment_force_wrap():
    src = """
def wow():
    yes = True
    x = 1
    y = 2
    if yes:
        var = [ # first comment
            x, y, # here is a comment
            "yes I think it is", # here is another comment
        ]
"""
    rules = [FuncWrap()]
    actual = linter(src, rules, fix=True)

    expected = """
def wow():
    yes = True
    x = 1
    y = 2
    if yes:
        var = [
            # first comment
            x,
            y, # here is a comment
            "yes I think it is" # here is another comment
        ]
"""

    assert src_equal(actual, expected)
コード例 #4
0
ファイル: blank_lines_test.py プロジェクト: neurosnap/yaplint
def test_blank_lines_w_comments_fix():
    rules = [BlankLinesRule()]
    src = """
class Test(object):
    pass
# one

# three



# two
class TestTwo(object):
    pass
"""

    expected = """
class Test(object):
    pass
# one

# three


# two
class TestTwo(object):
    pass
"""

    actual = linter(src, rules, fix=True)
    assert src_equal(actual, expected)
コード例 #5
0
def test_no_active_rules():
    rules = [ExampleRule({'rule_setting': "off"})]
    src = "print('test')"
    actual = linter(src, rules)
    expected = DEFAULT_LINTER_RESULT

    assert actual == expected
コード例 #6
0
def test_lint_fixer():
    rules = [AnotherExampleRule()]
    src = "test = 1"
    actual = linter(src, rules)
    expected = "test = 1"

    assert src_equal(actual["ast"], expected)
コード例 #7
0
def test_func_wrong_format_force_wrap():
    src = """
def test(one, two, three):
    pass

def wow():
    yes = True
    x = 1
    y = 2
    if yes:
        test(
            x, y,
            "yes I think it is",
        )
"""
    rules = [FuncWrap()]
    actual = linter(src, rules, fix=True)

    expected = """
def test(one, two, three):
    pass

def wow():
    yes = True
    x = 1
    y = 2
    if yes:
        test(x, y, "yes I think it is")
"""

    assert src_equal(actual, expected)
コード例 #8
0
def test_no_src():
    rules = [ExampleRule()]
    src = ""
    actual = linter(src, rules)
    expected = DEFAULT_LINTER_RESULT

    assert actual == expected
コード例 #9
0
def test_list_force_rewrap():
    src = """
def wow():
    yes = True
    x = 1
    y = 2
    if yes:
        var = [
            x, y,
            "yes I think it is",
            "this is a really long message, does this still work now?"
        ]
"""
    rules = [FuncWrap()]
    actual = linter(src, rules, fix=True)

    expected = """
def wow():
    yes = True
    x = 1
    y = 2
    if yes:
        var = [
            x,
            y,
            "yes I think it is",
            "this is a really long message, does this still work now?"
        ]
"""

    assert src_equal(actual, expected)
コード例 #10
0
ファイル: blank_lines_test.py プロジェクト: neurosnap/yaplint
def test_blank_lines_missing_newline_windows_fix():
    rules = [BlankLinesRule()]
    src = "def test():\r\n    pass\r\n\r\nclass Two:\r\n    pass\r\n"
    expected = "def test():\r\n    pass\r\n\r\n\r\nclass Two:\r\n    pass\r\n"

    actual = linter(src, rules, fix=True)
    assert src_equal(actual, expected)
コード例 #11
0
ファイル: blank_lines_test.py プロジェクト: neurosnap/yaplint
def test_comments_separating_funcs_pass():
    rules = [BlankLinesRule({'rule_settings': "error"})]
    src = """
def remove_farewell(text):
    text = ""
    return text


# def word_tokenize(text, nlp):
#    doc = nlp.tokenizer(text)
#    tokens = [word.string.strip() for word in doc]
#    return tokens

# def pos_tag(text, nlp):
#     doc = nlp(text)
#     tags = [(word.string.strip(), word.tag_) for word in doc]
#     return(tags)


def word_tokenize(text):
    return wrd_tokenize(text)
"""

    expected = []

    actual = linter(src, rules, fix=False)
    assert actual['errors'] == expected
コード例 #12
0
def test_func_nested_should_wrap():
    src = """
def test(one, two, three):
    pass

def wow():
    yes = True
    if yes:
        test("this is a really long string, does this work?", "I'm not sure if this is long enough", "yes I think it is")
"""
    rules = [FuncWrap()]
    actual = linter(src, rules, fix=True)

    expected = """
def test(one, two, three):
    pass

def wow():
    yes = True
    if yes:
        test(
            "this is a really long string, does this work?",
            "I'm not sure if this is long enough",
            "yes I think it is"
        )
"""

    assert src_equal(actual, expected)
コード例 #13
0
def test_class_docstring_present():
    rules = [RequireClassDocstrings({'rule_setting': "error"})]
    src = 'class Test(object):\n    """This is a docstring"""\n    pass'

    expected = []

    actual = linter(src, rules, fix=False)
    assert actual['errors'] == expected
コード例 #14
0
def test_module_docstring_mult_newline_present():
    rules = [RequireModuleDocstrings({'rule_setting': "error"})]
    src = '\n\n\n"""This is a docstring"""\nprint("hi there")'

    expected = []

    actual = linter(src, rules, fix=False)
    assert actual['errors'] == expected
コード例 #15
0
def test_method_docstring_present():
    rules = [RequireFuncDocstrings({'rule_setting': "error"})]
    src = 'class Test(object):\n'
    '    def test():\n'
    '        """Docstring is here!"""'

    expected = []

    actual = linter(src, rules, fix=False)
    assert actual['errors'] == expected
コード例 #16
0
def test_func_should_not_wrap():
    src = """
def test(one, two, three):
    pass

test("this is small", "I'm sure", "of it")
"""
    rules = [FuncWrap()]
    actual = linter(src, rules, fix=True)

    assert src_equal(actual, src)
コード例 #17
0
def test_class_def_with_post_comment():
    src = ("# [ API ]\n"
           "# pylint: disable=too-many-instance-attributes\n"
           "# There are a lot of things that the model need to track and do.\n"
           "class PyTorchModel(Model, nn.Module):\n"
           '    """The Dataset object that handles batching."""\n')

    rules = [FuncWrap()]
    actual = linter(src, rules, fix=True)

    assert src_equal(actual, src)
コード例 #18
0
def test_max_length_error():
    src = "print('this line is less than 100 characters, but i need to really stretch it. who knows.')"
    rules = [MaxLength()]
    actual = linter(src, rules)
    expected = [{
        "filename": "",
        "lineno": 1,
        "msg": "max line has been exceeded 91 > 80",
        "name": "max_length",
    }]
    assert actual["errors"] == expected
コード例 #19
0
def test_class_def_with_pre_comment():
    src = """
# [ API ]
# pylint: disable=too-many-instance-attributes
# There are a lot of things that the model need to track and do.
class PyTorchModel(Model, nn.Module):
    pass
"""

    rules = [FuncWrap()]
    actual = linter(src, rules, fix=True)

    assert src_equal(actual, src)
コード例 #20
0
def test_func_docstring_comment_error():
    rules = [RequireFuncDocstrings({'rule_setting': "error"})]
    src = 'def test():\n    # this is a comment\n    pass'

    expected = [{
        "msg": "function definition requires docstring",
        "lineno": 1,
        "filename": "",
        "name": "require_func_docstrings",
    }]

    actual = linter(src, rules, fix=False)
    assert actual['errors'] == expected
コード例 #21
0
def test_module_docstring_error():
    rules = [RequireModuleDocstrings({'rule_setting': "error"})]
    src = 'print("hi there")'

    expected = [{
        "name": "require_module_docstrings",
        "filename": "",
        "lineno": 1,
        "msg": "module requires docstring",
    }]

    actual = linter(src, rules, fix=False)
    assert actual['errors'] == expected
コード例 #22
0
def test_class_docstring_missing_error():
    rules = [RequireClassDocstrings({'rule_setting': "error"})]
    src = 'class Test(object):\n    pass'

    expected = [{
        "msg": "class definition requires docstring",
        "lineno": 1,
        "filename": "",
        "name": "require_class_docstrings",
    }]

    actual = linter(src, rules, fix=False)
    assert actual['errors'] == expected
コード例 #23
0
def test_tuple_unwrap():
    src = """test = (
    "one",
    "really long string",
)
another = "string"
"""
    rules = [ListWrap()]
    actual = linter(src, rules, fix=True)

    expected = """test = ("one", "really long string")
another = "string"
"""
    assert src_equal(actual, expected)
コード例 #24
0
def test_module_docstring_comment_error():
    rules = [RequireModuleDocstrings({'rule_setting': "error"})]
    src = """# this is a comment
print("another one")
"""

    expected = [{
        "name": "require_module_docstrings",
        "filename": "",
        "lineno": 1,
        "msg": "module requires docstring",
    }]

    actual = linter(src, rules, fix=False)
    assert actual['errors'] == expected
コード例 #25
0
def test_tuple_wrap():
    src = """test = ("one", "really long string", "that should wrap", "but will it actually break it up?")
another = "string"
"""
    rules = [ListWrap()]
    actual = linter(src, rules, fix=True)

    expected = """test = (
    "one",
    "really long string",
    "that should wrap",
    "but will it actually break it up?"
)
another = "string"
"""
    assert src_equal(actual, expected)
コード例 #26
0
def test_method_docstring_error():
    rules = [RequireFuncDocstrings({'rule_setting': "error"})]
    src = """
class Test(object):
    def test():
        pass
"""
    expected = [{
        "msg": "function definition requires docstring",
        "lineno": 3,
        "filename": "",
        "name": "require_func_docstrings",
    }]

    actual = linter(src, rules, fix=False)
    assert actual['errors'] == expected
コード例 #27
0
ファイル: blank_lines_test.py プロジェクト: neurosnap/yaplint
def test_method_decorated_pass():
    rules = [BlankLinesRule({'rule_settings': "error"})]
    src = """
class Vocab(object):
    def __init__(self):
        pass

    @staticmethod
    def boo():
        pass
"""

    expected = []

    actual = linter(src, rules, fix=False)
    assert actual['errors'] == expected
コード例 #28
0
ファイル: blank_lines_test.py プロジェクト: neurosnap/yaplint
def test_nested_indent_pass():
    rules = [BlankLinesRule({'rule_settings': "error"})]
    src = """
def write_TSV(filename, features, labels):
    with open(filename, "w") as f:
        f.write(header)


def main():
    # Get credentials and set up acces to Gmail API
    pass
"""

    expected = []

    actual = linter(src, rules, fix=False)
    assert actual['errors'] == expected
コード例 #29
0
ファイル: blank_lines_test.py プロジェクト: neurosnap/yaplint
def test_blank_lines_missing_newline_error():
    rules = [BlankLinesRule({'rule_settings': "error"})]
    src = """
def test():
    pass

class Two(object):
    pass
"""

    expected = [{
        "name": "blank_lines",
        "filename": "",
        "lineno": 5,
        "msg": "expected 2 blank lines, found 1",
    }]

    actual = linter(src, rules, fix=False)
    assert actual['errors'] == expected
コード例 #30
0
ファイル: blank_lines_test.py プロジェクト: neurosnap/yaplint
def test_blank_lines_missing_multiple_newlines_fix():
    rules = [BlankLinesRule()]
    src = """
def test():
    pass
class Two(object):
    pass
"""

    expected = """
def test():
    pass


class Two(object):
    pass
"""

    actual = linter(src, rules, fix=True)
    assert src_equal(actual, expected)