@towns-labs/sdk 2.0.6 → 2.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/dist/streamStateView_Members.d.ts +7 -0
  2. package/dist/streamStateView_Members.d.ts.map +1 -1
  3. package/dist/streamStateView_Members.js +19 -0
  4. package/dist/streamStateView_Members.js.map +1 -1
  5. package/dist/tests/multi_ne/gdms.test.js +50 -3
  6. package/dist/tests/multi_ne/gdms.test.js.map +1 -1
  7. package/dist/tests/multi_ne/userInboxMessage.test.js +3 -3
  8. package/dist/tests/multi_ne/userInboxMessage.test.js.map +1 -1
  9. package/package.json +1 -1
  10. package/dist/tests/multi/notificationService.test.d.ts +0 -2
  11. package/dist/tests/multi/notificationService.test.d.ts.map +0 -1
  12. package/dist/tests/multi/notificationService.test.js +0 -51
  13. package/dist/tests/multi/notificationService.test.js.map +0 -1
  14. package/dist/tests/multi/sync-agent/member-queue.test.d.ts +0 -2
  15. package/dist/tests/multi/sync-agent/member-queue.test.d.ts.map +0 -1
  16. package/dist/tests/multi/sync-agent/member-queue.test.js +0 -54
  17. package/dist/tests/multi/sync-agent/member-queue.test.js.map +0 -1
  18. package/dist/tests/multi/sync-agent/member.test.d.ts +0 -2
  19. package/dist/tests/multi/sync-agent/member.test.d.ts.map +0 -1
  20. package/dist/tests/multi/sync-agent/member.test.js +0 -45
  21. package/dist/tests/multi/sync-agent/member.test.js.map +0 -1
  22. package/dist/tests/multi/sync-agent/members.test.d.ts +0 -2
  23. package/dist/tests/multi/sync-agent/members.test.d.ts.map +0 -1
  24. package/dist/tests/multi/sync-agent/members.test.js +0 -35
  25. package/dist/tests/multi/sync-agent/members.test.js.map +0 -1
  26. package/dist/tests/multi/sync-agent/riverConnection.test.d.ts +0 -5
  27. package/dist/tests/multi/sync-agent/riverConnection.test.d.ts.map +0 -1
  28. package/dist/tests/multi/sync-agent/riverConnection.test.js +0 -39
  29. package/dist/tests/multi/sync-agent/riverConnection.test.js.map +0 -1
  30. package/dist/tests/multi/sync-agent/spaces.test.d.ts +0 -2
  31. package/dist/tests/multi/sync-agent/spaces.test.d.ts.map +0 -1
  32. package/dist/tests/multi/sync-agent/spaces.test.js +0 -33
  33. package/dist/tests/multi/sync-agent/spaces.test.js.map +0 -1
  34. package/dist/tests/multi/sync-agent/streams.test.d.ts +0 -2
  35. package/dist/tests/multi/sync-agent/streams.test.d.ts.map +0 -1
  36. package/dist/tests/multi/sync-agent/streams.test.js +0 -27
  37. package/dist/tests/multi/sync-agent/streams.test.js.map +0 -1
  38. package/dist/tests/multi/sync-agent/syncAgent.test.d.ts +0 -2
  39. package/dist/tests/multi/sync-agent/syncAgent.test.d.ts.map +0 -1
  40. package/dist/tests/multi/sync-agent/syncAgent.test.js +0 -68
  41. package/dist/tests/multi/sync-agent/syncAgent.test.js.map +0 -1
  42. package/dist/tests/multi/sync-agent/syncAgents.test.d.ts +0 -2
  43. package/dist/tests/multi/sync-agent/syncAgents.test.d.ts.map +0 -1
  44. package/dist/tests/multi/sync-agent/syncAgents.test.js +0 -163
  45. package/dist/tests/multi/sync-agent/syncAgents.test.js.map +0 -1
  46. package/dist/tests/multi/sync-agent/timeline.test.d.ts +0 -2
  47. package/dist/tests/multi/sync-agent/timeline.test.d.ts.map +0 -1
  48. package/dist/tests/multi/sync-agent/timeline.test.js +0 -232
  49. package/dist/tests/multi/sync-agent/timeline.test.js.map +0 -1
  50. package/dist/tests/multi/sync-agent/user.test.d.ts +0 -5
  51. package/dist/tests/multi/sync-agent/user.test.d.ts.map +0 -1
  52. package/dist/tests/multi/sync-agent/user.test.js +0 -55
  53. package/dist/tests/multi/sync-agent/user.test.js.map +0 -1
  54. package/dist/tests/multi/transactions.test.d.ts +0 -5
  55. package/dist/tests/multi/transactions.test.d.ts.map +0 -1
  56. package/dist/tests/multi/transactions.test.js +0 -153
  57. package/dist/tests/multi/transactions.test.js.map +0 -1
  58. package/dist/tests/multi/transactions_SpaceReview.test.d.ts +0 -2
  59. package/dist/tests/multi/transactions_SpaceReview.test.d.ts.map +0 -1
  60. package/dist/tests/multi/transactions_SpaceReview.test.js +0 -278
  61. package/dist/tests/multi/transactions_SpaceReview.test.js.map +0 -1
  62. package/dist/tests/multi/transactions_Tip.test.d.ts +0 -5
  63. package/dist/tests/multi/transactions_Tip.test.d.ts.map +0 -1
  64. package/dist/tests/multi/transactions_Tip.test.js +0 -379
  65. package/dist/tests/multi/transactions_Tip.test.js.map +0 -1
@@ -1,278 +0,0 @@
1
- import { dlog } from '@towns-labs/utils';
2
- import { townsEnv } from '../../townsEnv';
3
- import { Bot } from '../../sync-agent/utils/bot';
4
- import { ethers } from 'ethers';
5
- import { ETH_ADDRESS, getSpaceReviewEventData, getSpaceReviewEventDataBin, SpaceReviewAction, } from '@towns-labs/web3';
6
- import { waitForValue } from '../testUtils';
7
- import { BlockchainTransaction_SpaceReview_Action } from '@towns-labs/proto';
8
- import { UnauthenticatedClient } from '../../unauthenticatedClient';
9
- import { RiverTimelineEvent } from '../../views/models/timelineTypes';
10
- const base_log = dlog('csb:test:transaction_SpaceReview');
11
- describe('transaction_SpaceReview', () => {
12
- const townsConfig = townsEnv().makeTownsConfig();
13
- const bobIdentity = new Bot(undefined, townsConfig);
14
- const aliceIdentity = new Bot(undefined, townsConfig);
15
- const alicesOtherWallet = ethers.Wallet.createRandom();
16
- let bob;
17
- let alice;
18
- let spaceIdWithAlice;
19
- let spaceIdWithoutAlice;
20
- let aliceTokenId;
21
- const chainId = townsConfig.base.chainConfig.chainId;
22
- let spaceReviewEventId;
23
- let orphanReviewReceipt;
24
- beforeAll(async () => {
25
- const log = base_log.extend('beforeAll');
26
- log('start');
27
- // fund wallets
28
- await Promise.all([bobIdentity.fundWallet(), aliceIdentity.fundWallet()]);
29
- // make agents
30
- bob = await bobIdentity.makeSyncAgent();
31
- alice = await aliceIdentity.makeSyncAgent();
32
- // start agents
33
- await Promise.all([
34
- bob.start(),
35
- alice.start(),
36
- alice.riverConnection.spaceDapp.walletLink.linkWalletToRootKey(aliceIdentity.signer, alicesOtherWallet),
37
- ]);
38
- // make a space
39
- const { spaceId: sid1 } = await bob.spaces.createSpace({ spaceName: 'Lets REvieW 1' }, bobIdentity.signer);
40
- spaceIdWithAlice = sid1;
41
- // join the space
42
- await alice.spaces.joinSpace(spaceIdWithAlice, aliceIdentity.signer);
43
- // get alice's token id
44
- const aliceTokenId_ = await bob.riverConnection.spaceDapp.getTokenIdOfOwner(spaceIdWithAlice, aliceIdentity.rootWallet.address);
45
- expect(aliceTokenId_).toBeDefined();
46
- aliceTokenId = aliceTokenId_;
47
- // make another space
48
- const { spaceId: sid2 } = await bob.spaces.createSpace({ spaceName: 'Lets REvieW 2' }, bobIdentity.signer);
49
- spaceIdWithoutAlice = sid2;
50
- log('complete', { spaceIdWithAlice, spaceIdWithoutAlice });
51
- // todo, leave a review on the without alice space
52
- });
53
- afterAll(async () => {
54
- await bob.stop();
55
- await alice.stop();
56
- });
57
- test('alice adds review', async () => {
58
- const web3Space = alice.riverConnection.spaceDapp.getSpace(spaceIdWithAlice);
59
- expect(web3Space).toBeDefined();
60
- const tx = await web3Space.Review.addReview({
61
- rating: 5,
62
- comment: 'This is a test review',
63
- }, aliceIdentity.signer);
64
- expect(tx).toBeDefined();
65
- const receipt = await tx.wait(2);
66
- expect(receipt).toBeDefined();
67
- const reviewEvent = getSpaceReviewEventData(receipt.logs, aliceIdentity.userId);
68
- expect(reviewEvent).toBeDefined();
69
- expect(reviewEvent.rating).toBe(5);
70
- expect(reviewEvent.comment).toBe('This is a test review');
71
- await alice.riverConnection.client?.addTransaction_SpaceReview(chainId, receipt, reviewEvent, spaceIdWithAlice);
72
- });
73
- test('alice sees review in user stream', async () => {
74
- const stream = alice.riverConnection.client.stream(alice.riverConnection.client.userStreamId);
75
- if (!stream)
76
- throw new Error('no stream found');
77
- const reviewEvent = await waitForValue(() => {
78
- const reviewEvents = stream.view.timeline.filter(isUserBlockchainTransaction);
79
- expect(reviewEvents.length).toBeGreaterThan(0);
80
- const reviewEvent = reviewEvents[0];
81
- expect(reviewEvent).toBeDefined();
82
- if (!reviewEvent ||
83
- reviewEvent.content?.kind !== RiverTimelineEvent.UserBlockchainTransaction)
84
- throw new Error('no review event whaaa?');
85
- return reviewEvent.content.transaction;
86
- });
87
- if (reviewEvent?.content.case !== 'spaceReview') {
88
- throw new Error('no review event whaaa?');
89
- }
90
- expect(reviewEvent.receipt).toBeDefined();
91
- expect(reviewEvent.content.value.action).toBe(BlockchainTransaction_SpaceReview_Action.Add);
92
- if (!reviewEvent.content.value.event) {
93
- throw new Error('no event in space review');
94
- }
95
- const { comment, rating, action } = getSpaceReviewEventDataBin(reviewEvent.receipt.logs, reviewEvent.content.value.event.user);
96
- expect(action).toBe(SpaceReviewAction.Add);
97
- expect(comment).toBe('This is a test review');
98
- expect(rating).toBe(5);
99
- });
100
- test('alice sees review in space stream', async () => {
101
- const stream = alice.riverConnection.client.stream(spaceIdWithAlice);
102
- if (!stream)
103
- throw new Error('no stream found');
104
- const reviewEvent = await waitForValue(() => {
105
- const reviewEvents = stream.view.membershipContent.spaceReviews;
106
- expect(reviewEvents.length).toBe(1);
107
- const reviewEvent = reviewEvents[0];
108
- return reviewEvent;
109
- });
110
- spaceReviewEventId = reviewEvent.eventHashStr;
111
- const { comment, rating } = reviewEvent.review;
112
- expect(comment).toBe('This is a test review');
113
- expect(rating).toBe(5);
114
- });
115
- test('bob sees review in space stream', async () => {
116
- const stream = bob.riverConnection.client.stream(spaceIdWithAlice);
117
- if (!stream)
118
- throw new Error('no stream found');
119
- const reviewEvent = await waitForValue(() => {
120
- const reviewEvents = stream.view.membershipContent.spaceReviews;
121
- expect(reviewEvents.length).toBe(1);
122
- return reviewEvents[0];
123
- });
124
- expect(reviewEvent).toBeDefined();
125
- expect(stream.view.membershipContent.spaceReviews.length).toBe(1);
126
- });
127
- test('bob can tip review', async () => {
128
- const tx = await bob.riverConnection.spaceDapp.sendTip({
129
- tipParams: {
130
- spaceId: spaceIdWithAlice,
131
- type: 'member',
132
- tokenId: aliceTokenId,
133
- currency: ETH_ADDRESS,
134
- amount: 1000n,
135
- messageId: spaceReviewEventId,
136
- channelId: spaceIdWithAlice,
137
- receiver: aliceIdentity.userId,
138
- },
139
- signer: bobIdentity.signer,
140
- });
141
- const receipt = await tx.wait(2);
142
- expect(receipt).toBeDefined();
143
- const tipEvent = bob.riverConnection.spaceDapp.getTipEvent(spaceIdWithAlice, receipt, bobIdentity.rootWallet.address);
144
- expect(tipEvent).toBeDefined();
145
- if (!tipEvent)
146
- throw new Error('no tip event found');
147
- await bob.riverConnection.client.addTransaction_Tip(chainId, receipt, tipEvent, aliceIdentity.rootWallet.address);
148
- });
149
- test('alice can see tip received in user stream', async () => {
150
- const stream = alice.riverConnection.client.stream(alice.riverConnection.client.userStreamId);
151
- if (!stream)
152
- throw new Error('no stream found');
153
- const tipEvent = await waitForValue(() => {
154
- const tipEvents = stream.view.timeline.filter(isUserReceivedBlockchainTransaction);
155
- expect(tipEvents.length).toBeGreaterThan(0);
156
- const tip = tipEvents[0];
157
- if (!tip || tip.content?.kind !== RiverTimelineEvent.UserReceivedBlockchainTransaction)
158
- throw new Error('no tip event found');
159
- return tip.content.receivedTransaction;
160
- });
161
- if (!tipEvent)
162
- throw new Error('no tip event found');
163
- expect(tipEvent.transaction?.receipt).toBeDefined();
164
- });
165
- test('alice can see tip in space stream', async () => {
166
- const stream = alice.riverConnection.client.stream(spaceIdWithAlice);
167
- if (!stream)
168
- throw new Error('no stream found');
169
- const tipEvent = await waitForValue(() => {
170
- const tipEvents = stream.view.timeline.filter(isTipBlockchainTransaction);
171
- expect(tipEvents.length).toBeGreaterThan(0);
172
- const tip = tipEvents[0];
173
- if (!tip || tip.content?.kind !== RiverTimelineEvent.TipEvent)
174
- throw new Error('no tip event found');
175
- return tip.content;
176
- });
177
- if (!tipEvent)
178
- throw new Error('no tip event found');
179
- expect(tipEvent.transaction?.receipt).toBeDefined();
180
- });
181
- test('alice updates review', async () => {
182
- const web3Space = alice.riverConnection.spaceDapp.getSpace(spaceIdWithAlice);
183
- expect(web3Space).toBeDefined();
184
- const tx = await web3Space.Review.updateReview({
185
- rating: 4,
186
- comment: 'This is a worse test review',
187
- }, aliceIdentity.signer);
188
- expect(tx).toBeDefined();
189
- const receipt = await tx.wait(2);
190
- expect(receipt).toBeDefined();
191
- const reviewEvent = getSpaceReviewEventData(receipt.logs, aliceIdentity.userId);
192
- expect(reviewEvent).toBeDefined();
193
- expect(reviewEvent.rating).toBe(4);
194
- expect(reviewEvent.comment).toBe('This is a worse test review');
195
- await expect(alice.riverConnection.client.addTransaction_SpaceReview(chainId, receipt, reviewEvent, spaceIdWithAlice)).resolves.not.toThrow();
196
- });
197
- test('alice deletes review', async () => {
198
- const web3Space = alice.riverConnection.spaceDapp.getSpace(spaceIdWithAlice);
199
- expect(web3Space).toBeDefined();
200
- const tx = await web3Space.Review.deleteReview(aliceIdentity.signer);
201
- expect(tx).toBeDefined();
202
- const receipt = await tx.wait(2);
203
- expect(receipt).toBeDefined();
204
- const reviewEvent = getSpaceReviewEventData(receipt.logs, aliceIdentity.userId);
205
- expect(reviewEvent).toBeDefined();
206
- expect(reviewEvent.rating).toBe(0);
207
- expect(reviewEvent.comment).toBeUndefined();
208
- await expect(alice.riverConnection.client.addTransaction_SpaceReview(chainId, receipt, reviewEvent, spaceIdWithAlice)).resolves.not.toThrow();
209
- });
210
- test('bob leaves an orphan review', async () => {
211
- const tx = await bob.riverConnection.spaceDapp
212
- .getSpace(spaceIdWithoutAlice)
213
- ?.Review.addReview({
214
- rating: 5,
215
- comment: 'This is an orphan review',
216
- }, bobIdentity.signer);
217
- expect(tx).toBeDefined();
218
- const receipt = await tx.wait(2);
219
- orphanReviewReceipt = receipt;
220
- });
221
- test('cant add review with bad space', async () => {
222
- // bob leaves a review on spaceIdWithoutAlice
223
- const reviewEvent = {
224
- action: SpaceReviewAction.Add,
225
- user: bobIdentity.userId,
226
- rating: 5,
227
- };
228
- await expect(bob.riverConnection.client.addTransaction_SpaceReview(chainId, orphanReviewReceipt, reviewEvent, spaceIdWithAlice)).rejects.toThrow('matching review event not found in receipt logs');
229
- });
230
- test('cant add review with bad sender', async () => {
231
- const reviewEvent = {
232
- action: SpaceReviewAction.Add,
233
- user: bobIdentity.userId,
234
- rating: 5,
235
- };
236
- await expect(
237
- // alice didn't send this!
238
- alice.riverConnection.client.addTransaction_SpaceReview(chainId, orphanReviewReceipt, reviewEvent, spaceIdWithoutAlice)).rejects.toThrow('IsEntitled failed');
239
- });
240
- test('cant add review with bad rating', async () => {
241
- const reviewEvent = {
242
- action: SpaceReviewAction.Add,
243
- user: bobIdentity.userId,
244
- rating: 1, // wrong rating!
245
- };
246
- await expect(bob.riverConnection.client.addTransaction_SpaceReview(chainId, orphanReviewReceipt, reviewEvent, spaceIdWithoutAlice)).rejects.toThrow('matching review event not found in receipt logs');
247
- });
248
- test('cant add review with bad action', async () => {
249
- const reviewEvent = {
250
- action: SpaceReviewAction.Update, // wrong action!
251
- user: bobIdentity.userId,
252
- rating: 5,
253
- };
254
- await expect(bob.riverConnection.client.addTransaction_SpaceReview(chainId, orphanReviewReceipt, reviewEvent, spaceIdWithoutAlice)).rejects.toThrow('matching review event not found in receipt logs');
255
- });
256
- test('alice snapshot', async () => {
257
- await alice.riverConnection.client.debugForceMakeMiniblock(alice.riverConnection.client.userStreamId, { forceSnapshot: true });
258
- const streamView = await alice.riverConnection.client.getStream(alice.riverConnection.client.userStreamId);
259
- expect(streamView).toBeDefined();
260
- });
261
- test('space snapshot', async () => {
262
- await bob.riverConnection.client.debugForceMakeMiniblock(spaceIdWithAlice, {
263
- forceSnapshot: true,
264
- });
265
- const streamView = await bob.riverConnection.client.getStream(spaceIdWithAlice);
266
- expect(streamView).toBeDefined();
267
- // after the snapshot, we no longer see the review
268
- expect(streamView.membershipContent.spaceReviews.length).toBe(0);
269
- // do some scrollback
270
- const unauthenticatedClient = new UnauthenticatedClient(alice.riverConnection.client.rpcClient);
271
- await unauthenticatedClient.scrollback(streamView);
272
- expect(streamView.membershipContent.spaceReviews.length).toBe(1);
273
- });
274
- });
275
- const isTipBlockchainTransaction = (e) => e.content?.kind === RiverTimelineEvent.TipEvent;
276
- const isUserBlockchainTransaction = (e) => e.content?.kind === RiverTimelineEvent.UserBlockchainTransaction;
277
- const isUserReceivedBlockchainTransaction = (e) => e.content?.kind === RiverTimelineEvent.UserReceivedBlockchainTransaction;
278
- //# sourceMappingURL=transactions_SpaceReview.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transactions_SpaceReview.test.js","sourceRoot":"","sources":["../../../src/tests/multi/transactions_SpaceReview.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * @group with-entitlements
3
- */
4
- export {};
5
- //# sourceMappingURL=transactions_Tip.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transactions_Tip.test.d.ts","sourceRoot":"","sources":["../../../src/tests/multi/transactions_Tip.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}