MCPcopy Create free account
hub / github.com/aboutcode-org/scancode-toolkit / is_valid_short_match

Function is_valid_short_match

src/licensedcode/match.py:1975–2123  ·  view source on GitHub ↗

Return True if the match with ``matched_text`` is a valid short match given a ``rule_text``. ``max_diff`` is the maximum number of character differences between these two texts that is considered as acceptable. For example: >>> is_valid_short_match("gpl", "GPL") True

(
    matched_text,
    rule_text,
    max_diff=0,
    trace=TRACE_FILTER_SINGLE_WORD_GIBBERISH,
)

Source from the content-addressed store, hash-verified

1973
1974
1975def is_valid_short_match(
1976 matched_text,
1977 rule_text,
1978 max_diff=0,
1979 trace=TRACE_FILTER_SINGLE_WORD_GIBBERISH,
1980):
1981 """
1982 Return True if the match with ``matched_text`` is a valid short match given
1983 a ``rule_text``.
1984 ``max_diff`` is the maximum number of character differences between these
1985 two texts that is considered as acceptable.
1986
1987 For example:
1988 >>> is_valid_short_match("gpl", "GPL")
1989 True
1990 >>> is_valid_short_match("Gpl", "GPL")
1991 True
1992 >>> is_valid_short_match("gPl", "GPL")
1993 False
1994 >>> is_valid_short_match("GPL[", "GPL")
1995 False
1996 >>> is_valid_short_match("GPL\\\\ ", "GPL")
1997 False
1998 >>> is_valid_short_match("~gpl", "GPL")
1999 False
2000 >>> is_valid_short_match("GPL", "gpl")
2001 True
2002 >>> is_valid_short_match("Gpl+", "gpl+")
2003 True
2004 >>> is_valid_short_match(" GPL foo ", " GPL foo ")
2005 True
2006 >>> is_valid_short_match("~gpl", "GPL", max_diff=0)
2007 False
2008 >>> is_valid_short_match("~gpl", "GPL", max_diff=1)
2009 True
2010 >>> is_valid_short_match("ALv2@", "ALv2", max_diff=1)
2011 True
2012 >>> is_valid_short_match("aLv2@", "ALv2", max_diff=1)
2013 False
2014 >>> is_valid_short_match("alv2@", "ALv2", max_diff=1)
2015 True
2016 >>> is_valid_short_match("GPLv2@", "GPLv2")
2017 True
2018 >>> is_valid_short_match("LGPL2@", "LGPL2")
2019 True
2020 >>> is_valid_short_match("gpl) &", "GPL")
2021 False
2022 >>> is_valid_short_match("GPLv2(", "GPLv2")
2023 True
2024 >>> is_valid_short_match("GPLv2", "GPLv2")
2025 True
2026 >>> is_valid_short_match("GPLV2+", "GPLv2+")
2027 True
2028 >>> is_valid_short_match("gplv2+", "GPLv2+")
2029 True
2030 >>> is_valid_short_match("LGPLV2+", "LGPLv2+")
2031 True
2032 >>> is_valid_short_match("LgplV2+", "LGPLv2+")

Calls 3

logger_debugFunction · 0.70
joinMethod · 0.45
splitMethod · 0.45

Tested by

no test coverage detected