react-native-firebase/bridge/e2e/crash/crash.e2e.js

53 lines
1.5 KiB
JavaScript

describe('crash()', () => {
describe('setCrashCollectionEnabled()', () => {
it('true', async () => {
await firebase.crash().setCrashCollectionEnabled(true);
await sleep(100);
const enabled = await firebase.crash().isCrashCollectionEnabled();
should.equal(enabled, true, 'collection enabled boolean should be true');
});
it('false', async () => {
await firebase.crash().setCrashCollectionEnabled(false);
// does not exist on ios
if (device.getPlatform() === 'android') {
await sleep(150);
const enabled = await firebase.crash().isCrashCollectionEnabled();
should.equal(
enabled,
false,
'collection enabled boolean should be false'
);
}
});
});
describe('log()', () => {
it('accepts a string log', async () => {
await firebase.crash().log('hello world');
await sleep(50);
});
});
describe('logcat()', () => {
it('accepts a log level, log tag and message', async () => {
await firebase.crash().logcat(0, 'HELLO_TAG', 'hello world');
await sleep(50);
});
});
describe('report()', () => {
it('accepts an error with customisable stack size', async () => {
const error = new Error('Oh noes!');
await firebase.crash().report(error);
await firebase.crash().report(error, 5);
error.code = 'NETWORK_ERROR';
await firebase.crash().report(error);
delete error.message;
await firebase.crash().report(error);
await sleep(50);
});
});
});