Merge pull request #162 from TheYahya/hoadlck-test-speedup

Tests Speedup
pull/161/head
Christopher Kent Hoadley 6 years ago committed by GitHub
commit febcb0718d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -91,7 +91,9 @@
"errorType": "status_code",
"rank": 839,
"url": "https://bitbucket.org/{}",
"urlMain": "https://bitbucket.org/"
"urlMain": "https://bitbucket.org/",
"username_claimed": "blue",
"username_unclaimed": "noonewouldeverusethis7"
},
"BlackPlanet": {
"errorMsg": "My Hits",
@ -807,20 +809,25 @@
"errorType": "status_code",
"rank": 3373,
"url": "https://vsco.co/{}",
"urlMain": "https://vsco.co/"
"urlMain": "https://vsco.co/",
"username_claimed": "blue",
"username_unclaimed": "noonewouldeverusethis7"
},
"Venmo": {
"errorType": "status_code",
"rank": 4868,
"url": "https://venmo.com/{}",
"urlMain": "https://venmo.com/"
"urlMain": "https://venmo.com/",
"username_claimed": "jenny",
"username_unclaimed": "noonewouldeverusethis7"
},
"Vimeo": {
"errorMsg": "404 Not Found",
"errorType": "message",
"errorType": "status_code",
"rank": 139,
"url": "https://vimeo.com/{}",
"urlMain": "https://vimeo.com/"
"urlMain": "https://vimeo.com/",
"username_claimed": "blue",
"username_unclaimed": "noonewouldeverusethis7"
},
"VirusTotal": {
"errorMsg": "not found",
@ -883,8 +890,10 @@
"YouPic": {
"errorType": "status_code",
"rank": 41827,
"url": "https://youpic.com/photographer/{}",
"urlMain": "https://youpic.com/"
"url": "https://youpic.com/photographer/{}/",
"urlMain": "https://youpic.com/",
"username_claimed": "blue",
"username_unclaimed": "noonewouldeverusethis7"
},
"YouTube": {
"errorMsg": "Not Found",

@ -128,6 +128,10 @@ class SherlockBaseTest(unittest.TestCase):
existence state.
"""
#Dictionary of sites that should be tested for having a username.
#This will allow us to test sites with a common username in parallel.
sites_by_username = {}
for site, site_data in self.site_data_all.items():
if (
(site_data["errorType"] != detect_type) or
@ -143,12 +147,22 @@ class SherlockBaseTest(unittest.TestCase):
# Figure out which type of user
if exist_check:
username_list = [site_data.get("username_claimed")]
username = site_data.get("username_claimed")
else:
username = site_data.get("username_unclaimed")
# Add this site to the list of sites corresponding to this
# username.
if username in sites_by_username:
sites_by_username[username].append(site)
else:
username_list = [site_data.get("username_unclaimed")]
self.username_check(username_list,
[site],
exist_check=exist_check
)
sites_by_username[username] = [site]
# Check on the username availability against all of the sites.
for username, site_list in sites_by_username.items():
self.username_check([username],
site_list,
exist_check=exist_check
)
return

Loading…
Cancel
Save