UNPKG

contensis-delivery-api

Version:

Client for retrieving content using the read-only Contensis Delivery API

56 lines (42 loc) 1.51 kB
import * as Contensis from '../index'; import { getDefaultFetchRequestForAccessToken, setDefaultSpyForAccessToken } from '../specs-utils.spec'; import fetch from 'cross-fetch'; const Zengenti = { Contensis }; const global = window || this; global.fetch = fetch; describe('Project Operations', function () { beforeEach(() => { setDefaultSpyForAccessToken(global); Zengenti.Contensis.Client.defaultClientConfig = null; Zengenti.Contensis.Client.configure({ fetchFn: global.fetch }); }); it('Get with specified root url', async () => { let client = Zengenti.Contensis.Client.create({ projectId: 'myProject', rootUrl: 'http://my-website.com/', accessToken: 'XXXXXX' }); let project = await client.project.get(); expect(global.fetch).toHaveBeenCalled(); expect((global.fetch as any).calls.mostRecent().args).toEqual([ 'http://my-website.com/api/delivery/projects/myProject', getDefaultFetchRequestForAccessToken() ]); expect(project).not.toBeNull(); }); it('Get without root url', async () => { let client = Zengenti.Contensis.Client.create({ projectId: 'myProject', accessToken: 'XXXXXX' }); let project = await client.project.get(); expect(global.fetch).toHaveBeenCalled(); expect((global.fetch as any).calls.mostRecent().args).toEqual([ '/api/delivery/projects/myProject', getDefaultFetchRequestForAccessToken(null, null, true) ]); expect(project).not.toBeNull(); }); });