import Yaml from '~/services/serializer/denormalizer/yaml' import { DENORMALIZER_TYPE } from '~/types/enums' describe('support()', () => { it('should support model yaml type', () => { expect(Yaml.support(DENORMALIZER_TYPE.YAML)).toBeTruthy() }) it('should not support hydra type', () => { expect(Yaml.support(DENORMALIZER_TYPE.HYDRA)).toBeFalsy() }) }) describe('denormalize()', () => { it('should throw an error if file doesnt exist', () => { const path = './tests/unit/fixture/files/not_exist_file.yaml' expect(() => Yaml.denormalize({ path })).toThrowError() }) it('should parse a Yaml file and return a JSON Object', () => { const path = './tests/unit/fixture/files/test.yaml' expect(Yaml.denormalize({ path })).toStrictEqual({ abilities: { accesses: { action: 'display', services: { access: [ { function: 'hasAbility', parameters: [{ action: 'read', subject: 'user' }] } ], organization: [ { function: 'hasModule', parameters: [ 'Users' ] } ] } }, student_registration: { action: 'display', services: { access: [ { function: 'hasAbility', parameters: [{ action: 'read', subject: 'student-registration' }] } ], organization: [ { function: 'hasModule', parameters: [ 'UsersSchool' ] } ] } } } }) }) })