def test_errors_require_slots_subclass(runner: CliRunner):
    result = runner.invoke(cli, ['-m', 'module_not_ok', '--require-subclass'])
    assert (result.exit_code == 1)
    assert (result.output == "ERROR: 'module_not_ok.a.b:A' has no slots, but it could have.\nERROR: 'module_not_ok.a.b:U' has slots but superclass does not.\nERROR: 'module_not_ok.foo:A' has no slots, but it could have.\nERROR: 'module_not_ok.foo:C' has no slots, but it could have.\nERROR: 'module_not_ok.foo:R' has no slots, but it could have.\nERROR: 'module_not_ok.foo:S' has slots but superclass does not.\nERROR: 'module_not_ok.foo:T' has slots but superclass does not.\nERROR: 'module_not_ok.foo:U' has slots but superclass does not.\nERROR: 'module_not_ok.foo:U.Ua' defines overlapping slots.\nERROR: 'module_not_ok.foo:U.Ub' defines overlapping slots.\nERROR: 'module_not_ok.foo:W' defines overlapping slots.\nERROR: 'module_not_ok.foo:Z' has duplicate slots.\nERROR: 'module_not_ok.foo:Za' defines overlapping slots.\nOh no, found some problems!\nScanned 4 module(s), 28 class(es).\n")
def test_errors_require_slots_subclass(runner: CliRunner):
    result = runner.invoke(cli, ['-m', 'module_not_ok', '--require-subclass'])
    assert (result.exit_code == 1)
    assert (result.output == "ERROR: 'module_not_ok.a.b:A' has no slots, but it could have.\nERROR: 'module_not_ok.a.b:U' has slots but superclass does not.\nERROR: 'module_not_ok.foo:A' has no slots, but it could have.\nERROR: 'module_not_ok.foo:C' has no slots, but it could have.\nERROR: 'module_not_ok.foo:R' has no slots, but it could have.\nERROR: 'module_not_ok.foo:S' has slots but superclass does not.\nERROR: 'module_not_ok.foo:T' has slots but superclass does not.\nERROR: 'module_not_ok.foo:U' has slots but superclass does not.\nERROR: 'module_not_ok.foo:U.Ua' defines overlapping slots.\nERROR: 'module_not_ok.foo:U.Ub' defines overlapping slots.\nERROR: 'module_not_ok.foo:W' defines overlapping slots.\nERROR: 'module_not_ok.foo:Z' has duplicate slots.\nERROR: 'module_not_ok.foo:Za' defines overlapping slots.\nOh no, found some problems!\nScanned 4 module(s), 28 class(es).\n")