1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
/*
This file is part of GNU Taler
(C) 2021 Taler Systems S.A.
GNU Taler is free software; you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation; either version 3, or (at your option) any later version.
GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
*/
/**
*
* @author Sebastian Javier Marchano (sebasjm)
*/
import { h } from "preact";
import { ProductList } from "../src/components/product/ProductList.js";
// See: https://github.com/preactjs/enzyme-adapter-preact-pure
// import { shallow } from 'enzyme';
import * as backend from "../src/context/config.js";
import { render, findAllByText } from "@testing-library/preact";
import * as i18n from "../src/context/translation.js";
import * as jedLib from "jed";
const handler = new jedLib.Jed("en");
describe("Initial Test of the Sidebar", () => {
beforeEach(() => {
jest
.spyOn(backend, "useConfigContext")
.mockImplementation(() => ({ version: "", currency: "" }));
jest.spyOn(i18n, "useTranslationContext").mockImplementation(() => ({
changeLanguage: () => null,
handler,
lang: "en",
}));
});
test("Product list renders a table", () => {
const context = render(
<ProductList
list={[
{
description: "description of the product",
image: "asdasda",
price: "USD:10",
quantity: 1,
taxes: [{ name: "VAT", tax: "EUR:1" }],
unit: "book",
},
]}
/>,
);
expect(context.findAllByText("description of the product")).toBeDefined();
// expect(context.find('table tr td img').map(img => img.prop('src'))).toEqual('');
});
});
|