1 | var assert = require("assert");
|
2 | var proxyLoader = require("simple-proxies/lib/proxyfileloader");
|
3 | var crawler = require("../index.js");
|
4 | var testSite = require("./website/start.js").site;
|
5 | var _ = require("underscore");
|
6 |
|
7 | var proxyList = null;
|
8 |
|
9 | describe('Proxies', function() {
|
10 |
|
11 | beforeEach(function(done) {
|
12 |
|
13 | var config = proxyLoader.config()
|
14 | .setProxyFile("./test/proxies.txt")
|
15 | .setCheckProxies(false)
|
16 | .setRemoveInvalidProxies(false);
|
17 |
|
18 | proxyLoader.loadProxyFile(config, function(error, list) {
|
19 | if (error) {
|
20 | console.log(error);
|
21 | done(error);
|
22 | }
|
23 | else {
|
24 | proxyList = list;
|
25 | done();
|
26 | }
|
27 |
|
28 | });
|
29 |
|
30 |
|
31 | });
|
32 |
|
33 | it('should execute the request with a proxy', function(done) {
|
34 |
|
35 | var end = function(){
|
36 | done();
|
37 | };
|
38 |
|
39 | crawler.init({proxyList : proxyList}, end);
|
40 | crawler.registerPlugin({
|
41 | error : function (error, result, callback) {
|
42 | assert(_.find(result.proxyList.getProxies(), function(p){ return p.getUrl()=== result.proxy; }));
|
43 | callback();
|
44 | }
|
45 | });
|
46 |
|
47 | crawler.queue({url : "http://localhost:9999/internal-links.html"});
|
48 |
|
49 | });
|
50 |
|
51 | });
|