diff --git a/README.md b/README.md index 84333c01..6000f663 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,7 @@ Default options you can find in [lib/config/defaults.js](https://github.com/s0ph - `result`: if error - `null`, if success - array of [Resource](https://github.com/s0ph1e/node-website-scraper/blob/master/lib/resource.js) objects containing: - `url`: url of loaded page - `filename`: filename where page was saved (relative to `directory`) - - `assets`: array of children Resources + - `children`: array of children Resources ### Filename Generators The filename generator determines where the scraped files are saved. diff --git a/lib/resource.js b/lib/resource.js index ea76646c..19522b01 100644 --- a/lib/resource.js +++ b/lib/resource.js @@ -4,10 +4,12 @@ function Resource (url, filename) { this.url = url; this.filename = filename; - this.assets = []; this.type = null; this.depth = 0; + this.parent = null; + this.children = []; + this.saved = false; } @@ -18,15 +20,15 @@ Resource.prototype.createChild = function createChild (url, filename) { child.parent = this; child.depth = ++currentDepth; - this.assets.push(child); + this.children.push(child); return child; }; Resource.prototype.updateChild = function updateChild (oldChild, newChild) { - var index = this.assets.indexOf(oldChild); + var index = this.children.indexOf(oldChild); if (index >= 0) { - this.assets[index] = newChild; + this.children[index] = newChild; } }; diff --git a/test/functional/base/base.test.js b/test/functional/base/base.test.js index 50ae03a2..7ff76ee1 100644 --- a/test/functional/base/base.test.js +++ b/test/functional/base/base.test.js @@ -70,19 +70,19 @@ describe('Functional base', function() { result.should.be.instanceOf(Array).and.have.length(3); result[0].should.have.properties({ url: 'http://example.com/', filename: 'index.html' }); - result[0].should.have.properties('assets'); - result[0].assets.should.be.instanceOf(Array).and.have.length(4); - result[0].assets[0].should.be.instanceOf(Resource); + result[0].should.have.properties('children'); + result[0].children.should.be.instanceOf(Array).and.have.length(4); + result[0].children[0].should.be.instanceOf(Resource); result[1].should.have.properties({ url: 'http://example.com/about', filename: 'about.html' }); - result[1].should.have.properties('assets'); - result[1].assets.should.be.instanceOf(Array).and.have.length(4); - result[1].assets[0].should.be.instanceOf(Resource); + result[1].should.have.properties('children'); + result[1].children.should.be.instanceOf(Array).and.have.length(4); + result[1].children[0].should.be.instanceOf(Resource); result[2].should.have.properties({ url: 'http://blog.example.com/', filename: 'blog.html' }); // url after redirect - result[2].should.have.properties('assets'); - result[2].assets.should.be.instanceOf(Array).and.have.length(1); - result[2].assets[0].should.be.instanceOf(Resource); + result[2].should.have.properties('children'); + result[2].children.should.be.instanceOf(Array).and.have.length(1); + result[2].children[0].should.be.instanceOf(Resource); // should create directory and subdirectories fs.existsSync(testDirname).should.be.eql(true); diff --git a/test/unit/scraper-test.js b/test/unit/scraper-test.js index a4de2727..31b968e5 100644 --- a/test/unit/scraper-test.js +++ b/test/unit/scraper-test.js @@ -139,7 +139,7 @@ describe('Scraper', function () { }).catch(done); }); - it('should return array of objects with url, filename and assets', function(done) { + it('should return array of objects with url, filename and children', function(done) { nock('http://first-url.com').get('/').reply(200, 'OK'); nock('http://second-url.com').get('/').reply(500); @@ -154,8 +154,8 @@ describe('Scraper', function () { s.load().then(function(res) { res.should.be.instanceOf(Array); res.should.have.length(2); - res[0].should.be.instanceOf(Resource).and.have.properties(['url', 'filename', 'assets']); - res[1].should.be.instanceOf(Resource).and.have.properties(['url', 'filename', 'assets']); + res[0].should.be.instanceOf(Resource).and.have.properties(['url', 'filename', 'children']); + res[1].should.be.instanceOf(Resource).and.have.properties(['url', 'filename', 'children']); done(); }).catch(done); });