def test_load(self): Registry().set('config', {'main': {'proxies_died_limit': 10}}) proxies = Proxies() with mock.patch("classes.Proxies.file_to_list") as ftl_mock: ftl_mock.return_value = ['a', 'b', 'c', 'd'] proxies.load('/test/proxies/path.txt') assert 4 == proxies.count()
def test_get_proxy_has_proxy(self): with mock.patch.object(Proxies, 'check_live') as check_alive_mock: Registry().set('config', {'main': {'proxies_died_limit': 10}}) proxies = Proxies() test_set = ['a', 'b', 'c'] proxies._proxies = test_set check_alive_mock.return_value = True for _ in range(0, 3): assert proxies.get_proxy() in test_set
def test_check_alive_proxy_dead(self): def get_mock_function(url, timeout=0, allow_redirects=False, proxies=None): raise Exception("test") with mock.patch('requests.get', side_effect=get_mock_function): Registry().set('config', {'main': {'proxies_died_limit': 10}}) Registry().set('url_for_proxy_check', 'http://www.ru') proxies = Proxies() assert not proxies.check_live("aaa")
def test_check_alive_default_url(self): def get_mock_function(url, timeout=0, allow_redirects=False, proxies=None, verify=False): assert url == 'http://google.com' with mock.patch('requests.get', side_effect=get_mock_function): Registry().set('config', {'main': {'proxies_died_limit': 10}}) proxies = Proxies() assert proxies.check_live("aaa")
def __init__(self): config = configparser.ConfigParser() config.read(os.getcwd() + '/' + 'config.ini') try: db = mysql.connector.connect(host=config['db']['host'], user=config['db']['user'], password=config['db']['pass'], database=config['db']['database']) db.autocommit = True except mysql.connector.errors.ProgrammingError as e: print " ERROR: Can`t connect to MySQL server! ({0})".format(str(e)) exit(0) try: mc = MongoClient(host=config['mongo']['host'], port=int(config['mongo']['port'])) mongo_collection = getattr(mc, config['mongo']['collection']) except pymongo.errors.ConnectionFailure as e: print " ERROR: Can`t connect to MongoDB server! ({0})".format( str(e)) exit(0) R = Registry() R.set('config', config) R.set('db', db) R.set('mongo', mongo_collection) R.set('wr_path', os.getcwd()) R.set('data_path', os.getcwd() + '/data/') R.set('http', Http()) R.set('proxies', Proxies()) R.set( 'ndb', Database(config['db']['host'], config['db']['user'], config['db']['pass'], config['db']['database'])) R.set( 'fuzzer_evil_value', file_get_contents(Registry().get('wr_path') + "/bases/fuzzer-evil-value.txt").strip()) R.set('proxy_many_died', False) R.set('positive_limit_stop', False) if " ".join(sys.argv).count('selenium') and int( config['selenium']['virtual_display']): display = Display(visible=0, size=(800, 600)) display.start() R.set('display', display)
def __init__(self): config = configparser.ConfigParser() config.read(os.getcwd() + '/' + 'config.ini') R = Registry() R.set('config', config) R.set('wr_path', os.getcwd()) R.set('data_path', os.getcwd() + '/data/') R.set('http', Http()) R.set('ua', random_ua()) R.set('proxies', Proxies()) R.set('tmp_files', []) R.set( 'fuzzer_evil_value', file_get_contents(Registry().get('wr_path') + "/bases/fuzzer/evil-value.txt").strip()) R.set('proxy_many_died', False) R.set('positive_limit_stop', False) if " ".join(sys.argv).count('selenium') and int( config['selenium']['virtual_display']): display = Display(visible=0, size=(800, 600)) display.start() R.set('display', display)
def test_get_proxy_has_no_proxy(self): with mock.patch.object(Proxies, 'check_live') as check_alive_mock: Registry().set('config', {'main': {'proxies_died_limit': 10}}) proxies = Proxies() for _ in range(0, 3): assert not proxies.get_proxy()
def test_count(self): Registry().set('config', {'main': {'proxies_died_limit': 10}}) proxies = Proxies() proxies._proxies = ['a', 'b', 'c'] assert 3 == proxies.count()
def test_init(self): Registry().set('config', {'main': {'proxies_died_limit': 10}}) proxies = Proxies() assert 10 == proxies.died_limit