diff options
Diffstat (limited to 'node_modules/snekfetch/test/node/file.test.js')
| -rw-r--r-- | node_modules/snekfetch/test/node/file.test.js | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/node_modules/snekfetch/test/node/file.test.js b/node_modules/snekfetch/test/node/file.test.js new file mode 100644 index 0000000..8ec0fd0 --- /dev/null +++ b/node_modules/snekfetch/test/node/file.test.js @@ -0,0 +1,47 @@ +/** + * @jest-environment node + */ + +const fs = require('fs'); +const { Snekfetch } = require('../interop'); + +const resolve = (x) => require.resolve(x); + +test('node/file get', () => { + const original = fs.readFileSync(resolve('../../package.json')).toString(); + return Snekfetch.get(`file://${resolve('../../package.json')}`) + .then((res) => { + expect(res.text).toBe(original); + }); +}); + +test('node/file post', () => { + const content = 'wow this is a\n\ntest!!'; + const file = './test_file_post.txt'; + return Snekfetch.post(`file://${file}`) + .send(content) + .then(() => Snekfetch.get(`file://${file}`)) + .then((res) => { + expect(res.text).toBe(content); + }) + .then(() => { + fs.unlinkSync(file); + }); +}); + +test('node/file delete', () => { + const file = './test_file_delete.txt'; + fs.closeSync(fs.openSync(file, 'w')); + expect(fs.existsSync(file)).toBe(true); + return Snekfetch.delete(`file://${file}`) + .then(() => { + expect(fs.existsSync(file)).toBe(false); + }); +}); + + +test('node/file invalid method', () => { + expect(() => { + Snekfetch.options('file:///dev/urandom'); + }).toThrow(/Invalid request method for file:/); +}); |