Esempio n. 1
0
 def test_validate_list(self):
     urls = ["www.google.com", "http://www.google.com", "a", "*****@*****.**", "facebook.com", "CS.WASHINGTON.EDU", "HTTPS://WWW.YAHOO.COM/"]
     validUrls = ["http://www.google.com", "HTTPS://WWW.YAHOO.COM/"]
     res = validator.valid_list(urls)
     self.assertEquals(res, validUrls)
Esempio n. 2
0
    try:
        outfile = open(args.output, 'w')
    except IOError:
        print "Error: Unable to open output file \"%s\"." % args.output
        sys.exit()

    try:
        urls = open(args.input).readlines()
    except IOError:
        print "Error: File \"%s\" not found." % args.input
        sys.exit()

    sel = 3  # default selection is quicksort
    if args.sort is not None: # try getting sort selection from command-line args
        sel = args.sort

    # remove leading/trailing whitespace from urls
    urls = [x.strip() for x in urls]

    # normalize and validate urls, if specified
    if args.filter is not None:
        validUrls = validator.valid_list(urls)
        if args.filter == 'valid':
            urls = normalizer.normalize_list(validUrls)
        elif args.filter == 'invalid':
            urls = filter(lambda x: x not in validUrls, urls)

    sorter = algos[sel](urls)
    sortedList = sorter.sort()
    outfile.write("\n".join(sortedList))