From 6064e7d6327d4935f4beffc2b272c99c1393363c Mon Sep 17 00:00:00 2001 From: Stuart Rowlands Date: Mon, 25 Nov 2024 15:35:48 +1000 Subject: [PATCH] Removed old tests --- test/client.test.js | 912 --------------------------- test/commands/deploy.test.js | 160 ----- test/config.test.js | 124 ---- test/fixtures/index.html | 37 -- test/fixtures/nala.jpg | Bin 69301 -> 0 bytes test/fixtures/responsive-images.html | 39 -- test/fixtures/sample/nala.jpg | Bin 69301 -> 0 bytes test/fixtures/some-file-path.html | 31 - test/fixtures/test.css | 3 - test/fixtures/test.js | 0 test/helper/getFiles.test.js | 44 -- test/helper/normalizePath.test.js | 30 - test/helper/quant-url.js | 40 -- 13 files changed, 1420 deletions(-) delete mode 100644 test/client.test.js delete mode 100644 test/commands/deploy.test.js delete mode 100644 test/config.test.js delete mode 100644 test/fixtures/index.html delete mode 100644 test/fixtures/nala.jpg delete mode 100644 test/fixtures/responsive-images.html delete mode 100644 test/fixtures/sample/nala.jpg delete mode 100644 test/fixtures/some-file-path.html delete mode 100644 test/fixtures/test.css delete mode 100644 test/fixtures/test.js delete mode 100644 test/helper/getFiles.test.js delete mode 100644 test/helper/normalizePath.test.js delete mode 100644 test/helper/quant-url.js diff --git a/test/client.test.js b/test/client.test.js deleted file mode 100644 index 24721cb..0000000 --- a/test/client.test.js +++ /dev/null @@ -1,912 +0,0 @@ -/** - * Test the Quant client. - */ - -const client = require('../src/quant-client'); -const config = require('../src/config'); - -// Stubbable. -const axios = require('axios'); -const fs = require('fs'); - -const headers = { - 'User-Agent': 'Quant (+http://api.quantcdn.io)', - 'Quant-Token': 'test', - 'Quant-Customer': 'dev', - 'Quant-Organisation': 'dev', - 'Quant-Project': 'test', - 'Content-Type': 'application/json', -}; - -describe('Quant Client', function () { - let cget; - let requestGet; - let requestPost; - let requestPatch; - - let chai, sinon, assert, expect; - - beforeEach(async () => { - chai = await import('chai'); - sinon = await import('sinon'); - assert = chai.assert; - expect = chai.expect; - - cget = sinon.stub(config, 'get'); - cget.withArgs('endpoint').returns('http://localhost:8081'); - cget.withArgs('clientid').returns('dev'); - cget.withArgs('token').returns('test'); - cget.withArgs('project').returns('test'); - }); - - afterEach(function () { - cget.restore(); - sinon.restore(); - }); - - describe('GET /ping', function () { - afterEach(function () { - requestGet.restore(); - }); - - it('should return a valid project', async function () { - const response = { - status: 200, - data: { - error: false, - project: 'test', - }, - headers: {}, - config: {}, - request: {}, - }; - - requestGet = sinon.stub(axios, 'get').resolves(response); - - const data = await client(config).ping(); - - assert.hasAnyKeys(data, 'project'); - assert.equal(data.project, 'test'); - expect(requestGet.calledOnceWith('http://localhost:8081/ping', { headers })).to.be.true; - }); - - it('should handle error responses', async function () { - const response = { - status: 403, - data: { - error: true, - errorMsg: 'Forbidden', - }, - headers: {}, - config: {}, - request: {}, - }; - - requestPost = sinon.stub(axios, 'get').resolves(response); - - try { - await client(config).ping(); - } catch (err) { - assert.ok(true); - expect(requestGet.calledOnceWith('http://localhost:8081/ping', { headers })).to.be.true; - assert.typeOf(err, 'Error'); - assert.equal(err.message, 'Forbidden'); - return; - } - - assert.fail('Ping did not raise the error'); - }); - }); - - describe('POST /', function () { - let file; - let fr; - - beforeEach(function () { - // Set the directory so we can test for path inference. - cget.withArgs('dir').returns(process.cwd() + '/test/fixtures'); - file = sinon.stub(fs, 'createReadStream').returns({}); - fr = sinon.stub(fs, 'readFileSync').returns(''); - }); - - afterEach(function () { - requestPost.restore(); - file.restore(); - fr.restore(); - }); - - describe('send', function () { - it('should accept index.html files', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'index.html', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - - requestPost = sinon.stub(axios, 'post').resolves(response); - - await client(config) - .send('test/fixtures/index.html', false, true, false, true, true); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { - url: '/index.html', - find_attachments: false, - content: '', - published: true - }, - { - headers: { - 'User-Agent': 'Quant (+http://api.quantcdn.io)', - 'Quant-Token': 'test', - 'Quant-Customer': 'dev', - 'Quant-Organisation': 'dev', - 'Quant-Project': 'test', - 'Content-Type': 'application/json', - 'Quant-Skip-Purge': 'true' - } - } - ) - ).to.be.true; - }); - - it('should accept custom headers', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'index.html', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - - requestPost = sinon.stub(axios, 'post').resolves(response) - - await client(config) - .send('test/fixtures/index.html', 'test/fixtures', true, false, false, false, { test: 'headers' }); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { - url: '/test/fixtures', - find_attachments: false, - content: '', - published: true, - headers: { 'test': 'headers' }, - }, - { - headers: { - 'User-Agent': 'Quant (+http://api.quantcdn.io)', - 'Quant-Token': 'test', - 'Quant-Customer': 'dev', - 'Quant-Organisation': 'dev', - 'Quant-Project': 'test', - 'Content-Type': 'application/json', - } - }, - ) - ).to.be.true; - }); - - it('should find attachments', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'index.html', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - - requestPost = sinon.stub(axios, 'post').resolves(response) - - await client(config).send('test/fixtures/index.html', 'test/fixtures/index.html', true, true); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { - url: '/test/fixtures', - find_attachments: true, - content: '', - published: true, - }, - { - headers: { - 'User-Agent': 'Quant (+http://api.quantcdn.io)', - 'Quant-Token': 'test', - 'Quant-Customer': 'dev', - 'Quant-Organisation': 'dev', - 'Quant-Project': 'test', - 'Content-Type': 'application/json', - } - }, - ) - ).to.be.true; - }); - - it('should accept a location', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'index.html', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - - requestPost = sinon.stub(axios, 'post').resolves(response) - - await client(config).send('test/fixtures/index.html', 'test/index.html'); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { - url: '/test', - find_attachments: false, - content: '', - published: true - }, - { - headers: { - 'User-Agent': 'Quant (+http://api.quantcdn.io)', - 'Quant-Token': 'test', - 'Quant-Customer': 'dev', - 'Quant-Organisation': 'dev', - 'Quant-Project': 'test', - 'Content-Type': 'application/json' - } - } - ) - ).to.be.true; - }); - - it('should accept published status', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'index.html', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - - requestPost = sinon.stub(axios, 'post').resolves(response); - - await client(config).send('test/fixtures/index.html', 'test/index.html', false); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { - url: '/test', - find_attachments: false, - content: '', - published: false, - }, - { - headers: { - 'User-Agent': 'Quant (+http://api.quantcdn.io)', - 'Quant-Token': 'test', - 'Quant-Customer': 'dev', - 'Quant-Organisation': 'dev', - 'Quant-Project': 'test', - 'Content-Type': 'application/json', - } - } - ) - ).to.be.true; - }); - - it('should accept html files', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'index.html', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - - requestPost = sinon.stub(axios, 'post').resolves(response); - - await client(config).send('test/fixtures/some-file-path.html'); - - // Expect the post for the redirect. - expect( - requestPost.calledWith( - 'http://localhost:8081', - { - url: '/some-file-path.html', - find_attachments: false, - content: '', - published: true - }, - { - headers: { - 'User-Agent': 'Quant (+http://api.quantcdn.io)', - 'Quant-Token': 'test', - 'Quant-Customer': 'dev', - 'Quant-Organisation': 'dev', - 'Quant-Project': 'test', - 'Content-Type': 'application/json' - } - } - ) - ).to.be.true; - }); - - it('should accept files', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'nala.jpg', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response) - - const data = await client(config).file('test/fixtures/nala.jpg'); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { data: {} }, - { - headers: { - ...headers, - 'Content-Type': 'multipart/form-data', - 'Quant-File-Url': '/nala.jpg', - } - } - ) - ).to.be.true; - assert.equal(data, response.data); - }); - }); - - describe('markup', function () { - it('should accept an index.html', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'index.html', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response); - - const data = await client(config).markup('test/fixtures/index.html'); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { url: '/index.html', content: '', published: true, find_attachments: false }, - { - headers: { - 'User-Agent': 'Quant (+http://api.quantcdn.io)', - 'Quant-Token': 'test', - 'Quant-Customer': 'dev', - 'Quant-Organisation': 'dev', - 'Quant-Project': 'test', - 'Content-Type': 'application/json', - } - } - ) - ).to.be.true; - assert.equal(data, response.data); - }); - it('should not accept other file types', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'index.html', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response); - try { - await client(config).markup('test/fixtures/test.js'); - } catch (err) { - assert.typeOf(err, 'Error'); - assert.equal(err.message, 'Can only upload an index.html file.'); - } - }); - it('should accept custom headers', async function () { - const response = { - statusCode: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'index.html', - errorMsg: '', - error: false, - }, - }; - requestPost = sinon.stub(axios, 'post').resolves(response) - - const data = await client(config).markup('test/fixtures/index.html', 'test/fixtures', true, false, { test: 'header' }); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { - url: '/test/fixtures', - find_attachments: false, - content: '', - published: true, - headers: { 'test': 'header' }, - }, - { - headers: { - 'User-Agent': 'Quant (+http://api.quantcdn.io)', - 'Quant-Token': 'test', - 'Quant-Customer': 'dev', - 'Quant-Organisation': 'dev', - 'Quant-Project': 'test', - 'Content-Type': 'application/json', - } - } - ) - ).to.be.true; - assert.equal(data, response.data); - }); - }); - describe('files', function () { - it('should accept a local file', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'nala.jpg', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response); - - const data = await client(config).file('test/fixtures/nala.jpg'); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { data: {} }, - { - headers: { - ...headers, - 'Content-Type': 'multipart/form-data', - 'Quant-File-Url': '/nala.jpg', - } - } - ) - ).to.be.true; - assert.equal(data, response.data); - }); - - it('should accept custom headers', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'nala.jpg', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response); - - const data = await client(config).file('test/fixtures/nala.jpg', 'nala.jpg', false, { test: 'headers' }); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { data: {} }, - { - headers: { - 'User-Agent': 'Quant (+http://api.quantcdn.io)', - 'Quant-Token': 'test', - 'Quant-Customer': 'dev', - 'Quant-Organisation': 'dev', - 'Quant-Project': 'test', - 'Content-Type': 'multipart/form-data', - 'Quant-File-Url': '/nala.jpg', - 'Quant-File-Headers': '{"test":"headers"}', - } - } - ) - ).to.be.true; - assert.equal(data, response.data); - }); - - it('should accept empty object', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'nala.jpg', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response); - - const data = await client(config).file('test/fixtures/nala.jpg', 'nala.jpg', false, {}); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { - data: {} - }, - { - headers: { - 'User-Agent': 'Quant (+http://api.quantcdn.io)', - 'Quant-Token': 'test', - 'Quant-Customer': 'dev', - 'Quant-Organisation': 'dev', - 'Quant-Project': 'test', - 'Content-Type': 'multipart/form-data', - 'Quant-File-Url': '/nala.jpg', - }, - } - ), - ).to.be.true; - assert.equal(data, response.data); - }); - - it('should accept nested local files', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'nala.jpg', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response); - - const data = await client(config).file('test/fixtures/sample/nala.jpg'); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { data: {} }, - { - headers: { - ...headers, - 'Content-Type': 'multipart/form-data', - 'Quant-File-Url': '/sample/nala.jpg', - }, - } - ) - ).to.be.true; - assert.equal(data, response.data); - }); - it('should accept a custom location', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'nala.jpg', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response); - - const data = await client(config) - .file('test/fixtures/sample/nala.jpg', '/path-to-file/nala.jpg'); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { data: {} }, - { - headers: { - ...headers, - 'Content-Type': 'multipart/form-data', - 'Quant-File-Url': '/path-to-file/nala.jpg', - } - } - ), - ).to.be.true; - assert.equal(data, response.data); - }); - it('should accept a nested custom location', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'nala.jpg', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response); - - const data = await client(config) - .file('test/fixtures/sample/nala.jpg', '/path/to/file/nala.jpg'); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { data: {} }, - { - headers: { - ...headers, - 'Content-Type': 'multipart/form-data', - 'Quant-File-Url': '/path/to/file/nala.jpg', - } - } - ), - ).to.be.true; - assert.equal(data, response.data); - }); - it('should accept css', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'test.css', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response); - - const data = await client(config).file('test/fixtures/test.css'); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { data: {} }, - { - headers: { - ...headers, - 'Content-Type': 'multipart/form-data', - 'Quant-File-Url': '/test.css', - } - } - ), - ).to.be.true; - assert.equal(data, response.data); - }); - it('should accept js', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - md5: 'da697d6f9a318fe26d2dd75a6b123df0', - quant_filename: 'test.js', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response); - - const data = await client(config).file('test/fixtures/test.js'); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081', - { data: {} }, - { - headers: { - ...headers, - 'Content-Type': 'multipart/form-data', - 'Quant-File-Url': '/test.js', - }, - } - ) - ).to.be.true; - assert.equal(data, response.data); - }); - }); - }); - - describe('PATCH /unpublish', function () { - this.afterEach(function () { - requestPatch.restore(); - }); - - it('should remove index.html', async function () { - const response = { - status: 200, - data: { project: 'test' }, - headers: {}, - config: {}, - request: {}, - }; - requestPatch = sinon.stub(axios, 'patch').resolves(response); - - await client(config).unpublish('/path/to/index.html'); - expect( - requestPatch.calledOnceWith( - 'http://localhost:8081/unpublish', - {}, - { - headers: { - ...headers, - 'Quant-Url': '/path/to', - }, - } - ) - ).to.be.true; - }); - }); - - describe('POST /redirect', function () { - afterEach(function () { - requestPost.restore(); - }); - - it('should accept from and to', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - url: '/a', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response); - - await client(config).redirect('/a', '/b'); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081/redirect', - { - url: '/a', - redirect_url: '/b', - redirect_http_code: 302, - published: true, - }, - { headers } - ), - ).to.be.true; - }); - - it('should accept status code', async function () { - const response = { - status: 200, - data: { - quant_revision: 1, - url: '/a', - errorMsg: '', - error: false, - }, - headers: {}, - config: {}, - request: {}, - }; - requestPost = sinon.stub(axios, 'post').resolves(response); - - await client(config).redirect('/a', '/b', 'test', 301); - - expect( - requestPost.calledOnceWith( - 'http://localhost:8081/redirect', - { - url: '/a', - redirect_url: '/b', - redirect_http_code: 301, - published: true, - info: { author_user: 'test' }, - }, - { headers } - ), - ).to.be.true; - }); - - it('should not accept an invalid http status code', async function () { - try { - await client(config).redirect('/a', '/b', 'test', 200); - } catch (err) { - assert.typeOf(err, 'Error'); - assert.equal(err.message, 'A valid redirect status code is required'); - } - try { - await client(config).redirect('/a', '/b', 'test', 401); - } catch (err) { - assert.typeOf(err, 'Error'); - assert.equal( - err.message, - 'A valid redirect status code is required', - ); - } - }); - }); - -}); diff --git a/test/commands/deploy.test.js b/test/commands/deploy.test.js deleted file mode 100644 index 05b3f1e..0000000 --- a/test/commands/deploy.test.js +++ /dev/null @@ -1,160 +0,0 @@ -/** - * Test the deploy command. - */ - -const path = require('path'); -const deploy = require('../../src/commands/deploy').handler; - -// Stubs -const getFiles = require('../../src/helper/getFiles'); -const config = require('../../src/config'); -const client = require('../../src/quant-client'); -const revisions = require('../../src/helper/revisions'); - -describe('Deploy', function() { - let getFilesStub; - let configGetStub; - let clientStub; - let meta; - let unpublish; - let ping; - let send; - - let chai, sinon, expect; - - // Disable console log for neater test output. - before(async () => { - chai = await import('chai'); - sinon = await import('sinon'); - expect = chai.expect; - sinon.stub(console, 'log') - }); - after(() => sinon.restore()); - - beforeEach(function() { - unpublish = sinon.stub(); - send = sinon.stub(); - ping = sinon.stub(); - - configGetStub = sinon.stub(config, 'get'); - configGetStub.withArgs('endpoint').returns('http://localhost:8081'); - configGetStub.withArgs('clientid').returns('dev'); - configGetStub.withArgs('token').returns('test'); - - getFilesStub = sinon.stub(getFiles, 'getFiles'); - }); - - afterEach(function() { - configGetStub.restore(); - getFilesStub.restore(); - clientStub.restore(); - }); - - describe('Publish', function() { - beforeEach(function() { - meta = sinon.stub().returns(); - clientStub = sinon.stub(client, 'client').returns({ - meta, - unpublish, - send, - ping, - }); - }); - - it('should deploy built html files', async function() { - const dir = path.resolve(process.cwd(), 'test/fixtures'); - const f = `${dir}/index.html`; - getFilesStub - .withArgs(dir) - .returns([f]); - - await deploy({dir}); - expect(send.calledOnceWith(f)).to.be.true; - }); - - it('should deploy built css files', async function() { - const dir = path.resolve(process.cwd(), 'test/fixtures'); - const f = `${dir}/test.css`; - getFilesStub - .withArgs(dir) - .returns([f]); - - await deploy({dir}); - expect(send.calledOnceWith(f)).to.be.true; - }); - }); - - describe('Unpublish', function() { - beforeEach(function() { - meta = sinon.stub().returns({ - total_pages: 1, - total_records: 3, - records: [ - {url: 'test/index.html'}, - ], - }); - clientStub = sinon.stub(client, 'client').returns({ - meta, - unpublish, - send, - ping, - }); - }); - - it('should unpublish missing files', async function() { - const dir = path.resolve(process.cwd(), 'test/fixtures'); - getFilesStub.withArgs(dir).returns([ - `${dir}/index.html`, - ]); - - await deploy({dir}); - expect(unpublish.calledOnceWith('test/index.html')).to.be.true; - }); - }); - - describe('Local meta', function() { - let enabled; - let store; - let save; - beforeEach(function() { - meta = sinon.stub().returns(); - send.returns({ - 'url': '/test.html', - 'md5': 'test', - }); - clientStub = sinon.stub(client, 'client').returns({ - meta, - unpublish, - send, - ping, - }); - enabled = sinon.stub(revisions, 'enabled'); - store = sinon.stub(revisions, 'store'); - save = sinon.stub(revisions, 'save'); - }); - - afterEach(function() { - enabled.restore(); - store.restore(); - save.restore(); - }); - - it('should build the local md5 cache', async function() { - const dir = path.resolve(process.cwd(), 'test/fixtures'); - getFilesStub.withArgs(dir).returns([ - `${dir}/index.html`, - ]); - await deploy({ - 'dir': dir, - 'revision-log': '/tmp/test-log.json', - 'r': '/tmp/test-log.json', - }); - expect(enabled.firstCall.calledWith(true)).to.be.true; - expect(store.firstCall.calledWith({ - 'url': '/test.html', - 'md5': 'test', - })).to.be.true; - expect(save.calledOnce).to.be.true; - }); - }); -}); diff --git a/test/config.test.js b/test/config.test.js deleted file mode 100644 index 006cb76..0000000 --- a/test/config.test.js +++ /dev/null @@ -1,124 +0,0 @@ -/** - * Configuration file testing. - */ - -const config = require('../src/config.js'); -const fs = require('fs'); - -describe('Config', function() { - let chai, sinon, assert, expect - - beforeEach(async() => { - chai = await import('chai') - sinon = (await import('sinon')).default - assert = chai.assert - expect = chai.expect - }) - - afterEach(async () => { - sinon.restore(); - }) - - describe('defaults', function() { - it('should have a default endpoint', function() { - assert.equal(config.get('endpoint'), 'https://api.quantcdn.io/v1'); - }); - it('should have a default directory', function() { - assert.equal(config.get('dir'), 'build'); - }); - }); - describe('set()', function() { - it('should update client id', function() { - const result = {clientid: 'test'}; - config.set(result); - assert.equal(config.get('clientid'), 'test'); - }); - it('should set token', function() { - const result = {token: 'test'}; - config.set(result); - assert.equal(config.get('token'), 'test'); - }); - }); - describe('save()', function() { - let writeFileSync; - beforeEach(function() { - sinon.restore(); - writeFileSync = sinon.stub(fs, 'writeFileSync').returns({}); - config.set({ - dir: 'build', - endpoint: 'http://quantcdn.io', - clientid: null, - token: null, - project: null, - }); - }); - afterEach(function() { - writeFileSync.restore(); - }); - it('should save the state', function() { - config.save(); - const data = JSON.stringify({ - dir: 'build', - endpoint: 'http://quantcdn.io', - clientid: null, - project: null, - token: null, - }, null, 2); - expect(writeFileSync.calledOnceWith('./quant.json', data)).to.be.true; - }); - it('should save updated state', function() { - const results = {clientid: 'test'}; - config.set(results); - config.save(); - const data = JSON.stringify({ - dir: 'build', - endpoint: 'http://quantcdn.io', - clientid: 'test', - project: null, - token: null, - }, null, 2); - expect(writeFileSync.calledOnceWith('./quant.json', data)).to.be.true; - }); - it('should save to given directory', function() { - config.save('/tmp'); - const data = JSON.stringify({ - dir: 'build', - endpoint: 'http://quantcdn.io', - clientid: null, - project: null, - token: null, - }, null, 2); - expect(writeFileSync.calledOnceWith('/tmp/quant.json', data)).to.be.true; - }); - }); - describe('load()', function() { - let readFileSync; - - afterEach(function() { - readFileSync.restore(); - }); - it('should load from a given directory', function() { - readFileSync = sinon.stub(fs, 'readFileSync').returns( - JSON.stringify({ - dir: '.', - endpoint: 'http://api.quantcdn.io', - clientid: 'test', - token: 'test', - project: 'test', - }), - ); - const status = config.load(`/tmp`); - expect(readFileSync.calledOnceWith(`/tmp/quant.json`)).to.be.true; - assert.equal(status, true); - assert.equal(config.get('clientid'), 'test'); - assert.equal(config.get('token'), 'test'); - assert.equal(config.get('project'), 'test'); - }); - it('should return FALSE if file is not found', function() { - readFileSync = sinon.stub(fs, 'readFileSync').throwsException(); - const status = config.load('/tmp'); - expect(readFileSync.calledOnceWith('/tmp/quant.json')).to.be.true; - assert.equal(status, false); - }); - }); -}); diff --git a/test/fixtures/index.html b/test/fixtures/index.html deleted file mode 100644 index 779cde3..0000000 --- a/test/fixtures/index.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - Enter a title, displayed at the top of the window. - - - - -

Enter the main heading, usually the same as the title.

-

Be bold in stating your key points. Put them in a list:

- -

Improve your image by including an image.

-

A Great HTML Resource

-

Add a link to your favorite Web site. - Break up your page with a horizontal rule or two.

-
-

Finally, link to another page in your own Web site.

-
-
-
- -

© Wiley Publishing, 2011

- - - diff --git a/test/fixtures/nala.jpg b/test/fixtures/nala.jpg deleted file mode 100644 index c17614aa374e053ce12b4e9daf44fceff3c536be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 69301 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

M% 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 - - - - Enter a title, displayed at the top of the window. - - - - - Elva dressed as a fairy - - Elva dressed as a fairy - - Hotlinked image - - - - - Chris standing up holding his daughter Elva - - - - - - - - - diff --git a/test/fixtures/sample/nala.jpg b/test/fixtures/sample/nala.jpg deleted file mode 100644 index c17614aa374e053ce12b4e9daf44fceff3c536be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 69301 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

M% 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 - - - - Enter a title, displayed at the top of the window. - - - - -

Enter the main heading, usually the same as the title.

-

Be bold in stating your key points. Put them in a list:

-
    -
  • The first item in your list
  • -
  • The second item; italicize key words
  • -
-

Improve your image by including an image.

-

A Great HTML Resource

-

Add a link to your favorite Web site. - Break up your page with a horizontal rule or two.

-
-

Finally, link to another page in your own Web site.

- -

© Wiley Publishing, 2011

- - - diff --git a/test/fixtures/test.css b/test/fixtures/test.css deleted file mode 100644 index 6840e57..0000000 --- a/test/fixtures/test.css +++ /dev/null @@ -1,3 +0,0 @@ -#nala-bg { - background-image: url('/nala.jpg'); -} diff --git a/test/fixtures/test.js b/test/fixtures/test.js deleted file mode 100644 index e69de29..0000000 diff --git a/test/helper/getFiles.test.js b/test/helper/getFiles.test.js deleted file mode 100644 index ca3469d..0000000 --- a/test/helper/getFiles.test.js +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Test the get files helper. - */ -const getFiles = require('../../src/helper/getFiles'); - -describe('helpers::getFiles', function() { - let chai, cap, assert, expect; - - beforeEach(async () => { - chai = await import('chai'); - cap = (await import('chai-as-promised')).default; - - chai.use(cap); - assert = chai.assert; - expect = chai.expect; - }); - - it('should return a promise', function() { - return getFiles('test/fixtures') - .then((files) => { - assert.isTrue(true); - }); - }); - - it('should return contents of a given directory', async function() { - const files = await getFiles('test/fixtures'); - - const expected = [ - `${process.cwd()}/test/fixtures/index.html`, - `${process.cwd()}/test/fixtures/nala.jpg`, - `${process.cwd()}/test/fixtures/responsive-images.html`, - `${process.cwd()}/test/fixtures/sample/nala.jpg`, - `${process.cwd()}/test/fixtures/some-file-path.html`, - `${process.cwd()}/test/fixtures/test.css`, - `${process.cwd()}/test/fixtures/test.js`, - ]; - - expect(files).to.eql(expected); - }); - - it('should handle non-existent directories', async function() { - return expect(getFiles('/not/here')).to.eventually.be.rejectedWith(Error); - }); -}); diff --git a/test/helper/normalizePath.test.js b/test/helper/normalizePath.test.js deleted file mode 100644 index d8b1634..0000000 --- a/test/helper/normalizePath.test.js +++ /dev/null @@ -1,30 +0,0 @@ -/** - * Test the path noramlizer. - */ -const normalizePaths = require('../../src/helper/normalizePaths'); -const path = require('path'); - -describe('helpers::normalizePaths', () => { - let chai, cap, expect; - - beforeEach(async () => { - chai = await import('chai'); - cap = (await import('chai-as-promised')).default; - - chai.use(cap); - expect = chai.expect; - }); - - it('should convert system paths', () => { - // Bit of a strange test cause tests always run in poisx envs. - const localPath = '/path/to/file'; - expect(normalizePaths(localPath)).to.eql('/path/to/file'); - }); - - it('should convert win paths', () => { - // Bit of a strange test cause tests always run in poisx envs. - const localPath = '\\path\\to\\file'; - expect(normalizePaths(localPath, path.win32.sep)).to.eql('/path/to/file'); - }); - -}); diff --git a/test/helper/quant-url.js b/test/helper/quant-url.js deleted file mode 100644 index 9e7456f..0000000 --- a/test/helper/quant-url.js +++ /dev/null @@ -1,40 +0,0 @@ -/** - * Test the URL helpers. - */ -const url = require('../../src/helper/quant-url'); - -describe('helpers::url', () => { - let chai, cap, expect; - - beforeEach(async () => { - chai = await import('chai'); - cap = (await import('chai-as-promised')).default; - chai.use(cap); - expect = chai.expect; - }); - - describe('prepare', () => { - it('should remove index.html', () => { - expect(url.prepare('/test/index.html')).to.eql('/test'); - }); - it('should keep html files', () => { - expect(url.prepare('/test.html')).to.eql('/test.html'); - }); - it('should return / for only index', () => { - expect(url.prepare('/index.html')).to.eql('/'); - expect(url.prepare('index.html')).to.eql('/'); - }); - it('should respect nested structures', () => { - expect(url.prepare('/nested/directory/index.html')).to.eql('/nested/directory'); - }); - it('should handle missing leading /', () => { - expect(url.prepare('test/index.html')).to.eql('/test'); - }); - it('should not partial match index.html', () => { - expect(url.prepare('/old-index.html')).to.eql('/old-index.html'); - }); - it('should normalize case', () => { - expect(url.prepare('/StRaNgE-CaSE/index.HTML')).to.eql('/strange-case'); - }); - }); -});