Page MenuHomePhorge

D7655.1765128135.diff
No OneTemporary

Size
24 KB
Referenced Files
None
Subscribers
None

D7655.1765128135.diff

diff --git a/lib/shared/messages/add-members-message-spec.js b/lib/shared/messages/add-members-message-spec.js
--- a/lib/shared/messages/add-members-message-spec.js
+++ b/lib/shared/messages/add-members-message-spec.js
@@ -9,10 +9,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- AddMembersMessageData,
- AddMembersMessageInfo,
- RawAddMembersMessageInfo,
+import {
+ type AddMembersMessageData,
+ type AddMembersMessageInfo,
+ type RawAddMembersMessageInfo,
+ rawAddMembersMessageInfoValidator,
} from '../../types/messages/add-members.js';
import type { NotifTexts } from '../../types/notif-types.js';
import type { ThreadInfo } from '../../types/thread-types.js';
@@ -156,4 +157,6 @@
userIDs(rawMessageInfo: RawAddMembersMessageInfo): $ReadOnlyArray<string> {
return rawMessageInfo.addedUserIDs;
},
+
+ validator: rawAddMembersMessageInfoValidator,
});
diff --git a/lib/shared/messages/change-role-message-spec.js b/lib/shared/messages/change-role-message-spec.js
--- a/lib/shared/messages/change-role-message-spec.js
+++ b/lib/shared/messages/change-role-message-spec.js
@@ -14,10 +14,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- ChangeRoleMessageData,
- ChangeRoleMessageInfo,
- RawChangeRoleMessageInfo,
+import {
+ type ChangeRoleMessageData,
+ type ChangeRoleMessageInfo,
+ type RawChangeRoleMessageInfo,
+ rawChangeRoleMessageInfoValidator,
} from '../../types/messages/change-role.js';
import type { NotifTexts } from '../../types/notif-types.js';
import type { ThreadInfo } from '../../types/thread-types.js';
@@ -174,4 +175,6 @@
},
generatesNotifs: async () => pushTypes.NOTIF,
+
+ validator: rawChangeRoleMessageInfoValidator,
});
diff --git a/lib/shared/messages/change-settings-message-spec.js b/lib/shared/messages/change-settings-message-spec.js
--- a/lib/shared/messages/change-settings-message-spec.js
+++ b/lib/shared/messages/change-settings-message-spec.js
@@ -13,10 +13,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- ChangeSettingsMessageData,
- ChangeSettingsMessageInfo,
- RawChangeSettingsMessageInfo,
+import {
+ type ChangeSettingsMessageData,
+ type ChangeSettingsMessageInfo,
+ type RawChangeSettingsMessageInfo,
+ rawChangeSettingsMessageInfoValidator,
} from '../../types/messages/change-settings.js';
import type { NotifTexts } from '../../types/notif-types.js';
import { assertThreadType } from '../../types/thread-types.js';
@@ -173,4 +174,6 @@
},
generatesNotifs: async () => pushTypes.NOTIF,
+
+ validator: rawChangeSettingsMessageInfoValidator,
});
diff --git a/lib/shared/messages/create-entry-message-spec.js b/lib/shared/messages/create-entry-message-spec.js
--- a/lib/shared/messages/create-entry-message-spec.js
+++ b/lib/shared/messages/create-entry-message-spec.js
@@ -9,10 +9,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- CreateEntryMessageData,
- CreateEntryMessageInfo,
- RawCreateEntryMessageInfo,
+import {
+ type CreateEntryMessageData,
+ type CreateEntryMessageInfo,
+ type RawCreateEntryMessageInfo,
+ rawCreateEntryMessageInfoValidator,
} from '../../types/messages/create-entry.js';
import type { NotifTexts } from '../../types/notif-types.js';
import type { ThreadInfo } from '../../types/thread-types.js';
@@ -119,4 +120,6 @@
},
generatesNotifs: async () => pushTypes.NOTIF,
+
+ validator: rawCreateEntryMessageInfoValidator,
});
diff --git a/lib/shared/messages/create-sidebar-message-spec.js b/lib/shared/messages/create-sidebar-message-spec.js
--- a/lib/shared/messages/create-sidebar-message-spec.js
+++ b/lib/shared/messages/create-sidebar-message-spec.js
@@ -16,10 +16,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- CreateSidebarMessageData,
- CreateSidebarMessageInfo,
- RawCreateSidebarMessageInfo,
+import {
+ type CreateSidebarMessageData,
+ type CreateSidebarMessageInfo,
+ type RawCreateSidebarMessageInfo,
+ rawCreateSidebarMessageInfoValidator,
} from '../../types/messages/create-sidebar.js';
import type { RawUnsupportedMessageInfo } from '../../types/messages/unsupported.js';
import type { NotifTexts } from '../../types/notif-types.js';
@@ -227,4 +228,6 @@
const { parentThreadID } = rawMessageInfo.initialThreadState;
return [parentThreadID];
},
+
+ validator: rawCreateSidebarMessageInfoValidator,
});
diff --git a/lib/shared/messages/create-sub-thread-message-spec.js b/lib/shared/messages/create-sub-thread-message-spec.js
--- a/lib/shared/messages/create-sub-thread-message-spec.js
+++ b/lib/shared/messages/create-sub-thread-message-spec.js
@@ -15,10 +15,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- CreateSubthreadMessageData,
- CreateSubthreadMessageInfo,
- RawCreateSubthreadMessageInfo,
+import {
+ type CreateSubthreadMessageData,
+ type CreateSubthreadMessageInfo,
+ type RawCreateSubthreadMessageInfo,
+ rawCreateSubthreadMessageInfoValidator,
} from '../../types/messages/create-subthread.js';
import type { NotifTexts } from '../../types/notif-types.js';
import { threadPermissions, threadTypes } from '../../types/thread-types.js';
@@ -160,4 +161,6 @@
): $ReadOnlyArray<string> {
return [rawMessageInfo.childThreadID];
},
+
+ validator: rawCreateSubthreadMessageInfoValidator,
});
diff --git a/lib/shared/messages/create-thread-message-spec.js b/lib/shared/messages/create-thread-message-spec.js
--- a/lib/shared/messages/create-thread-message-spec.js
+++ b/lib/shared/messages/create-thread-message-spec.js
@@ -14,10 +14,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- CreateThreadMessageData,
- CreateThreadMessageInfo,
- RawCreateThreadMessageInfo,
+import {
+ type CreateThreadMessageData,
+ type CreateThreadMessageInfo,
+ type RawCreateThreadMessageInfo,
+ rawCreateThreadMessageInfoValidator,
} from '../../types/messages/create-thread.js';
import type { NotifTexts } from '../../types/notif-types.js';
import type { ThreadInfo } from '../../types/thread-types.js';
@@ -200,4 +201,6 @@
const { parentThreadID } = rawMessageInfo.initialThreadState;
return parentThreadID ? [parentThreadID] : [];
},
+
+ validator: rawCreateThreadMessageInfoValidator,
});
diff --git a/lib/shared/messages/delete-entry-message-spec.js b/lib/shared/messages/delete-entry-message-spec.js
--- a/lib/shared/messages/delete-entry-message-spec.js
+++ b/lib/shared/messages/delete-entry-message-spec.js
@@ -9,10 +9,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- DeleteEntryMessageData,
- DeleteEntryMessageInfo,
- RawDeleteEntryMessageInfo,
+import {
+ type DeleteEntryMessageData,
+ type DeleteEntryMessageInfo,
+ type RawDeleteEntryMessageInfo,
+ rawDeleteEntryMessageInfoValidator,
} from '../../types/messages/delete-entry.js';
import type { NotifTexts } from '../../types/notif-types.js';
import type { ThreadInfo } from '../../types/thread-types.js';
@@ -134,4 +135,6 @@
},
generatesNotifs: async () => pushTypes.NOTIF,
+
+ validator: rawDeleteEntryMessageInfoValidator,
});
diff --git a/lib/shared/messages/edit-entry-message-spec.js b/lib/shared/messages/edit-entry-message-spec.js
--- a/lib/shared/messages/edit-entry-message-spec.js
+++ b/lib/shared/messages/edit-entry-message-spec.js
@@ -9,10 +9,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- EditEntryMessageData,
- EditEntryMessageInfo,
- RawEditEntryMessageInfo,
+import {
+ type EditEntryMessageData,
+ type EditEntryMessageInfo,
+ type RawEditEntryMessageInfo,
+ rawEditEntryMessageInfoValidator,
} from '../../types/messages/edit-entry.js';
import type { NotifTexts } from '../../types/notif-types.js';
import type { ThreadInfo } from '../../types/thread-types.js';
@@ -119,4 +120,6 @@
},
generatesNotifs: async () => pushTypes.NOTIF,
+
+ validator: rawEditEntryMessageInfoValidator,
});
diff --git a/lib/shared/messages/edit-message-spec.js b/lib/shared/messages/edit-message-spec.js
--- a/lib/shared/messages/edit-message-spec.js
+++ b/lib/shared/messages/edit-message-spec.js
@@ -9,10 +9,11 @@
messageTypes,
} from '../../types/message-types-enum.js';
import { type ClientDBMessageInfo } from '../../types/message-types.js';
-import type {
- EditMessageData,
- RawEditMessageInfo,
- EditMessageInfo,
+import {
+ type EditMessageData,
+ type RawEditMessageInfo,
+ type EditMessageInfo,
+ rawEditMessageInfoValidator,
} from '../../types/messages/edit.js';
import type { RawUnsupportedMessageInfo } from '../../types/messages/unsupported.js';
import type { RelativeUserInfo } from '../../types/user-types.js';
@@ -140,4 +141,6 @@
},
generatesNotifs: async () => undefined,
+
+ validator: rawEditMessageInfoValidator,
});
diff --git a/lib/shared/messages/join-thread-message-spec.js b/lib/shared/messages/join-thread-message-spec.js
--- a/lib/shared/messages/join-thread-message-spec.js
+++ b/lib/shared/messages/join-thread-message-spec.js
@@ -9,10 +9,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- JoinThreadMessageData,
- JoinThreadMessageInfo,
- RawJoinThreadMessageInfo,
+import {
+ type JoinThreadMessageData,
+ type JoinThreadMessageInfo,
+ type RawJoinThreadMessageInfo,
+ rawJoinThreadMessageInfoValidator,
} from '../../types/messages/join-thread.js';
import type { NotifTexts } from '../../types/notif-types.js';
import type { ThreadInfo } from '../../types/thread-types.js';
@@ -119,4 +120,6 @@
},
generatesNotifs: async () => undefined,
+
+ validator: rawJoinThreadMessageInfoValidator,
});
diff --git a/lib/shared/messages/leave-thread-message-spec.js b/lib/shared/messages/leave-thread-message-spec.js
--- a/lib/shared/messages/leave-thread-message-spec.js
+++ b/lib/shared/messages/leave-thread-message-spec.js
@@ -9,10 +9,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- LeaveThreadMessageData,
- LeaveThreadMessageInfo,
- RawLeaveThreadMessageInfo,
+import {
+ type LeaveThreadMessageData,
+ type LeaveThreadMessageInfo,
+ type RawLeaveThreadMessageInfo,
+ rawLeaveThreadMessageInfoValidator,
} from '../../types/messages/leave-thread.js';
import type { NotifTexts } from '../../types/notif-types.js';
import type { ThreadInfo } from '../../types/thread-types.js';
@@ -119,4 +120,6 @@
},
generatesNotifs: async () => undefined,
+
+ validator: rawLeaveThreadMessageInfoValidator,
});
diff --git a/lib/shared/messages/message-spec.js b/lib/shared/messages/message-spec.js
--- a/lib/shared/messages/message-spec.js
+++ b/lib/shared/messages/message-spec.js
@@ -1,5 +1,7 @@
// @flow
+import type { TType } from 'tcomb';
+
import type { PlatformDetails } from '../../types/device-types.js';
import type { Media } from '../../types/media-types.js';
import type {
@@ -114,4 +116,5 @@
+threadIDs?: (rawMessageInfo: RawInfo) => $ReadOnlyArray<string>,
+includedInRepliesCount?: boolean,
+useCreationSideEffectsFunc?: () => CreationSideEffectsFunc<RawInfo>,
+ +validator: TType<RawInfo>,
};
diff --git a/lib/shared/messages/multimedia-message-spec.js b/lib/shared/messages/multimedia-message-spec.js
--- a/lib/shared/messages/multimedia-message-spec.js
+++ b/lib/shared/messages/multimedia-message-spec.js
@@ -18,7 +18,10 @@
assertMessageType,
messageTypes,
} from '../../types/message-types-enum.js';
-import { isMediaMessageType } from '../../types/message-types.js';
+import {
+ isMediaMessageType,
+ rawMultimediaMessageInfoValidator,
+} from '../../types/message-types.js';
import type {
MessageInfo,
RawMessageInfo,
@@ -323,6 +326,8 @@
) => (messageData.sidebarCreation ? undefined : pushTypes.NOTIF),
includedInRepliesCount: true,
+
+ validator: rawMultimediaMessageInfoValidator,
});
// Four photos were uploaded before dimensions were calculated server-side,
diff --git a/lib/shared/messages/reaction-message-spec.js b/lib/shared/messages/reaction-message-spec.js
--- a/lib/shared/messages/reaction-message-spec.js
+++ b/lib/shared/messages/reaction-message-spec.js
@@ -18,10 +18,11 @@
type MessageInfo,
type ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- ReactionMessageData,
- RawReactionMessageInfo,
- ReactionMessageInfo,
+import {
+ type ReactionMessageData,
+ type RawReactionMessageInfo,
+ type ReactionMessageInfo,
+ rawReactionMessageInfoValidator,
} from '../../types/messages/reaction.js';
import type { RawUnsupportedMessageInfo } from '../../types/messages/unsupported.js';
import type { NotifTexts } from '../../types/notif-types.js';
@@ -216,4 +217,6 @@
}
return action === 'add_reaction' ? pushTypes.NOTIF : pushTypes.RESCIND;
},
+
+ validator: rawReactionMessageInfoValidator,
});
diff --git a/lib/shared/messages/remove-members-message-spec.js b/lib/shared/messages/remove-members-message-spec.js
--- a/lib/shared/messages/remove-members-message-spec.js
+++ b/lib/shared/messages/remove-members-message-spec.js
@@ -9,10 +9,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- RawRemoveMembersMessageInfo,
- RemoveMembersMessageData,
- RemoveMembersMessageInfo,
+import {
+ type RawRemoveMembersMessageInfo,
+ type RemoveMembersMessageData,
+ type RemoveMembersMessageInfo,
+ rawRemoveMembersMessageInfoValidator,
} from '../../types/messages/remove-members.js';
import type { NotifTexts } from '../../types/notif-types.js';
import type { ThreadInfo } from '../../types/thread-types.js';
@@ -156,4 +157,6 @@
userIDs(rawMessageInfo: RawRemoveMembersMessageInfo): $ReadOnlyArray<string> {
return rawMessageInfo.removedUserIDs;
},
+
+ validator: rawRemoveMembersMessageInfoValidator,
});
diff --git a/lib/shared/messages/restore-entry-message-spec.js b/lib/shared/messages/restore-entry-message-spec.js
--- a/lib/shared/messages/restore-entry-message-spec.js
+++ b/lib/shared/messages/restore-entry-message-spec.js
@@ -9,10 +9,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- RawRestoreEntryMessageInfo,
- RestoreEntryMessageData,
- RestoreEntryMessageInfo,
+import {
+ type RawRestoreEntryMessageInfo,
+ type RestoreEntryMessageData,
+ type RestoreEntryMessageInfo,
+ rawRestoreEntryMessageInfoValidator,
} from '../../types/messages/restore-entry.js';
import type { NotifTexts } from '../../types/notif-types.js';
import type { ThreadInfo } from '../../types/thread-types.js';
@@ -134,4 +135,6 @@
},
generatesNotifs: async () => pushTypes.NOTIF,
+
+ validator: rawRestoreEntryMessageInfoValidator,
});
diff --git a/lib/shared/messages/sidebar-source-message-spec.js b/lib/shared/messages/sidebar-source-message-spec.js
--- a/lib/shared/messages/sidebar-source-message-spec.js
+++ b/lib/shared/messages/sidebar-source-message-spec.js
@@ -17,6 +17,7 @@
type SidebarSourceMessageInfo,
type ClientDBMessageInfo,
isMessageSidebarSourceReactionOrEdit,
+ rawSidebarSourceMessageInfoValidator,
} from '../../types/message-types.js';
import type { RawUnsupportedMessageInfo } from '../../types/messages/unsupported.js';
import type { NotifTexts } from '../../types/notif-types.js';
@@ -173,4 +174,6 @@
generatesNotifs: async () => pushTypes.NOTIF,
startsThread: true,
+
+ validator: rawSidebarSourceMessageInfoValidator,
});
diff --git a/lib/shared/messages/text-message-spec.js b/lib/shared/messages/text-message-spec.js
--- a/lib/shared/messages/text-message-spec.js
+++ b/lib/shared/messages/text-message-spec.js
@@ -19,10 +19,11 @@
MessageInfo,
ClientDBMessageInfo,
} from '../../types/message-types.js';
-import type {
- RawTextMessageInfo,
- TextMessageData,
- TextMessageInfo,
+import {
+ type RawTextMessageInfo,
+ type TextMessageData,
+ type TextMessageInfo,
+ rawTextMessageInfoValidator,
} from '../../types/messages/text.js';
import type { NotifTexts } from '../../types/notif-types.js';
import { threadTypes } from '../../types/thread-types.js';
@@ -312,4 +313,6 @@
await addMembersPromise;
};
},
+
+ validator: rawTextMessageInfoValidator,
});
diff --git a/lib/shared/messages/toggle-pin-message-spec.js b/lib/shared/messages/toggle-pin-message-spec.js
--- a/lib/shared/messages/toggle-pin-message-spec.js
+++ b/lib/shared/messages/toggle-pin-message-spec.js
@@ -10,10 +10,11 @@
import type { PlatformDetails } from '../../types/device-types';
import { messageTypes } from '../../types/message-types-enum.js';
import type { ClientDBMessageInfo } from '../../types/message-types.js';
-import type {
- TogglePinMessageData,
- TogglePinMessageInfo,
- RawTogglePinMessageInfo,
+import {
+ type TogglePinMessageData,
+ type TogglePinMessageInfo,
+ type RawTogglePinMessageInfo,
+ rawTogglePinMessageInfoValidator,
} from '../../types/messages/toggle-pin.js';
import type { RawUnsupportedMessageInfo } from '../../types/messages/unsupported';
import type { RelativeUserInfo } from '../../types/user-types.js';
@@ -155,4 +156,6 @@
},
generatesNotifs: async () => undefined,
+
+ validator: rawTogglePinMessageInfoValidator,
});
diff --git a/lib/shared/messages/unsupported-message-spec.js b/lib/shared/messages/unsupported-message-spec.js
--- a/lib/shared/messages/unsupported-message-spec.js
+++ b/lib/shared/messages/unsupported-message-spec.js
@@ -5,9 +5,10 @@
import { pushTypes, type MessageSpec } from './message-spec.js';
import { messageTypes } from '../../types/message-types-enum.js';
import { type ClientDBMessageInfo } from '../../types/message-types.js';
-import type {
- RawUnsupportedMessageInfo,
- UnsupportedMessageInfo,
+import {
+ type RawUnsupportedMessageInfo,
+ type UnsupportedMessageInfo,
+ rawUnsupportedMessageInfoValidator,
} from '../../types/messages/unsupported.js';
import type { RelativeUserInfo } from '../../types/user-types.js';
import { ET, type EntityText } from '../../utils/entity-text.js';
@@ -72,4 +73,6 @@
},
generatesNotifs: async () => pushTypes.NOTIF,
+
+ validator: rawUnsupportedMessageInfoValidator,
});
diff --git a/lib/shared/messages/update-relationship-message-spec.js b/lib/shared/messages/update-relationship-message-spec.js
--- a/lib/shared/messages/update-relationship-message-spec.js
+++ b/lib/shared/messages/update-relationship-message-spec.js
@@ -15,10 +15,11 @@
ClientDBMessageInfo,
} from '../../types/message-types.js';
import type { RawUnsupportedMessageInfo } from '../../types/messages/unsupported.js';
-import type {
- RawUpdateRelationshipMessageInfo,
- UpdateRelationshipMessageData,
- UpdateRelationshipMessageInfo,
+import {
+ type RawUpdateRelationshipMessageInfo,
+ type UpdateRelationshipMessageData,
+ type UpdateRelationshipMessageInfo,
+ rawUpdateRelationshipMessageInfoValidator,
} from '../../types/messages/update-relationship.js';
import type { NotifTexts } from '../../types/notif-types.js';
import type { ThreadInfo } from '../../types/thread-types.js';
@@ -175,4 +176,6 @@
},
generatesNotifs: async () => pushTypes.NOTIF,
+
+ validator: rawUpdateRelationshipMessageInfoValidator,
});
diff --git a/lib/types/message-types.js b/lib/types/message-types.js
--- a/lib/types/message-types.js
+++ b/lib/types/message-types.js
@@ -239,10 +239,8 @@
export type RawMultimediaMessageInfo =
| RawImagesMessageInfo
| RawMediaMessageInfo;
-const rawMultimediaMessageInfoValidator = t.union([
- rawImagesMessageInfoValidator,
- rawMediaMessageInfoValidator,
-]);
+export const rawMultimediaMessageInfoValidator: TUnion<RawMultimediaMessageInfo> =
+ t.union([rawImagesMessageInfoValidator, rawMediaMessageInfoValidator]);
export type RawComposableMessageInfo =
| RawTextMessageInfo
diff --git a/lib/types/validation.test.js b/lib/types/validation.test.js
--- a/lib/types/validation.test.js
+++ b/lib/types/validation.test.js
@@ -8,28 +8,7 @@
mediaValidator,
} from './media-types.js';
import { messageTypes } from './message-types-enum.js';
-import { rawSidebarSourceMessageInfoValidator } from './message-types.js';
-import { rawAddMembersMessageInfoValidator } from './messages/add-members.js';
-import { rawChangeRoleMessageInfoValidator } from './messages/change-role.js';
-import { rawChangeSettingsMessageInfoValidator } from './messages/change-settings.js';
-import { rawCreateEntryMessageInfoValidator } from './messages/create-entry.js';
-import { rawCreateSidebarMessageInfoValidator } from './messages/create-sidebar.js';
-import { rawCreateSubthreadMessageInfoValidator } from './messages/create-subthread.js';
-import { rawCreateThreadMessageInfoValidator } from './messages/create-thread.js';
-import { rawDeleteEntryMessageInfoValidator } from './messages/delete-entry.js';
-import { rawEditEntryMessageInfoValidator } from './messages/edit-entry.js';
-import { rawEditMessageInfoValidator } from './messages/edit.js';
-import { rawImagesMessageInfoValidator } from './messages/images.js';
-import { rawJoinThreadMessageInfoValidator } from './messages/join-thread.js';
-import { rawLeaveThreadMessageInfoValidator } from './messages/leave-thread.js';
-import { rawMediaMessageInfoValidator } from './messages/media.js';
-import { rawReactionMessageInfoValidator } from './messages/reaction.js';
-import { rawRemoveMembersMessageInfoValidator } from './messages/remove-members.js';
-import { rawRestoreEntryMessageInfoValidator } from './messages/restore-entry.js';
-import { rawTextMessageInfoValidator } from './messages/text.js';
-import { rawTogglePinMessageInfoValidator } from './messages/toggle-pin.js';
-import { rawUnsupportedMessageInfoValidator } from './messages/unsupported.js';
-import { rawUpdateRelationshipMessageInfoValidator } from './messages/update-relationship.js';
+import { messageSpecs } from '../shared/messages/message-specs.js';
describe('media validation', () => {
const photo = {
@@ -314,45 +293,25 @@
},
];
- const validatorByMessageType = {
- '0': rawTextMessageInfoValidator,
- '1': rawCreateThreadMessageInfoValidator,
- '2': rawAddMembersMessageInfoValidator,
- '3': rawCreateSubthreadMessageInfoValidator,
- '4': rawChangeSettingsMessageInfoValidator,
- '5': rawRemoveMembersMessageInfoValidator,
- '6': rawChangeRoleMessageInfoValidator,
- '7': rawLeaveThreadMessageInfoValidator,
- '8': rawJoinThreadMessageInfoValidator,
- '9': rawCreateEntryMessageInfoValidator,
- '10': rawEditEntryMessageInfoValidator,
- '11': rawDeleteEntryMessageInfoValidator,
- '12': rawRestoreEntryMessageInfoValidator,
- '13': rawUnsupportedMessageInfoValidator,
- '14': rawImagesMessageInfoValidator,
- '15': rawMediaMessageInfoValidator,
- '16': rawUpdateRelationshipMessageInfoValidator,
- '17': rawSidebarSourceMessageInfoValidator,
- '18': rawCreateSidebarMessageInfoValidator,
- '19': rawReactionMessageInfoValidator,
- '20': rawEditMessageInfoValidator,
- '21': rawTogglePinMessageInfoValidator,
- };
-
- for (const validatorMessageType in validatorByMessageType) {
- const validator = validatorByMessageType[validatorMessageType];
- const validatorMessageTypeName = _findKey(
- e => e === Number(validatorMessageType),
- )(messageTypes);
+ for (const validatorMessageTypeName in messageTypes) {
+ const validatorMessageType = messageTypes[validatorMessageTypeName];
+ const validator = messageSpecs[validatorMessageType].validator;
for (const message of messages) {
const messageTypeName = _findKey(e => e === message.type)(messageTypes);
- if (Number(validatorMessageType) === message.type) {
+ if (validatorMessageType === message.type) {
it(`${validatorMessageTypeName} should validate ${messageTypeName}`, () => {
expect(validator.is(message)).toBe(true);
});
- } else {
+ } else if (
+ !(
+ (validatorMessageType === messageTypes.IMAGES &&
+ message.type === messageTypes.MULTIMEDIA) ||
+ (validatorMessageType === messageTypes.MULTIMEDIA &&
+ message.type === messageTypes.IMAGES)
+ )
+ ) {
it(`${validatorMessageTypeName} shouldn't validate ${messageTypeName}`, () => {
expect(validator.is(message)).toBe(false);
});

File Metadata

Mime Type
text/plain
Expires
Sun, Dec 7, 5:22 PM (17 h, 30 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
5845164
Default Alt Text
D7655.1765128135.diff (24 KB)

Event Timeline