html-snapshots 0.18.3 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/.eslintrc.json +4 -5
  2. package/README.md +73 -68
  3. package/examples/custom/myFilter.js +2 -2
  4. package/examples/custom/package-lock.json +939 -4
  5. package/examples/custom/package.json +1 -1
  6. package/examples/custom/snapshot.js +8 -10
  7. package/examples/debug-phantomjs/package-lock.json +6 -6
  8. package/examples/debug-phantomjs/package.json +1 -1
  9. package/examples/debug-phantomjs/snapshot.js +12 -14
  10. package/examples/html5rocks/package-lock.json +1306 -5
  11. package/examples/html5rocks/package.json +1 -1
  12. package/examples/html5rocks/snapshot.js +15 -18
  13. package/examples/process-limit/package-lock.json +1306 -5
  14. package/examples/process-limit/package.json +1 -1
  15. package/examples/process-limit/snapshot.js +8 -10
  16. package/examples/simple-promise/package-lock.json +1306 -5
  17. package/examples/simple-promise/package.json +1 -1
  18. package/examples/simple-promise/snapshot.js +6 -8
  19. package/examples/sitemap-index/package-lock.json +1306 -5
  20. package/examples/sitemap-index/package.json +1 -1
  21. package/examples/sitemap-index/snapshot.js +6 -6
  22. package/examples/utils/index.js +2 -4
  23. package/examples/verbose/package-lock.json +1307 -5
  24. package/examples/verbose/package.json +1 -1
  25. package/examples/verbose/snapshot.js +11 -14
  26. package/lib/async/index.js +0 -1
  27. package/lib/common/index.js +1 -1
  28. package/lib/common/sitemap/index.js +16 -0
  29. package/lib/common/sitemap/sitemap-collection.js +94 -0
  30. package/lib/common/sitemap/sitemap-index.js +68 -0
  31. package/lib/common/{sitemap.js → sitemap/sitemap.js} +68 -57
  32. package/lib/html-snapshots.js +0 -1
  33. package/lib/input-generators/array.js +0 -1
  34. package/lib/input-generators/robots.js +98 -58
  35. package/lib/input-generators/sitemap-index.js +3 -124
  36. package/lib/input-generators/sitemap.js +3 -7
  37. package/lib/input-generators/textfile.js +2 -6
  38. package/package.json +5 -4
  39. package/test/helpers/options.js +4 -2
  40. package/test/mocha/html-snapshots/process-limit.js +46 -48
  41. package/test/mocha/html-snapshots/robots.js +156 -138
  42. package/test/mocha/html-snapshots/server/test_robots.txt +13 -0
  43. package/test/mocha/html-snapshots/server/test_robots_sitemap.txt +15 -0
  44. package/test/mocha/html-snapshots/server/test_robots_sitemap.xml +22 -0
  45. package/test/mocha/html-snapshots/sitemap-index.js +58 -57
  46. package/test/mocha/html-snapshots/snapshot-scripts.js +55 -54
  47. package/test/mocha/html-snapshots/test.js +16 -16
  48. package/test/mocha/html-snapshots/test_robots.txt +0 -2
  49. package/test/mocha/html-snapshots/utils.js +0 -1
  50. package/test/mocha/input-generators/server/test_robots.txt +0 -2
  51. package/test/mocha/input-generators/server/test_robots_bad.txt +0 -2
  52. package/test/mocha/input-generators/server/test_robots_sitemap.txt +17 -0
  53. package/test/mocha/input-generators/server/test_robots_sitemap_bad.txt +17 -0
  54. package/test/mocha/input-generators/server/test_robots_sitemap_multi.txt +18 -0
  55. package/test/mocha/input-generators/server/test_sitemap_index_empty.xml +3 -0
  56. package/test/mocha/input-generators/server/test_sitemap_index_malformed.xml +2 -0
  57. package/test/mocha/input-generators/sitemap-index.js +65 -9
  58. package/test/mocha/input-generators/test.js +276 -280
  59. package/test/mocha/input-generators/test_robots.txt +0 -2
  60. package/test/mocha/input-generators/test_robots_bad.txt +0 -2
  61. package/test/mocha/input-generators/test_robots_sitemap.txt +17 -0
  62. package/test/mocha/input-generators/test_robots_sitemap_bad.txt +17 -0
  63. package/test/mocha/input-generators/test_robots_sitemap_multi.txt +18 -0
  64. package/lib/common/node.js +0 -26
  65. package/test/mocha/common/node.js +0 -100
@@ -7,6 +7,6 @@
7
7
  "start": "node ./snapshot.js"
8
8
  },
9
9
  "dependencies": {
10
- "html-snapshots": "^0.18.2"
10
+ "html-snapshots": "^0.19.0"
11
11
  }
12
12
  }
@@ -5,26 +5,24 @@
5
5
  * Use sitemap.xml to snapshot an entire site.
6
6
  * Use a customFilter to update the output before the snapshots are written.
7
7
  */
8
- var path = require("path");
9
- var util = require("util");
10
- var htmlSnapshots = require("html-snapshots");
8
+ const path = require("path");
9
+ const util = require("util");
10
+ const htmlSnapshots = require("html-snapshots");
11
11
 
12
12
  htmlSnapshots.run({
13
13
  input: "sitemap",
14
- source: "http://enigmatic-refuge-9006.herokuapp.com/sitemap.xml",
14
+ source: "https://sitemaps.org/sitemap.xml",
15
15
  outputDir: path.join(__dirname, "./tmp"),
16
16
  outputDirClean: true,
17
- selector: ".page-content",
17
+ selector: "#mainContent",
18
18
  snapshotScript: {
19
19
  script: "customFilter",
20
20
  module: path.join(__dirname, "myFilter.js")
21
21
  },
22
- timeout: 15000
22
+ timeout: 10000
23
23
  })
24
- .then(function (completed) {
24
+ .then(completed => {
25
25
  console.log("completed snapshots:");
26
26
  console.log(util.inspect(completed));
27
27
  })
28
- .catch(function (err) {
29
- console.error(err);
30
- });
28
+ .catch(console.error);
@@ -297,9 +297,9 @@
297
297
  }
298
298
  },
299
299
  "html-snapshots": {
300
- "version": "0.18.2",
301
- "resolved": "https://registry.npmjs.org/html-snapshots/-/html-snapshots-0.18.2.tgz",
302
- "integrity": "sha512-92ddr6KWKWZZAcY6sV1dg+LIXYWN4UVFBe4Yumx+hs3U66ecUY3fMtQM72CJhBTA5xrQjzLO6EDhwn8o59zwEg==",
300
+ "version": "0.18.3",
301
+ "resolved": "https://registry.npmjs.org/html-snapshots/-/html-snapshots-0.18.3.tgz",
302
+ "integrity": "sha512-mNEyRLstWDTtP0VZxSu/+86snmWtgeH5ebIeiJXfiaMCjmj8ca+ASE0SSGy0aM63oVhHpXov4nipqCHCjctGQQ==",
303
303
  "requires": {
304
304
  "async": "3.2.4",
305
305
  "async-lock": "1.3.2",
@@ -571,9 +571,9 @@
571
571
  "integrity": "sha512-UdA8mJ4weIkUBO224tIarHzuHs4HuYiJvsuGT7j/SPQiUJVjYvNDBIPa0hAorduOfjGohB/qHWRa/lrrWX/mXw=="
572
572
  },
573
573
  "psl": {
574
- "version": "1.8.0",
575
- "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
576
- "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ=="
574
+ "version": "1.9.0",
575
+ "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz",
576
+ "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag=="
577
577
  },
578
578
  "punycode": {
579
579
  "version": "2.1.1",
@@ -7,6 +7,6 @@
7
7
  "start": "node ./snapshot.js"
8
8
  },
9
9
  "dependencies": {
10
- "html-snapshots": "^0.18.2"
10
+ "html-snapshots": "^0.19.0"
11
11
  }
12
12
  }
@@ -8,20 +8,18 @@
8
8
  * Demonstrates phantomjsOptions usage on a per-page basis.
9
9
  *
10
10
  */
11
- var path = require("path");
12
- var util = require("util");
13
- var assert = require("assert");
14
- var htmlSnapshots = require("html-snapshots");
11
+ const path = require("path");
12
+ const util = require("util");
13
+ const assert = require("assert");
14
+ const htmlSnapshots = require("html-snapshots");
15
15
 
16
16
  // Assert if NOT an error
17
17
  function mustBeError(err) {
18
18
  assert.throws(
19
- function() {
19
+ () => {
20
20
  assert.ifError(err);
21
21
  },
22
- function(err) {
23
- return !!err;
24
- }
22
+ err => !!err
25
23
  );
26
24
  }
27
25
 
@@ -29,21 +27,21 @@ function mustBeError(err) {
29
27
  // but this also demonstrates the use of phantomjsOptions in the per-page case.
30
28
  htmlSnapshots.run({
31
29
  input: "sitemap",
32
- source: "http://enigmatic-refuge-9006.herokuapp.com/sitemap.xml",
30
+ source: "https://www.sitemaps.org/sitemap.xml",
33
31
  outputDir: path.join(__dirname, "./tmp"),
34
32
  outputDirClean: true,
35
- selector: ".page-content",
36
- timeout: 15000,
33
+ selector: "#mainContent",
34
+ timeout: 10000,
37
35
  phantomjsOptions: {
38
36
  // The key must exactly match the loc as defined in the sitemap.xml
39
- "http://enigmatic-refuge-9006.herokuapp.com:80/hello-world": "--remote-debugger-port=9000"
37
+ "https://www.sitemaps.org/protocol.html": "--remote-debugger-port=9000"
40
38
  }
41
- }, function (err, completed) {
39
+ }, (err, completed) => {
42
40
 
43
41
  console.log("completed snapshots:");
44
42
  console.log(util.inspect(completed));
45
43
 
46
- // We expect the hello-world page will timeout because we've held it in the debugger
44
+ // We expect the protocol.html page will timeout because we've held it in the debugger
47
45
  // It will succeed if you use --remote-debugger-autorun=true
48
46
  // However, the PhantomJS process instances won't exit so that you can (re)debug
49
47
  mustBeError(err);