33const should = require ( 'should' ) ;
44const proxyquire = require ( 'proxyquire' ) . noCallThru ( ) ;
55const sinon = require ( 'sinon' ) ;
6- const path = require ( 'path' ) ;
76const Scraper = require ( '../../lib/scraper' ) ;
87const Resource = require ( '../../lib/resource' ) ;
98
109const testDirname = __dirname + '/.scraper-init-test' ;
1110const urls = [ 'http://example.com' ] ;
1211
12+ function createConfigMock ( params ) {
13+ return Object . assign ( { requestConcurrency : Infinity } , params ) ;
14+ }
15+
1316describe ( 'Scraper initialization' , function ( ) {
1417describe ( 'defaultFilename' , function ( ) {
15- var Scraper ;
18+ let Scraper ;
1619
1720before ( function ( ) {
18- var defaultsMock = { defaultFilename : 'dummyFilename.txt' } ;
21+ const defaultsMock = createConfigMock ( { defaultFilename : 'dummyFilename.txt' } ) ;
1922Scraper = proxyquire ( '../../lib/scraper' , {
2023'./config/defaults' : defaultsMock
2124} ) ;
2225} ) ;
2326
2427it ( 'should use default defaultFilename if no defaultFilename were passed' , function ( ) {
25- var s = new Scraper ( {
28+ const s = new Scraper ( {
2629urls : urls ,
2730directory : testDirname
2831} ) ;
@@ -31,7 +34,7 @@ describe('Scraper initialization', function () {
3134} ) ;
3235
3336it ( 'should use defaultFilename sources if defaultFilename were passed' , function ( ) {
34- var s = new Scraper ( {
37+ const s = new Scraper ( {
3538urls : urls ,
3639directory : testDirname ,
3740defaultFilename : 'myNewFileName.txt'
@@ -42,17 +45,17 @@ describe('Scraper initialization', function () {
4245} ) ;
4346
4447describe ( 'sources' , function ( ) {
45- var Scraper ;
48+ let Scraper ;
4649
4750before ( function ( ) {
48- var defaultsMock = { sources : [ '1' , '2' , '3' ] } ;
51+ const defaultsMock = createConfigMock ( { sources : [ '1' , '2' , '3' ] } ) ;
4952Scraper = proxyquire ( '../../lib/scraper' , {
5053'./config/defaults' : defaultsMock
5154} ) ;
5255} ) ;
5356
5457it ( 'should use default sources if no sources were passed' , function ( ) {
55- var s = new Scraper ( {
58+ const s = new Scraper ( {
5659urls : urls ,
5760directory : testDirname
5861} ) ;
@@ -61,7 +64,7 @@ describe('Scraper initialization', function () {
6164} ) ;
6265
6366it ( 'should use passed sources if sources were passed' , function ( ) {
64- var s = new Scraper ( {
67+ const s = new Scraper ( {
6568urls : urls ,
6669directory : testDirname ,
6770sources : [ { selector : 'img' , attr : 'src' } ]
@@ -71,7 +74,7 @@ describe('Scraper initialization', function () {
7174} ) ;
7275
7376it ( 'should extend sources if recursive flag is set' , function ( ) {
74- var s = new Scraper ( {
77+ const s = new Scraper ( {
7578urls : { url : 'http://first-url.com' } ,
7679directory : testDirname ,
7780sources : [
@@ -87,17 +90,17 @@ describe('Scraper initialization', function () {
8790} ) ;
8891
8992describe ( 'subdirectories' , function ( ) {
90- var Scraper ;
93+ let Scraper ;
9194
9295before ( function ( ) {
93- var defaultsMock = { subdirectories : [ { directory : 'dir' , extensions : [ '.txt' ] } ] } ;
96+ const defaultsMock = createConfigMock ( { subdirectories : [ { directory : 'dir' , extensions : [ '.txt' ] } ] } ) ;
9497Scraper = proxyquire ( '../../lib/scraper' , {
9598'./config/defaults' : defaultsMock
9699} ) ;
97100} ) ;
98101
99102it ( 'should use default subdirectories if no subdirectories were passed' , function ( ) {
100- var s = new Scraper ( {
103+ const s = new Scraper ( {
101104urls : urls ,
102105directory : testDirname
103106} ) ;
@@ -107,7 +110,7 @@ describe('Scraper initialization', function () {
107110
108111it ( 'should convert extensions to lower case' , function ( ) {
109112
110- var s = new Scraper ( {
113+ const s = new Scraper ( {
111114urls : urls ,
112115directory : testDirname ,
113116subdirectories : [
@@ -119,7 +122,7 @@ describe('Scraper initialization', function () {
119122} ) ;
120123
121124it ( 'should use passed subdirectories if subdirectories were passed' , function ( ) {
122- var s = new Scraper ( {
125+ const s = new Scraper ( {
123126urls : urls ,
124127directory : testDirname ,
125128subdirectories : [ { directory : 'js' , extensions : [ '.js' ] } ]
@@ -129,7 +132,7 @@ describe('Scraper initialization', function () {
129132} ) ;
130133
131134it ( 'should use null if null was passed' , function ( ) {
132- var s = new Scraper ( {
135+ const s = new Scraper ( {
133136urls : urls ,
134137directory : testDirname ,
135138subdirectories : null
@@ -140,17 +143,17 @@ describe('Scraper initialization', function () {
140143} ) ;
141144
142145describe ( 'request' , function ( ) {
143- var Scraper ;
146+ let Scraper ;
144147
145148before ( function ( ) {
146- var defaultsMock = { request : { a : 1 , b : 2 } } ;
149+ const defaultsMock = createConfigMock ( { request : { a : 1 , b : 2 } } ) ;
147150Scraper = proxyquire ( '../../lib/scraper' , {
148151'./config/defaults' : defaultsMock
149152} ) ;
150153} ) ;
151154
152155it ( 'should use default request if no request were passed' , function ( ) {
153- var s = new Scraper ( {
156+ const s = new Scraper ( {
154157urls : urls ,
155158directory : testDirname
156159} ) ;
@@ -159,7 +162,7 @@ describe('Scraper initialization', function () {
159162} ) ;
160163
161164it ( 'should merge default and passed objects if request were passed' , function ( ) {
162- var s = new Scraper ( {
165+ const s = new Scraper ( {
163166urls : urls ,
164167directory : testDirname ,
165168request : {
@@ -179,7 +182,7 @@ describe('Scraper initialization', function () {
179182} ) ;
180183
181184it ( 'should override existing properties if request were passed' , function ( ) {
182- var s = new Scraper ( {
185+ const s = new Scraper ( {
183186urls : urls ,
184187directory : testDirname ,
185188request : {
@@ -196,18 +199,18 @@ describe('Scraper initialization', function () {
196199
197200describe ( 'resourceHandler' , function ( ) {
198201it ( 'should create resourceHandler with correct params' , function ( ) {
199- var ResourceHandlerStub = sinon . stub ( ) ;
200- var Scraper = proxyquire ( '../../lib/scraper' , {
202+ const ResourceHandlerStub = sinon . stub ( ) ;
203+ const Scraper = proxyquire ( '../../lib/scraper' , {
201204'./resource-handler' : ResourceHandlerStub
202205} ) ;
203206
204- var options = {
207+ const options = {
205208urls : { url : 'http://first-url.com' } ,
206209directory : testDirname ,
207210maxDepth : 100
208211} ;
209212
210- var s = new Scraper ( options ) ;
213+ const s = new Scraper ( options ) ;
211214ResourceHandlerStub . calledOnce . should . be . eql ( true ) ;
212215ResourceHandlerStub . args [ 0 ] [ 0 ] . should . be . eql ( s . options ) ;
213216ResourceHandlerStub . args [ 0 ] [ 1 ] . should . be . eql ( s ) ;
@@ -216,7 +219,7 @@ describe('Scraper initialization', function () {
216219
217220describe ( 'urls' , function ( ) {
218221it ( 'should create an Array of urls if string was passed' , function ( ) {
219- var s = new Scraper ( {
222+ const s = new Scraper ( {
220223urls : 'http://not-array-url.com' ,
221224directory : testDirname
222225} ) ;
@@ -228,7 +231,7 @@ describe('Scraper initialization', function () {
228231
229232describe ( 'resources' , function ( ) {
230233it ( 'should create Resource object for each url' , function ( ) {
231- var s = new Scraper ( {
234+ const s = new Scraper ( {
232235urls : [
233236'http://first-url.com' ,
234237{ url : 'http://second-url.com' } ,
@@ -247,15 +250,15 @@ describe('Scraper initialization', function () {
247250} ) ;
248251
249252it ( 'should use urls filename' , function ( ) {
250- var s = new Scraper ( {
253+ const s = new Scraper ( {
251254urls : { url : 'http://first-url.com' , filename : 'first.html' } ,
252255directory : testDirname
253256} ) ;
254257s . resources [ 0 ] . getFilename ( ) . should . equalFileSystemPath ( 'first.html' ) ;
255258} ) ;
256259
257260it ( 'should use default filename if no url filename was provided' , function ( ) {
258- var s = new Scraper ( {
261+ const s = new Scraper ( {
259262urls : { url : 'http://first-url.com' } ,
260263defaultFilename : 'default.html' ,
261264directory : testDirname
0 commit comments