import { isResource } from '@cloudpss/resource-types'; it('isResource', () => { expect( isResource({ rid: 'application/o/k', name: 'xx', description: 'xx', tags: [], keywords: [], revision: {}, }), ).toEqual(true); expect( isResource({ name: 'xx', description: 'xx', tags: [], keywords: [], revision: {}, }), ).toEqual(false); expect( isResource({ rid: '/o/k', name: 'xx', description: 'xx', tags: [], keywords: [], revision: {}, }), ).toEqual(false); expect( isResource( { name: 'xx', description: 'xx', tags: [], keywords: [], revision: {}, }, true, ), ).toEqual(true); expect( isResource( { rid: '/o/k', name: 'xx', description: 'xx', tags: [], keywords: [], revision: {}, }, true, ), ).toEqual(false); expect( isResource({ rid: 'application/o/k', name: 'xx', description: 1, tags: [], keywords: [], revision: {}, }), ).toEqual(false); expect( isResource({ rid: 'application/o/k', name: 'xx', description: 'xx', tags: 1, keywords: [], revision: {}, }), ).toEqual(false); expect( isResource({ rid: 'application/o/k', name: 'xx', description: 'xx', tags: ['x', 'y'], keywords: [], revision: 'not a revision', }), ).toEqual(false); expect( isResource({ rid: 'application/o/k', name: 'xx', description: 'xx', tags: ['x', 'y', 1], keywords: [], revision: {}, }), ).toEqual(false); expect( isResource({ rid: 'application/o/k', name: 'xx', description: 'xx', tags: ['x', 'y'], keywords: [1], revision: {}, }), ).toEqual(false); expect( isResource({ rid: 'application/o/k', name: 'xx', description: 'xx', tags: ['x', 'y'], keywords: {}, revision: {}, }), ).toEqual(false); expect(isResource({})).toEqual(false); expect(isResource(null)).toEqual(false); });