test: drop now-empty remote runner (#35343)
* test: drop the now-empty remote runner from CI * move fixtures to spec-main * remove remote runner * fix stuff * remove global-paths hack * move ts-smoke to spec/ * fix test after merge * rename spec-main to spec * no need to ignore spec/node_modules twice * simplify spec-runner a little * no need to hash pj/yl twice * undo lint change to verify-mksnapshot.py * excessive .. * update electron_woa_testing.yml * don't search for test-results-remote.xml it is never produced now
This commit is contained in:
parent
e87c4015fe
commit
db7c92fd57
327 changed files with 950 additions and 1707 deletions
149
spec/api-notification-spec.ts
Normal file
149
spec/api-notification-spec.ts
Normal file
|
@ -0,0 +1,149 @@
|
|||
import { expect } from 'chai';
|
||||
import { Notification } from 'electron/main';
|
||||
import { emittedOnce } from './events-helpers';
|
||||
import { ifit } from './spec-helpers';
|
||||
|
||||
describe('Notification module', () => {
|
||||
it('is supported', () => {
|
||||
expect(Notification.isSupported()).to.be.a('boolean');
|
||||
});
|
||||
|
||||
it('inits, gets and sets basic string properties correctly', () => {
|
||||
const n = new Notification({
|
||||
title: 'title',
|
||||
subtitle: 'subtitle',
|
||||
body: 'body',
|
||||
replyPlaceholder: 'replyPlaceholder',
|
||||
sound: 'sound',
|
||||
closeButtonText: 'closeButtonText'
|
||||
});
|
||||
|
||||
expect(n.title).to.equal('title');
|
||||
n.title = 'title1';
|
||||
expect(n.title).to.equal('title1');
|
||||
|
||||
expect(n.subtitle).equal('subtitle');
|
||||
n.subtitle = 'subtitle1';
|
||||
expect(n.subtitle).equal('subtitle1');
|
||||
|
||||
expect(n.body).to.equal('body');
|
||||
n.body = 'body1';
|
||||
expect(n.body).to.equal('body1');
|
||||
|
||||
expect(n.replyPlaceholder).to.equal('replyPlaceholder');
|
||||
n.replyPlaceholder = 'replyPlaceholder1';
|
||||
expect(n.replyPlaceholder).to.equal('replyPlaceholder1');
|
||||
|
||||
expect(n.sound).to.equal('sound');
|
||||
n.sound = 'sound1';
|
||||
expect(n.sound).to.equal('sound1');
|
||||
|
||||
expect(n.closeButtonText).to.equal('closeButtonText');
|
||||
n.closeButtonText = 'closeButtonText1';
|
||||
expect(n.closeButtonText).to.equal('closeButtonText1');
|
||||
});
|
||||
|
||||
it('inits, gets and sets basic boolean properties correctly', () => {
|
||||
const n = new Notification({
|
||||
title: 'title',
|
||||
body: 'body',
|
||||
silent: true,
|
||||
hasReply: true
|
||||
});
|
||||
|
||||
expect(n.silent).to.be.true('silent');
|
||||
n.silent = false;
|
||||
expect(n.silent).to.be.false('silent');
|
||||
|
||||
expect(n.hasReply).to.be.true('has reply');
|
||||
n.hasReply = false;
|
||||
expect(n.hasReply).to.be.false('has reply');
|
||||
});
|
||||
|
||||
it('inits, gets and sets actions correctly', () => {
|
||||
const n = new Notification({
|
||||
title: 'title',
|
||||
body: 'body',
|
||||
actions: [
|
||||
{
|
||||
type: 'button',
|
||||
text: '1'
|
||||
}, {
|
||||
type: 'button',
|
||||
text: '2'
|
||||
}
|
||||
]
|
||||
});
|
||||
|
||||
expect(n.actions.length).to.equal(2);
|
||||
expect(n.actions[0].type).to.equal('button');
|
||||
expect(n.actions[0].text).to.equal('1');
|
||||
expect(n.actions[1].type).to.equal('button');
|
||||
expect(n.actions[1].text).to.equal('2');
|
||||
|
||||
n.actions = [
|
||||
{
|
||||
type: 'button',
|
||||
text: '3'
|
||||
}, {
|
||||
type: 'button',
|
||||
text: '4'
|
||||
}
|
||||
];
|
||||
|
||||
expect(n.actions.length).to.equal(2);
|
||||
expect(n.actions[0].type).to.equal('button');
|
||||
expect(n.actions[0].text).to.equal('3');
|
||||
expect(n.actions[1].type).to.equal('button');
|
||||
expect(n.actions[1].text).to.equal('4');
|
||||
});
|
||||
|
||||
it('can be shown and closed', () => {
|
||||
const n = new Notification({
|
||||
title: 'test notification',
|
||||
body: 'test body',
|
||||
silent: true
|
||||
});
|
||||
n.show();
|
||||
n.close();
|
||||
});
|
||||
|
||||
ifit(process.platform === 'win32')('inits, gets and sets custom xml', () => {
|
||||
const n = new Notification({
|
||||
toastXml: '<xml/>'
|
||||
});
|
||||
|
||||
expect(n.toastXml).to.equal('<xml/>');
|
||||
});
|
||||
|
||||
ifit(process.platform === 'darwin')('emits show and close events', async () => {
|
||||
const n = new Notification({
|
||||
title: 'test notification',
|
||||
body: 'test body',
|
||||
silent: true
|
||||
});
|
||||
{
|
||||
const e = emittedOnce(n, 'show');
|
||||
n.show();
|
||||
await e;
|
||||
}
|
||||
{
|
||||
const e = emittedOnce(n, 'close');
|
||||
n.close();
|
||||
await e;
|
||||
}
|
||||
});
|
||||
|
||||
ifit(process.platform === 'win32')('emits failed event', async () => {
|
||||
const n = new Notification({
|
||||
toastXml: 'not xml'
|
||||
});
|
||||
{
|
||||
const e = emittedOnce(n, 'failed');
|
||||
n.show();
|
||||
await e;
|
||||
}
|
||||
});
|
||||
|
||||
// TODO(sethlu): Find way to test init with notification icon?
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue