UNPKG

ns-suitescript-mocks

Version:

Collection of mocks that can be used to improve unit-tests for SuiteScript 2.0.

53 lines (49 loc) 1.75 kB
const assert = require('assert'); const sinon = require('sinon'); const fileUnderTest = require('./exampleClientScript'); const defaultValues = { tranid: '12121', custbody_ship_method: 23, shipstatus: 'B', custbodysps_packagedetails: 'test', }; const fulfillmentRecord = nlapiCreateRecord('itemfulfillment', defaultValues); const context = { currentRecord: fulfillmentRecord, }; describe('exampleClientScript.js', () => { describe('pageInit', () => { it('should return true', () => { const result = fileUnderTest.pageInit(context); assert.deepEqual(result, true); }); it('should call create message method', () => { // eslint-disable-next-line prefer-destructuring const message = fileUnderTest.message; const spyMessage = sinon.stub(message, 'create'); fileUnderTest.pageInit(context); assert(spyMessage.called); assert(spyMessage.calledWithExactly({ title: 'Checkbox was checked', message: 'Checkbox was checked!', type: 'confirmation', })); message.create.restore(); }); it('should show not message if checkbox is not checked', () => { // eslint-disable-next-line prefer-destructuring const message = fileUnderTest.message; const createdMessage = message.create({ message: 'Email with CSV was sent to your mailbox!', title: 'Email has been sent.', type: 'confirmation', }); context.currentRecord.setFieldValue('messageonpost', false); const spyMesage = sinon.stub(message, 'create'); const spyShow = sinon.spy(createdMessage, 'show'); fileUnderTest.pageInit(context); assert(spyMesage.called); assert(spyShow.notCalled); }); }); });