From 8c56210812659f5084592bb83cb878327ac48a7d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Soko=C5=82owski?= Date: Thu, 20 Dec 2018 18:51:19 +0100 Subject: [PATCH] add check for id field MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jakub SokoĊ‚owski --- test/schema.js | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/test/schema.js b/test/schema.js index d3e1b21..9f7cca8 100644 --- a/test/schema.js +++ b/test/schema.js @@ -5,6 +5,7 @@ import Joi from 'joi' import Schema from '../src/schema' let build +/* example valid build */ const BUILD = { id: 'ID-1', commit: 'abcd1234', @@ -21,6 +22,24 @@ describe('Schema', () => { build = Object.assign({}, BUILD) }) + describe('id', () => { + it('can be a string', async () => { + let rval = await Joi.validate(build, Schema) + expect(rval).to.eql(build) + }) + + it('can be a number', async () => { + build.id = 123 + let rval = await Joi.validate(build, Schema) + expect(rval).to.eql(build) + }) + + it('can\'t be null', () => { + build.id = null + expect(Joi.validate(build, Schema)).rejectedWith('"id" must be a number, "id" must be a string') + }) + }) + describe('commit', () => { it('has to be a commit', async () => { let rval = await Joi.validate(build, Schema) @@ -32,7 +51,7 @@ describe('Schema', () => { expect(Joi.validate(build, Schema)).rejectedWith('"commit" must be a string') }) - it('can\'t be a number', async () => { + it('can\'t be a number', () => { build.commit = 1 expect(Joi.validate(build, Schema)).rejectedWith('"commit" must be a string') }) @@ -50,7 +69,7 @@ describe('Schema', () => { expect(rval).to.eql(build) }) - it('can\'t be a number', async () => { + it('can\'t be a number', () => { build.pkg_url = 1 expect(Joi.validate(build, Schema)).rejectedWith('"pkg_url" must be a string') })