diff options
| author | Oz Linden <oz@lindenlab.com> | 2015-04-14 10:44:16 -0400 | 
|---|---|---|
| committer | Oz Linden <oz@lindenlab.com> | 2015-04-14 10:44:16 -0400 | 
| commit | a49e11efd9e249cc6d3cf5bcffaafe1e831f2fa9 (patch) | |
| tree | b166e50ac08174795f8c1f81ea23ae05f68c022f /scripts | |
| parent | 034fb74d05d25582ebdc086414cb0307b1e2e8e2 (diff) | |
remove check-viewer-xml (moved to the viewer-test-tools repo)
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/check-viewer-xml | 104 | 
1 files changed, 0 insertions, 104 deletions
| diff --git a/scripts/check-viewer-xml b/scripts/check-viewer-xml deleted file mode 100755 index 85366c02ae..0000000000 --- a/scripts/check-viewer-xml +++ /dev/null @@ -1,104 +0,0 @@ -#!/usr/bin/env python -from __future__ import print_function -import sys -import os -import argparse -import xml.etree.ElementTree as xml - -try: -    from llbase import llsd -except ImportError: -    try: -        from indra.base import llsd -    except ImportError: -        sys.exit("""Failed to import python llsd module from llbase or indra.base. -Try -   pip install llbase -or -   sudo pip install llbase -""") - -def warning(*objs): -    print(*objs, file=sys.stderr) -     -def xml_is_ok(file): -    # Check that the XML file is well formed. -    try : -        elements = xml.parse(file) -    except IOError as read_error: -        warning("XML not readable '%s':\n   %s" % (file, read_error)) -        return False -    except xml.ParseError as parse_error : -        warning("XML not well-formed '%s':\n   %s" % (file, parse_error.msg)) -        return False - -    root = elements.getroot() -    if root.tag == 'llsd': -        # if it's LLSD, we should be able to also validate that -        with open(file, "r") as llsd_file: -            llsd_content=llsd_file.read() -        try: -            llsd.parse(llsd_content) -        except Exception as validity_error: -            warning("LLSD not valid '%s':\n   %s" % (file, validity_error)) -            return False -    elif arg.verbosity == 'verbose': -        warning("  %s is not a document type that can be validated" % root.tag) - -    return True - -cmd_line = argparse.ArgumentParser(description='Checks all xml files found in viewer settings and cache directories ', -                                   prog='check-viewer-xml', -                                   ) -cmd_line.add_argument('directory', nargs='*', default=None, -                      help='additional directories to check') -verbosity_options=cmd_line.add_mutually_exclusive_group() -verbosity_options.add_argument('-v', '--verbose',  -                        help='verbose output', action='store_const', const='verbose', dest='verbosity') -verbosity_options.add_argument('-q', '--quiet', -                    help='output errors only', action='store_const', const='quiet', dest='verbosity', default='normal') - -arg = cmd_line.parse_args() - -if sys.platform == 'darwin': -    CheckDirs = [ os.path.expanduser('~/Library/Caches/SecondLife'), -                  os.path.expanduser('~/Library/Application Support/SecondLife'), -                  ] -elif sys.platform == 'linux2': -    CheckDirs = [ os.path.expanduser('~/.secondlife'), -                  ] -elif sys.platform == 'win32' or sys.platform == 'cygwin':   -    if os.path.isdir(os.path.expanduser('~\\AppData\\Roaming')): -        CheckDirs = [ os.path.expanduser('~\\Application\\Data\\Secondlife'), -                      os.path.expanduser('~\\AppData\\Roaming\\Secondlife'), -                      os.path.expanduser('~\\AppData\\Local\\Secondlife'), -                      ] -    else: -        sys.exit("No AppData\\Roaming directory found;\nThis script must be run in a native Windows command shell.\nRunning under cygwin does not work.") -else: -    sys.exit("unrecognized platform '%s'" % sys.platform) - -if arg.directory: -    CheckDirs.extend(arg.directory) - -checked_files = 0 -invalid_files = 0 -for root in filter(os.path.isdir, CheckDirs): -    if arg.verbosity == 'verbose': -        print("Searching '%s'" % root) -    for directory, dirs, files in os.walk(root): -        for file in files: -            if file.endswith('.xml'): -                xml_file = os.path.join(directory,file) -                if arg.verbosity == 'verbose': -                    print("Checking '%s'" % xml_file) -                checked_files += 1 -                if not xml_is_ok(xml_file): -                    invalid_files += 1 - -if arg.verbosity != 'quiet': -    print("Checked %d files, %d errors found." % (checked_files, invalid_files)) - -sys.exit(invalid_files) - -                 | 
