describe('var statements', () => { const docSet = jsdoc.getDocSetFromFile('test/fixtures/var.js'); const GREEN = docSet.getByLongname('GREEN')[0]; const RED = docSet.getByLongname('RED')[0]; const results = docSet.getByLongname('results')[0]; describe('when a series of constants is documented', () => { it('should find the first constant', () => { expect(GREEN).toBeObject(); }); it('should attach the docs to the first constant', () => { expect(GREEN.comment).toBe('/** document me */'); }); it('should have the correct name', () => { expect(GREEN.name).toBe('GREEN'); }); it('should have the correct memberof', () => { expect(GREEN.memberof).toBeUndefined(); }); it('should give the constant a global scope', () => { expect(GREEN.scope).toBe('global'); }); it('should find the second constant', () => { expect(RED).toBeObject(); }); it('should not attach the docs to the second constant', () => { expect(RED.undocumented).toBeTrue(); }); }); describe('when a member of a series of vars is documented', () => { it('should attach the docs to the correct var', () => { expect(results.comment).toBe('/** document me */'); }); it('should have the correct name', () => { expect(results.name).toBe('results'); }); it('should leave memberof undefined', () => { expect(results.memberof).toBeUndefined(); }); it('should give the var a global scope', () => { expect(results.scope).toBe('global'); }); }); });