Добрый день! Кто может помочь решить 2 задачи, самому не понять, используя try catch
1. Функция calculateDiscount должна выбрасывать ошибку, если её аргументы не числа.
export function calculateDiscount(price, percent) {
return (price / 100) * percent;
}
2. Функция getMarketingPrice не должна выбрасывать ошибку, если в структуре товара нет информации про цены.
export function getMarketingPrice(product) {
const productObject = JSON.parse(product);
return productObject.prices.marketingPrice;
}
код автотестов
import { calculateDiscount, getMarketingPrice, getAvatarUrl } from './index';
test('calculateDiscount', () => {
expect(calculateDiscount(1000, 10)).toBe(100);
expect(() => {
calculateDiscount('1000', '10');
}).toThrow();
expect(() => {
calculateDiscount('1000', '10');
}).toThrowError(TypeError);
});
test('getMarketingPrice', () => {
expect(() => {
getMarketingPrice('{ "name": "Product" }');
}).not.toThrow();
expect(getMarketingPrice('{ "name": "Product" }')).toBeNull();
expect(getMarketingPrice('{ "name": "Product", "prices": { "marketingPrice": 1200 } }')).toBe(1200);
});
Заранее всем благодарен за помощь!!!