git ssb

0+

mixmix / ssb-gathering-schema



Tree: e4eac9ccb82c20dcc8e3e9ea749f3557e168ec56

Files: e4eac9ccb82c20dcc8e3e9ea749f3557e168ec56 / gathering-update / validator.test.js

1842 bytesRaw
1const test = require('tape')
2const valid = require('./validator')
3
4const GatheringUpdate = () => {
5 return {
6 type: 'about',
7 about: '%WcE/QeRq1DQn5L+xP696fLq6qfIvRS4DBt4QXicas0A=.sha256',
8 title: 'ziva\'s birthday',
9 description: 'come celebrate 1 year of life with ziva',
10 location: 'our place in mirimar',
11 startDateTime: {
12 epoch: Date.now() + 5e6,
13 silent: true,
14 tz: 'Pacific/Auckland',
15 valid: true
16 },
17 image: {
18 link: '&GGEZJfKVD5NLd2l+YT8/mXbljNFM05D6iBxK+gen4+o=.sha256',
19 name: 'simone.jpg',
20 size: 47904,
21 type: 'image/jpeg'
22 }
23 }
24}
25
26test('is-gathering-update', t => {
27 t.true(valid(GatheringUpdate()))
28 if (valid.errors) console.log(valid.errors)
29
30 // misc keys
31 const missingStrings = GatheringUpdate()
32 delete missingStrings.title
33 delete missingStrings.description
34 delete missingStrings.location
35 t.true(valid(missingStrings), 'missing title/ description/ location')
36
37 // startDateTime
38 const missingStart = GatheringUpdate()
39 delete missingStart.startDateTime
40 t.true(valid(missingStart), 'missing startDateTime')
41
42 const bareStart = GatheringUpdate()
43 bareStart.startDateTime = { epoch: Date.now() }
44 t.true(valid(bareStart), 'minimal startDateTime')
45
46 const brokenStart = GatheringUpdate()
47 delete brokenStart.startDateTime.epoch
48 t.false(valid(brokenStart), 'startDateTime missing epoch')
49
50 // image
51 const missingImage = GatheringUpdate()
52 delete missingImage.image
53 t.true(valid(missingImage), 'missing image')
54
55 const minimalImage = GatheringUpdate()
56 minimalImage.image = {
57 link: '&GGEZJfKVD5NLd2l+YT8/mXbljNFM05D6iBxK+gen4+o=.sha256'
58 }
59 t.true(valid(minimalImage), 'minimal image')
60
61 const brokenImage = GatheringUpdate()
62 delete brokenImage.image.link
63 t.false(valid(brokenImage), 'broken image')
64
65 t.end()
66})
67

Built with git-ssb-web