mirror of
https://github.com/naturalcrit/homebrewery.git
synced 2025-12-24 18:32:41 +00:00
48 lines
1.3 KiB
JavaScript
48 lines
1.3 KiB
JavaScript
/* eslint-disable max-lines */
|
|
|
|
const app = require('./app.js').app;
|
|
|
|
const res = {
|
|
_status : 0,
|
|
status : jest.fn((n)=>{res._status = n; return res;}),
|
|
_send : '',
|
|
send : jest.fn((data)=>{res._send = data; return res;}),
|
|
set : jest.fn(()=>{}),
|
|
setHeader : jest.fn(()=>{}),
|
|
reset : ()=>{ res._status = 0; res._send = ''; }
|
|
};
|
|
|
|
describe('Tests for app', ()=>{
|
|
beforeEach(()=>{
|
|
return res.reset();
|
|
});
|
|
|
|
it('get CSS from a test brew that has a style', async ()=>{
|
|
const testBrew = { title: 'test brew', shareId: 'iAmATestBrew', text: '```css\n\nI Have a style!\n````\n\n' };
|
|
|
|
const req = { brew: testBrew };
|
|
await app.getCSS(req, res);
|
|
|
|
expect(res).toHaveProperty('_status', 200);
|
|
expect(res).toHaveProperty('_send', '\nI Have a style!\n');
|
|
});
|
|
|
|
it('get CSS from a test brew that has no style', async ()=>{
|
|
const testBrew = { title: 'test brew', shareId: 'iAmATestBrew', text: 'No style data here' };
|
|
|
|
const req = { brew: testBrew };
|
|
await app.getCSS(req, res);
|
|
|
|
expect(res).toHaveProperty('_status', 404);
|
|
expect(res).toHaveProperty('_send', undefined);
|
|
});
|
|
|
|
it('get CSS from no brew', async ()=>{
|
|
const req = { brew: undefined };
|
|
await app.getCSS(req, res);
|
|
|
|
expect(res).toHaveProperty('_status', 404);
|
|
expect(res).toHaveProperty('_send', undefined);
|
|
});
|
|
});
|