在python(coala的`LineLengthBear`)中为visual basic写一个`long line test`

Write a `long line test` for visual basic in python (`LineLengthBear` of coala)

这是我的代码,

invalid_VB_file = """
'C' * (65535 + 1)
"""

LineLengthBearLangSpecificAspectTest = verify_local_bear(
    LineLengthBear,
    valid_files=(test_file,),
    invalid_files=(invalid_VB_file,),
    aspects=AspectList([
        get_aspect('LineLength')('VisualBasic', max_line_length=4),
        ]),
    settings={'language': 'VisualBasic'},
        )

所以基本上,它会忽略 max_line_length=4 并选择已为 Visual Basic 文件定义的限制 65535。我面临的问题是 LineLengthBear 给了我 18 作为 invalid_VB_test 中行的长度,并使测试有效,因此测试失败。有什么方法可以编写一个无效的测试,即一行超过 65535 个字符,而不是字面上写这么长的一行?

您的字符串字面意思是 "'C' * (65535 + 1)"。如果你真的想要一行65536 Cs,那就把引号去掉:

invalid_VB_file = 'C' * (65535 + 1)