-
Notifications
You must be signed in to change notification settings - Fork 25
/
payload-get.ts
59 lines (38 loc) · 1.89 KB
/
payload-get.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import jsonFixtures from './fixtures/xumm-api.json'
import * as jestFixtures from './fixtures/xumm-api'
import fetchMock from 'jest-fetch-mock'
fetchMock.enableMocks()
import {XummSdk, XummTypes} from '../src/'
afterEach(() => fetchMock.dontMock())
describe('Get XUMM payloads', () => {
process.env.XUMM_APIKEY = jsonFixtures.api.key
process.env.XUMM_APISECRET = jsonFixtures.api.secret
const Sdk = new XummSdk()
it('should get a payload by UUID', async () => {
fetchMock.doMockOnce(JSON.stringify(jsonFixtures.payload.get))
const payload = await Sdk.payload.get('00000000-0000-4839-af2f-f794874a80b0')
expect(payload).toMatchObject(jsonFixtures.payload.get)
})
it('should get a payload by Created Payload', async () => {
fetchMock.doMockOnce(JSON.stringify(jsonFixtures.payload.created))
const payload = jestFixtures.validPayload as XummTypes.XummPostPayloadBodyJson
const createdPayload = await Sdk.payload.create(payload)
expect(createdPayload).not.toBeNull()
if (createdPayload) {
fetchMock.doMockOnce(JSON.stringify(jsonFixtures.payload.get))
expect(await Sdk.payload.get(createdPayload)).toMatchObject(jsonFixtures.payload.get)
}
})
it('should null on getting an invalid/non existent payload', async () => {
fetchMock.doMockOnce(JSON.stringify(jsonFixtures.payload.error))
const payload = await Sdk.payload.get('00000000-0000-4839-af2f-f794874a80b0')
expect(payload).toBeNull()
})
it('should throw on getting an invalid/non existent payload with `returnErrors`', async () => {
fetchMock.doMockOnce(JSON.stringify(jsonFixtures.payload.notfound))
const failed = Sdk.payload.get('00000000-0000-4839-af2f-f794874a80b0', true)
const e = jsonFixtures.payload.notfound.error
const err = new Error(`Error code ${e.code}, see XUMM Dev Console, reference: ${e.reference}`)
expect(failed).rejects.toThrow(err)
})
})