Added some more unit tests
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed

This commit is contained in:
Gregory Ballantine
2025-08-19 10:29:05 -04:00
parent 7e0eeb9c42
commit 512f7f169e
6 changed files with 128 additions and 3 deletions

View File

@@ -3,8 +3,16 @@ const { expect } = require('chai');
const app = require('../src/app');
describe('GET /', () => {
it('should run the app server', async () => {
beforeEach(async () => {
const res = await request(app).get('/');
expect(res.status).to.equal(200);
this.res = res;
});
it('should run the app server', async () => {
expect(this.res.status).to.equal(200);
});
it('should return an HTML response', async () => {
expect(this.res.headers['content-type']).match(/text\/html/);
});
});

View File

@@ -0,0 +1,33 @@
const request = require('supertest');
const { expect } = require('chai');
const app = require('../../src/app');
describe('GET /benchmark', () => {
beforeEach(async () => {
const res = await request(app).get('/benchmark');
this.res = res;
});
it('should return a redirect', async () => {
expect(this.res.status).to.equal(302);
});
it('should redirect to /benchmark/list', async () => {
expect(this.res.headers['location']).contains('/benchmark/list');
});
});
describe('GET /benchmark/list', () => {
beforeEach(async () => {
const res = await request(app).get('/benchmark/list');
this.res = res;
});
it('should return a 200 status', async () => {
expect(this.res.status).to.equal(200);
});
it('should return an HTML response', async () => {
expect(this.res.headers['content-type']).match(/text\/html/);
});
});

View File

@@ -0,0 +1,33 @@
const request = require('supertest');
const { expect } = require('chai');
const app = require('../../src/app');
describe('GET /hardware', () => {
beforeEach(async () => {
const res = await request(app).get('/hardware');
this.res = res;
});
it('should return a redirect', async () => {
expect(this.res.status).to.equal(302);
});
it('should redirect to /hardware/list', async () => {
expect(this.res.headers['location']).contains('/hardware/list');
});
});
describe('GET /hardware/list', () => {
beforeEach(async () => {
const res = await request(app).get('/hardware/list');
this.res = res;
});
it('should return a 200 status', async () => {
expect(this.res.status).to.equal(200);
});
it('should return an HTML response', async () => {
expect(this.res.headers['content-type']).match(/text\/html/);
});
});

33
test/routes/test.test.js Normal file
View File

@@ -0,0 +1,33 @@
const request = require('supertest');
const { expect } = require('chai');
const app = require('../../src/app');
describe('GET /test', () => {
beforeEach(async () => {
const res = await request(app).get('/test');
this.res = res;
});
it('should return a redirect', async () => {
expect(this.res.status).to.equal(302);
});
it('should redirect to /test/list', async () => {
expect(this.res.headers['location']).contains('/test/list');
});
});
describe('GET /test/list', () => {
beforeEach(async () => {
const res = await request(app).get('/test/list');
this.res = res;
});
it('should return a 200 status', async () => {
expect(this.res.status).to.equal(200);
});
it('should return an HTML response', async () => {
expect(this.res.headers['content-type']).match(/text\/html/);
});
});

View File

@@ -0,0 +1,18 @@
const request = require('supertest');
const { expect } = require('chai');
const app = require('../../src/app');
describe('GET /', () => {
beforeEach(async () => {
const res = await request(app).get('/');
this.res = res;
});
it('should return a 200 status', async () => {
expect(this.res.status).to.equal(200);
});
it('should return an HTML response', async () => {
expect(this.res.headers['content-type']).match(/text\/html/);
});
});