Improved windows notifications
This commit is contained in:
parent
584e39d569
commit
40c21b1666
31 changed files with 1227 additions and 151 deletions
96
ts/test-node/app/renderWindowsToast_test.tsx
Normal file
96
ts/test-node/app/renderWindowsToast_test.tsx
Normal file
|
@ -0,0 +1,96 @@
|
|||
// Copyright 2022 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
import { assert } from 'chai';
|
||||
|
||||
import { renderWindowsToast } from '../../../app/renderWindowsToast';
|
||||
import { NotificationType } from '../../services/notifications';
|
||||
|
||||
describe('renderWindowsToast', () => {
|
||||
it('handles toast with image', () => {
|
||||
const xml = renderWindowsToast({
|
||||
avatarPath: 'C:/temp/ab/abcd',
|
||||
body: 'Hi there!',
|
||||
heading: 'Alice',
|
||||
conversationId: 'conversation5',
|
||||
type: NotificationType.Message,
|
||||
});
|
||||
|
||||
const expected =
|
||||
'<toast launch="sgnl://show-conversation?conversationId=conversation5" activationType="protocol"><visual><binding template="ToastImageAndText02"><image id="1" src="file:///C:/temp/ab/abcd" hint-crop="circle"></image><text id="1">Alice</text><text id="2">Hi there!</text></binding></visual></toast>';
|
||||
|
||||
assert.strictEqual(xml, expected);
|
||||
});
|
||||
|
||||
it('handles toast with no image', () => {
|
||||
const xml = renderWindowsToast({
|
||||
body: 'Hi there!',
|
||||
heading: 'Alice',
|
||||
conversationId: 'conversation5',
|
||||
type: NotificationType.Message,
|
||||
});
|
||||
|
||||
const expected =
|
||||
'<toast launch="sgnl://show-conversation?conversationId=conversation5" activationType="protocol"><visual><binding template="ToastText02"><text id="1">Alice</text><text id="2">Hi there!</text></binding></visual></toast>';
|
||||
|
||||
assert.strictEqual(xml, expected);
|
||||
});
|
||||
|
||||
it('handles toast with messageId and storyId', () => {
|
||||
const xml = renderWindowsToast({
|
||||
body: 'Hi there!',
|
||||
heading: 'Alice',
|
||||
conversationId: 'conversation5',
|
||||
messageId: 'message6',
|
||||
storyId: 'story7',
|
||||
type: NotificationType.Message,
|
||||
});
|
||||
|
||||
const expected =
|
||||
'<toast launch="sgnl://show-conversation?conversationId=conversation5&messageId=message6&storyId=story7" activationType="protocol"><visual><binding template="ToastText02"><text id="1">Alice</text><text id="2">Hi there!</text></binding></visual></toast>';
|
||||
|
||||
assert.strictEqual(xml, expected);
|
||||
});
|
||||
|
||||
it('handles toast with for incoming call', () => {
|
||||
const xml = renderWindowsToast({
|
||||
body: 'Hi there!',
|
||||
heading: 'Alice',
|
||||
conversationId: 'conversation5',
|
||||
type: NotificationType.IncomingCall,
|
||||
});
|
||||
|
||||
const expected =
|
||||
'<toast launch="sgnl://show-window" activationType="protocol"><visual><binding template="ToastText02"><text id="1">Alice</text><text id="2">Hi there!</text></binding></visual></toast>';
|
||||
|
||||
assert.strictEqual(xml, expected);
|
||||
});
|
||||
|
||||
it('handles toast with for incoming group call', () => {
|
||||
const xml = renderWindowsToast({
|
||||
body: 'Hi there!',
|
||||
heading: 'Alice',
|
||||
conversationId: 'conversation5',
|
||||
type: NotificationType.IncomingGroupCall,
|
||||
});
|
||||
|
||||
const expected =
|
||||
'<toast launch="sgnl://start-call-lobby?conversationId=conversation5" activationType="protocol"><visual><binding template="ToastText02"><text id="1">Alice</text><text id="2">Hi there!</text></binding></visual></toast>';
|
||||
|
||||
assert.strictEqual(xml, expected);
|
||||
});
|
||||
|
||||
it('handles toast with for presenting screen', () => {
|
||||
const xml = renderWindowsToast({
|
||||
body: 'Hi there!',
|
||||
heading: 'Alice',
|
||||
conversationId: 'conversation5',
|
||||
type: NotificationType.IsPresenting,
|
||||
});
|
||||
|
||||
const expected =
|
||||
'<toast launch="sgnl://set-is-presenting" activationType="protocol"><visual><binding template="ToastText02"><text id="1">Alice</text><text id="2">Hi there!</text></binding></visual></toast>';
|
||||
|
||||
assert.strictEqual(xml, expected);
|
||||
});
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue