author Neil Rashbrook <>
Wed, 18 Apr 2012 23:49:46 +0100
changeset 11663 78c57aba3724c82ad68ecfb711f9d74e7d41b02b
parent 9853 117365595f1576f1c5725f353d4b53dceb7171a9
child 12286 84ac3c71109811da751f0ef2d72108075938f094
permissions -rw-r--r--
Bug 743312 Followup for when doorhangers have been disabled r=InvisibleSmiley

def test(mod, path, entity = None):
  import re
  # ignore anything but SeaMonkey
  if mod not in ("netwerk", "dom", "toolkit", "security/manager",
                 "editor/ui", "suite", "services/sync"):
    return False
  # ignore temporary files, hiden files and files from rejects
  if (re.match(r".*?\/[.#].+", path) or
      re.match(r".*~$", path) or
      re.match(r".+\.(orig|rej)", path)):
    return False
  if mod not in ("suite"):
    # we only have exceptions for suite
    return True
  if entity is None:
    # missing and obsolete files
    return not (re.match(r"searchplugins\/.+\.xml", path) or
                re.match(r"chrome\/common\/help\/images\/[A-Za-z-_]+\.[a-z]+", path))
  if path == "":
    return entity != "MOZ_LANGPACK_CONTRIBUTORS"
  if path == "profile/bookmarks.extra" or path == "profile/panels.extra":
    # ignore files for additional bookmarks and panels
    return False
  if path == "chrome/common/":
    return not re.match(r"browser\.search\.order\.[1-9]", entity)

  if path != "chrome/browser/":
    # only exceptions remain, compare all others
    return True

  return not re.match(r"browser\.contentHandlers\.types\.[0-5]", entity)