Created
January 8, 2020 15:51
-
-
Save stoneboyindc/7d141df2fd31faf602c043d0a85c728c to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
> express-boilerplate@1.0.0 migrate:test C:\code\thinkful\tc\ksdumont\blogful-api | |
> env NODE_ENV=test npm run migrate | |
'env' is not recognized as an internal or external command, | |
operable program or batch file. | |
npm ERR! code ELIFECYCLE | |
npm ERR! errno 1 | |
npm ERR! express-boilerplate@1.0.0 migrate:test: `env NODE_ENV=test npm run migrate` | |
npm ERR! Exit status 1 | |
npm ERR! | |
npm ERR! Failed at the express-boilerplate@1.0.0 migrate:test script. | |
npm ERR! This is probably not a problem with npm. There is likely additional logging output above. | |
npm ERR! A complete log of this run can be found in: | |
npm ERR! C:\Users\changc16\AppData\Roaming\npm-cache\_logs\2020-01-08T15_48_39_351Z-debug.log | |
C:\code\thinkful\tc\ksdumont\blogful-api>npm run migrate:test | |
> express-boilerplate@1.0.0 migrate:test C:\code\thinkful\tc\ksdumont\blogful-api | |
> set NODE_ENV=test && npm run migrate | |
> express-boilerplate@1.0.0 migrate C:\code\thinkful\tc\ksdumont\blogful-api | |
> postgrator --config postgrator-config.js | |
[10:49:07 AM] version of database is: 2 | |
[10:49:07 AM] migrating up to 2 | |
[10:49:07 AM] verifying checksum of migration 001.do.create_blogful_articles.sql | |
[10:49:07 AM] verifying checksum of migration 002.do.alter_article_style.sql | |
C:\code\thinkful\tc\ksdumont\blogful-api>npm run migrate:test | |
> express-boilerplate@1.0.0 migrate:test C:\code\thinkful\tc\ksdumont\blogful-api | |
> set NODE_ENV=test && npm run migrate | |
> express-boilerplate@1.0.0 migrate C:\code\thinkful\tc\ksdumont\blogful-api | |
> postgrator --config postgrator-config.js | |
[10:50:10 AM] table schemaversion does not exist - creating it. | |
[10:50:10 AM] version of database is: 0 | |
[10:50:10 AM] migrating up to 2 | |
[10:50:10 AM] running 001.do.create_blogful_articles.sql | |
[10:50:11 AM] running 002.do.alter_article_style.sql | |
C:\code\thinkful\tc\ksdumont\blogful-api>npm run test | |
> express-boilerplate@1.0.0 test C:\code\thinkful\tc\ksdumont\blogful-api | |
> mocha --require test/setup.js | |
App | |
√ GET / responds with 200 containing "Hello, world!" (41ms) | |
Articles Endpoints | |
GET /articles | |
Given no articles | |
1) responds with 200 and an empty list | |
Given there are articles in the database | |
2) GET /articles responds with 200 and all of the articles | |
Given an XSS attack article | |
3) "before each" hook: insert malicious article for "removes XSS attack content" | |
GET /articles/:article_id | |
Given no articles | |
√ responds with 404 | |
Given there are articles in the database | |
4) GET /article/:article_id responds with 200 and the specified article | |
Given an XSS attack article | |
√ removes XSS attack content | |
POST /articles | |
√ creates an article, responding with 201 and the new article | |
√ responds with 400 and an error message when the title is missing | |
√ responds with 400 and an error message when the style is missing | |
√ responds with 400 and an error message when the content is missing | |
√ removes XSS attack content from response | |
DELETE /articles/:article_id | |
Given there are articles in the database | |
5) responds with 204 and removes the article | |
Given no articles | |
√ responds with 404 | |
9 passing (882ms) | |
5 failing | |
1) Articles Endpoints | |
GET /articles | |
Given no articles | |
responds with 200 and an empty list: | |
Error: expected [] response body, got [ { id: 911, | |
style: 'How-to', | |
title: | |
'Naughty naughty very naughty <script>alert("xss");</script>', | |
content: | |
'Bad image <img src="https://url.to.file.which/does-not.exist">. But not <strong>all</strong> bad.', | |
date_published: '2020-01-08T20:50:26.407Z' } ] | |
+ expected - actual | |
-[ | |
- { | |
- "content": "Bad image <img src=\"https://url.to.file.which/does-not.exist\">. But not <strong>all</strong> bad." - "date_published": "2020-01-08T20:50:26.407Z" | |
- "id": 911 | |
- "style": "How-to" | |
- "title": "Naughty naughty very naughty <script>alert(\"xss\");</script>" | |
- } | |
-] | |
+[] | |
at error (node_modules\supertest\lib\test.js:301:13) | |
at Test._assertBody (node_modules\supertest\lib\test.js:205:14) | |
at Test._assertFunction (node_modules\supertest\lib\test.js:283:11) | |
at Test.assert (node_modules\supertest\lib\test.js:173:18) | |
at Server.localAssert (node_modules\supertest\lib\test.js:131:12) | |
at emitCloseNT (net.js:1618:8) | |
at process._tickCallback (internal/process/next_tick.js:63:19) | |
2) Articles Endpoints | |
GET /articles | |
Given there are articles in the database | |
GET /articles responds with 200 and all of the articles: | |
Error: expected [ { id: 1, | |
date_published: '2029-01-22T16:28:32.615Z', | |
title: 'First test post!', | |
style: 'How-to', | |
content: | |
'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Natus consequuntur deserunt commodi, nobis qui inventore corrupti iusto aliquid debitis unde non.Adipisci, pariatur.Molestiae, libero esse hic adipisci autem neque ?' }, | |
{ id: 2, | |
date_published: '2100-05-22T16:28:32.615Z', | |
title: 'Second test post!', | |
style: 'News', | |
content: | |
'Lorem ipsum dolor sit amet consectetur adipisicing elit. Cum, exercitationem cupiditate dignissimos est perspiciatis, nobis commodi alias saepe atque facilis labore sequi deleniti. Sint, adipisci facere! Velit temporibus debitis rerum.' }, | |
{ id: 3, | |
date_published: '1919-12-22T16:28:32.615Z', | |
title: 'Third test post!', | |
style: 'Listicle', | |
content: | |
'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Possimus, voluptate? Necessitatibus, reiciendis? Cupiditate totam laborum esse animi ratione ipsa dignissimos laboriosam eos similique cumque. Est nostrum esse porro id quaerat.' }, | |
{ id: 4, | |
date_published: '1919-12-22T16:28:32.615Z', | |
title: 'Fourth test post!', | |
style: 'Story', | |
content: | |
'Lorem ipsum dolor sit amet consectetur adipisicing elit. Earum molestiae accusamus veniam consectetur tempora, corporis obcaecati ad nisi asperiores tenetur, autem magnam. Iste, architecto obcaecati tenetur quidem voluptatum ipsa quam?' } ] response body, got [ { id: 911, | |
style: 'How-to', | |
title: | |
'Naughty naughty very naughty <script>alert("xss");</script>', | |
content: | |
'Bad image <img src="https://url.to.file.which/does-not.exist">. But not <strong>all</strong> bad.', | |
date_published: '2020-01-08T20:50:26.407Z' }, | |
{ id: 1, | |
style: 'How-to', | |
title: 'First test post!', | |
content: | |
'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Natus consequuntur deserunt commodi, nobis qui inventore corrupti iusto aliquid debitis unde non.Adipisci, pariatur.Molestiae, libero esse hic adipisci autem neque ?', | |
date_published: '2029-01-22T21:28:32.615Z' }, | |
{ id: 2, | |
style: 'News', | |
title: 'Second test post!', | |
content: | |
'Lorem ipsum dolor sit amet consectetur adipisicing elit. Cum, exercitationem cupiditate dignissimos est perspiciatis, nobis commodi alias saepe atque facilis labore sequi deleniti. Sint, adipisci facere! Velit temporibus debitis rerum.', | |
date_published: '2100-05-22T20:28:32.615Z' }, | |
{ id: 3, | |
style: 'Listicle', | |
title: 'Third test post!', | |
content: | |
'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Possimus, voluptate? Necessitatibus, reiciendis? Cupiditate totam laborum esse animi ratione ipsa dignissimos laboriosam eos similique cumque. Est nostrum esse porro id quaerat.', | |
date_published: '1919-12-22T21:28:32.615Z' }, | |
{ id: 4, | |
style: 'Story', | |
title: 'Fourth test post!', | |
content: | |
'Lorem ipsum dolor sit amet consectetur adipisicing elit. Earum molestiae accusamus veniam consectetur tempora, corporis obcaecati ad nisi asperiores tenetur, autem magnam. Iste, architecto obcaecati tenetur quidem voluptatum ipsa quam?', | |
date_published: '1919-12-22T21:28:32.615Z' } ] | |
+ expected - actual | |
[ | |
{ | |
- "content": "Bad image <img src=\"https://url.to.file.which/does-not.exist\">. But not <strong>all</strong> bad." - "date_published": "2020-01-08T20:50:26.407Z" | |
- "id": 911 | |
- "style": "How-to" | |
- "title": "Naughty naughty very naughty <script>alert(\"xss\");</script>" | |
- } | |
- { | |
"content": "Lorem ipsum dolor sit amet, consectetur adipisicing elit. Natus consequuntur deserunt commodi, nobis qui inventore corrupti iusto aliquid debitis unde non.Adipisci, pariatur.Molestiae, libero esse hic adipisci autem neque ?" | |
- "date_published": "2029-01-22T21:28:32.615Z" | |
+ "date_published": "2029-01-22T16:28:32.615Z" | |
"id": 1 | |
"style": "How-to" | |
"title": "First test post!" | |
} | |
{ | |
"content": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Cum, exercitationem cupiditate dignissimos | |
est perspiciatis, nobis commodi alias saepe atque facilis labore sequi deleniti. Sint, adipisci facere! Velit temporibus debitis rerum." | |
- "date_published": "2100-05-22T20:28:32.615Z" | |
+ "date_published": "2100-05-22T16:28:32.615Z" | |
"id": 2 | |
"style": "News" | |
"title": "Second test post!" | |
} | |
{ | |
"content": "Lorem ipsum dolor sit amet, consectetur adipisicing elit. Possimus, voluptate? Necessitatibus, reiciendis? Cupiditate totam laborum esse animi ratione ipsa dignissimos laboriosam eos similique cumque. Est nostrum esse porro id quaerat." | |
- "date_published": "1919-12-22T21:28:32.615Z" | |
+ "date_published": "1919-12-22T16:28:32.615Z" | |
"id": 3 | |
"style": "Listicle" | |
"title": "Third test post!" | |
} | |
{ | |
"content": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Earum molestiae accusamus veniam consectetur tempora, corporis obcaecati ad nisi asperiores tenetur, autem magnam. Iste, architecto obcaecati tenetur quidem voluptatum ipsa quam?" | |
- "date_published": "1919-12-22T21:28:32.615Z" | |
+ "date_published": "1919-12-22T16:28:32.615Z" | |
"id": 4 | |
"style": "Story" | |
"title": "Fourth test post!" | |
} | |
at error (node_modules\supertest\lib\test.js:301:13) | |
at Test._assertBody (node_modules\supertest\lib\test.js:205:14) | |
at Test._assertFunction (node_modules\supertest\lib\test.js:283:11) | |
at Test.assert (node_modules\supertest\lib\test.js:173:18) | |
at Server.localAssert (node_modules\supertest\lib\test.js:131:12) | |
at emitCloseNT (net.js:1618:8) | |
at process._tickCallback (internal/process/next_tick.js:63:19) | |
3) Articles Endpoints | |
GET /articles | |
Given an XSS attack article | |
"before each" hook: insert malicious article for "removes XSS attack content": | |
insert into "blogful_articles" ("content", "date_published", "id", "style", "title") values ($1, $2, $3, $4, $5) - duplicate key value violates unique constraint "blogful_articles_pkey" | |
error: duplicate key value violates unique constraint "blogful_articles_pkey" | |
at Connection.parseE (node_modules\pg\lib\connection.js:604:13) | |
at Connection.parseMessage (node_modules\pg\lib\connection.js:403:19) | |
at Socket.<anonymous> (node_modules\pg\lib\connection.js:123:22) | |
at addChunk (_stream_readable.js:288:12) | |
at readableAddChunk (_stream_readable.js:269:11) | |
at Socket.Readable.push (_stream_readable.js:224:10) | |
at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17) | |
4) Articles Endpoints | |
GET /articles/:article_id | |
Given there are articles in the database | |
GET /article/:article_id responds with 200 and the specified article: | |
Error: expected { id: 2, | |
date_published: '2100-05-22T16:28:32.615Z', | |
title: 'Second test post!', | |
style: 'News', | |
content: | |
'Lorem ipsum dolor sit amet consectetur adipisicing elit. Cum, exercitationem cupiditate dignissimos est perspiciatis, nobis commodi alias saepe atque facilis labore sequi deleniti. Sint, adipisci facere! Velit temporibus debitis rerum.' } response body, got { id: 2, | |
style: 'News', | |
title: 'Second test post!', | |
content: | |
'Lorem ipsum dolor sit amet consectetur adipisicing elit. Cum, exercitationem cupiditate dignissimos est perspiciatis, nobis commodi alias saepe atque facilis labore sequi deleniti. Sint, adipisci facere! Velit temporibus debitis rerum.', | |
date_published: '2100-05-22T20:28:32.615Z' } | |
+ expected - actual | |
{ | |
"content": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Cum, exercitationem cupiditate dignissimos est perspiciatis, nobis commodi alias saepe atque facilis labore sequi deleniti. Sint, adipisci facere! Velit temporibus debitis rerum." | |
- "date_published": "2100-05-22T20:28:32.615Z" | |
+ "date_published": "2100-05-22T16:28:32.615Z" | |
"id": 2 | |
"style": "News" | |
"title": "Second test post!" | |
} | |
at error (node_modules\supertest\lib\test.js:301:13) | |
at Test._assertBody (node_modules\supertest\lib\test.js:205:14) | |
at Test._assertFunction (node_modules\supertest\lib\test.js:283:11) | |
at Test.assert (node_modules\supertest\lib\test.js:173:18) | |
at Server.localAssert (node_modules\supertest\lib\test.js:131:12) | |
at emitCloseNT (net.js:1618:8) | |
at process._tickCallback (internal/process/next_tick.js:63:19) | |
5) Articles Endpoints | |
DELETE /articles/:article_id | |
Given there are articles in the database | |
responds with 204 and removes the article: | |
Error: expected [ { id: 1, | |
date_published: '2029-01-22T16:28:32.615Z', | |
title: 'First test post!', | |
style: 'How-to', | |
content: | |
'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Natus consequuntur deserunt commodi, nobis qui inventore corrupti iusto aliquid debitis unde non.Adipisci, pariatur.Molestiae, libero esse hic adipisci autem neque ?' }, | |
{ id: 3, | |
date_published: '1919-12-22T16:28:32.615Z', | |
title: 'Third test post!', | |
style: 'Listicle', | |
content: | |
'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Possimus, voluptate? Necessitatibus, reiciendis? Cupiditate totam laborum esse animi ratione ipsa dignissimos laboriosam eos similique cumque. Est nostrum esse porro id quaerat.' }, | |
{ id: 4, | |
date_published: '1919-12-22T16:28:32.615Z', | |
title: 'Fourth test post!', | |
style: 'Story', | |
content: | |
'Lorem ipsum dolor sit amet consectetur adipisicing elit. Earum molestiae accusamus veniam consectetur tempora, corporis obcaecati ad nisi asperiores tenetur, autem magnam. Iste, architecto obcaecati tenetur quidem voluptatum ipsa quam?' } ] response body, got [ { id: 911, | |
style: 'How-to', | |
title: | |
'Naughty naughty very naughty <script>alert("xss");</script>', | |
content: | |
'Bad image <img src="https://url.to.file.which/does-not.exist">. But not <strong>all</strong> bad.', | |
date_published: '2020-01-08T20:50:26.407Z' }, | |
{ id: 1, | |
style: 'How-to', | |
title: 'First test post!', | |
content: | |
'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Natus consequuntur deserunt commodi, nobis qui inventore corrupti iusto aliquid debitis unde non.Adipisci, pariatur.Molestiae, libero esse hic adipisci autem neque ?', | |
date_published: '2029-01-22T21:28:32.615Z' }, | |
{ id: 3, | |
style: 'Listicle', | |
title: 'Third test post!', | |
content: | |
'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Possimus, voluptate? Necessitatibus, reiciendis? Cupiditate totam laborum esse animi ratione ipsa dignissimos laboriosam eos similique cumque. Est nostrum esse porro id quaerat.', | |
date_published: '1919-12-22T21:28:32.615Z' }, | |
{ id: 4, | |
style: 'Story', | |
title: 'Fourth test post!', | |
content: | |
'Lorem ipsum dolor sit amet consectetur adipisicing elit. Earum molestiae accusamus veniam consectetur tempora, corporis obcaecati ad nisi asperiores tenetur, autem magnam. Iste, architecto obcaecati tenetur quidem voluptatum ipsa quam?', | |
date_published: '1919-12-22T21:28:32.615Z' } ] | |
+ expected - actual | |
[ | |
{ | |
- "content": "Bad image <img src=\"https://url.to.file.which/does-not.exist\">. But not <strong>all</strong> bad." - "date_published": "2020-01-08T20:50:26.407Z" | |
- "id": 911 | |
- "style": "How-to" | |
- "title": "Naughty naughty very naughty <script>alert(\"xss\");</script>" | |
- } | |
- { | |
"content": "Lorem ipsum dolor sit amet, consectetur adipisicing elit. Natus consequuntur deserunt commodi, nobis qui inventore corrupti iusto aliquid debitis unde non.Adipisci, pariatur.Molestiae, libero esse hic adipisci autem neque ?" | |
- "date_published": "2029-01-22T21:28:32.615Z" | |
+ "date_published": "2029-01-22T16:28:32.615Z" | |
"id": 1 | |
"style": "How-to" | |
"title": "First test post!" | |
} | |
{ | |
"content": "Lorem ipsum dolor sit amet, consectetur adipisicing elit. Possimus, voluptate? Necessitatibus, reiciendis? Cupiditate totam laborum esse animi ratione ipsa dignissimos laboriosam eos similique cumque. Est nostrum esse porro id quaerat." | |
- "date_published": "1919-12-22T21:28:32.615Z" | |
+ "date_published": "1919-12-22T16:28:32.615Z" | |
"id": 3 | |
"style": "Listicle" | |
"title": "Third test post!" | |
} | |
{ | |
"content": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Earum molestiae accusamus veniam consectetur tempora, corporis obcaecati ad nisi asperiores tenetur, autem magnam. Iste, architecto obcaecati tenetur quidem voluptatum ipsa quam?" | |
- "date_published": "1919-12-22T21:28:32.615Z" | |
+ "date_published": "1919-12-22T16:28:32.615Z" | |
"id": 4 | |
"style": "Story" | |
"title": "Fourth test post!" | |
} | |
at error (node_modules\supertest\lib\test.js:301:13) | |
at Test._assertBody (node_modules\supertest\lib\test.js:205:14) | |
at Test._assertFunction (node_modules\supertest\lib\test.js:283:11) | |
at Test.assert (node_modules\supertest\lib\test.js:173:18) | |
at Server.localAssert (node_modules\supertest\lib\test.js:131:12) | |
at emitCloseNT (net.js:1618:8) | |
at process._tickCallback (internal/process/next_tick.js:63:19) | |
npm ERR! code ELIFECYCLE | |
npm ERR! errno 5 | |
npm ERR! express-boilerplate@1.0.0 test: `mocha --require test/setup.js` | |
npm ERR! Exit status 5 | |
npm ERR! | |
npm ERR! Failed at the express-boilerplate@1.0.0 test script. | |
npm ERR! This is probably not a problem with npm. There is likely additional logging output above. | |
npm ERR! A complete log of this run can be found in: | |
npm ERR! C:\Users\changc16\AppData\Roaming\npm-cache\_logs\2020-01-08T15_50_27_380Z-debug.log |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment