Команда dd для записи файла ISO на USB-накопитель:
sudo dd if=ubuntu-20.04.1-live-server-amd64.iso of=/dev/sda bs=1M status=progress
Команда dd для записи файла ISO на USB-накопитель:
sudo dd if=ubuntu-20.04.1-live-server-amd64.iso of=/dev/sda bs=1M status=progressВ Karma\Jasmine есть варианы для игнорирования выборочных тестов - xit, xdescribe. В этом посте - разберусь, какие есть варианты для этого - в Jest.
В данном случае - запустится только один тест - первый, так как второй тест - будет пропущен, у него стоит test.skip:
describe('my suite', () => {
test('my only true test', () => {
expect(1 + 1).toEqual(2);
});
// Этот тест будет пропущен
test.skip('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});В Jest для test.skip есть алиас по аналогии с Jasmine - xit; то есть по идее - можно написать так:
describe('my suite', () => {
test('my only true test', () => {
expect(1 + 1).toEqual(2);
});
// Этот тест будет пропущен
xit('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});Ссылка из официальной документации - Test.Skip
В данном случае - пропустится несколько тестов - первый и второй; третий - будет запущен:
describe('my suite', () => {
// этот тест --> пропустится
test.skip('one of my .only test', () => {
expect(1 + 1).toEqual(2);
});
// этот тест --> пропустится
test.skip('other of my .only test', () => {
expect(1 + 2).toEqual(3);
});
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});В Jest для test.skip есть алиас по аналогии с Jasmine - xit; то есть по идее - можно написать так:
describe('my suite', () => {
// этот тест --> пропустится
xit('one of my .only test', () => {
expect(1 + 1).toEqual(2);
});
// этот тест --> пропустится
xit('other of my .only test', () => {
expect(1 + 2).toEqual(3);
});
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});Ссылка из официальной документации - Test.Skip
Для игнорирования набора тестов при запуске - также можно использовать .skip. В данном случае - запустятся тесты только из первого набора (‘first suite’), для которого установлено describe; второй набор тестов (‘second suite’) - будет пропущен, так как у него установлен describe.skip:
describe('first suite', () => {
test('one of my .only test', () => {
expect(1 + 1).toEqual(2);
});
});
// эти тесты --> не запустятся
describe.skip('second suite', () => {
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});У .skip есть - алиас xdescribe; то есть, в Jest можно (по идее) написать по аналогии с Jasmine:
describe('first suite', () => {
test('one of my .only test', () => {
expect(1 + 1).toEqual(2);
});
});
// эти тесты --> не запустятся
xdescribe('second suite', () => {
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});Ссылка из официальной документации - Describe.Skip
Аналогично предыдущему вварианту, можно указать .skip для пропуска нескольких наборов тестов; в данном случае - будут запущены только два первых набора тестов:
// эти тесты --> запустятся
describe('my suite', () => {
test('one of my .only test', () => {
expect(1 + 1).toEqual(2);
});
});
// эти тесты --> запустятся
describe('other suite', () => {
test('other of my .only test', () => {
expect(1 + 2).toEqual(3);
});
});
// эти тесты --> будут пропущены
describe.skip('skipped other suite', () => {
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});У .skip в Jest есть - алиас xdescribe; то есть, в Jest можно (по идее) написать по аналогии с Jasmine:
// эти тесты --> запустятся
describe('my suite', () => {
test('one of my .only test', () => {
expect(1 + 1).toEqual(2);
});
});
// эти тесты --> запустятся
describe('other suite', () => {
test('other of my .only test', () => {
expect(1 + 2).toEqual(3);
});
});
// эти тесты --> будут пропущены
xdescribe('skipped other suite', () => {
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});Ссылка из официальной документации - Describe.Skip
В Karma\Jasmine есть варианы для запуска выборочных тестов - fit, fdescribe. В этом посте - разберусь, какие есть варианты для этого - в Jest.
В данном случае - запустится только один тест - первый:
describe('my suite', () => {
test.only('my only true test', () => {
expect(1 + 1).toEqual(2);
});
// этот тест --> не запустится
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});В Jest для test.only есть алиас по аналогии с Jasmine - fit; то есть по идее - можно написать так:
describe('my suite', () => {
fit('my only true test', () => {
expect(1 + 1).toEqual(2);
});
// этот тест --> не запустится
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});Ссылка из официальной документации - Test.Only
В данном случае - запустится несколько тестов - первый и второй; третий - будет пропущен:
describe('my suite', () => {
test.only('one of my .only test', () => {
expect(1 + 1).toEqual(2);
});
test.only('other of my .only test', () => {
expect(1 + 2).toEqual(3);
});
// этот тест --> не запустится
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});В Jest для test.only есть алиас по аналогии с Jasmine - fit; то есть по идее - можно написать так:
describe('my suite', () => {
fit('one of my .only test', () => {
expect(1 + 1).toEqual(2);
});
fit('other of my .only test', () => {
expect(1 + 2).toEqual(3);
});
// этот тест --> не запустится
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});Ссылка из официальной документации - Test.Only
Для выбора набора тестов для запуска - также можно использовать .only. В данном случае - запустятся тесты только из первого набора (‘first suite’), для которого установлено describe.only; второй набор тестов (‘second suite’) - будет пропущен:
describe.only('first suite', () => {
test('one of my .only test', () => {
expect(1 + 1).toEqual(2);
});
});
// эти тесты --> не запустятся
describe('second suite', () => {
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});У .only есть - алиас fdescribe; то есть, в Jest можно (по идее) написать по аналогии с Jasmine:
fdescribe('first suite', () => {
test('one of my .only test', () => {
expect(1 + 1).toEqual(2);
});
});
// эти тесты --> не запустятся
describe('second suite', () => {
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});Ссылка из официальной документации - Describe.Only
Аналогично предыдущему вварианту, можно указать .only для запуска нескольких наборов тестов; в данном случае - будут запущены только два первых набора тестов:
describe.only('my suite', () => {
test('one of my .only test', () => {
expect(1 + 1).toEqual(2);
});
});
describe.only('other suite', () => {
test('other of my .only test', () => {
expect(1 + 2).toEqual(3);
});
});
// эти тесты --> не запустятся
describe('skipped other suite', () => {
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});У .only есть - алиас fdescribe; то есть, в Jest можно (по идее) написать по аналогии с Jasmine:
fdescribe('my suite', () => {
test('one of my .only test', () => {
expect(1 + 1).toEqual(2);
});
});
fdescribe('other suite', () => {
test('other of my .only test', () => {
expect(1 + 2).toEqual(3);
});
});
// эти тесты --> не запустятся
describe('skipped other suite', () => {
test('my only true test', () => {
expect(1 + 1).toEqual(1);
});
});Ссылка из официальной документации - Describe.Only

toHaveBeenCalled() - это алиас для toBeCalled()
В Jasmine объект шпиона создается, используя функцию createSpyObj и передавая в него параметры имени класса и массива методов:
const serviceMock = createSpyObj('service', ['method_1', 'method_2', 'method_3', 'method_4', 'method_5']);В Jest просто создается объект с ожидаемыми свойствами, а функция jest.fn() создает методы-шпионы:
const serviceMock = {
method_1: jest.fn(),
method_2: jest.fn(),
method_3: jest.fn(),
method_4: jest.fn(),
method_5: jest.fn()
};У этой клавиатуры есть три кнопки Easy-Switch Keys - удобная штука для подключения клавиатуры по Bluetooth к разным устройствам (компьютерам):

Но иногда бывает такая ситуация, когда нужно отключить клавиатуру от уже подключенных устройств. Операция несложная, но - нужно некоторое время на поиск этой информации - решил сохранить у себя.