improve readme
This commit is contained in:
parent
0d81c22708
commit
1e6b2dd150
62
README
62
README
@ -3,18 +3,16 @@
|
|||||||
This repository contains the implementation of a wallet for GNU Taler written
|
This repository contains the implementation of a wallet for GNU Taler written
|
||||||
in TypeScript.
|
in TypeScript.
|
||||||
|
|
||||||
|
|
||||||
## Dependencies
|
## Dependencies
|
||||||
|
|
||||||
The following dependencies are required to build the wallet:
|
The following dependencies are required to build the wallet:
|
||||||
|
|
||||||
* python>=3.8
|
- python>=3.8
|
||||||
* nodejs>=12
|
- nodejs>=12
|
||||||
* jq
|
- jq
|
||||||
* npm
|
- npm
|
||||||
* pnpm
|
- pnpm
|
||||||
* zip
|
- zip
|
||||||
|
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
@ -44,7 +42,7 @@ packages/taler-wallet-webextension/extension/
|
|||||||
```
|
```
|
||||||
|
|
||||||
We also provide a `Dockerfile` for a container that can build the
|
We also provide a `Dockerfile` for a container that can build the
|
||||||
WebExtension. After you install docker, make sure the user is in group
|
WebExtension. After you install docker, make sure the user is in group
|
||||||
`docker` and (re-)start the docker daemon:
|
`docker` and (re-)start the docker daemon:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
@ -93,27 +91,51 @@ Then, you can proceed with these instructions:
|
|||||||
|
|
||||||
### Reviewing WebExtension UI examples
|
### Reviewing WebExtension UI examples
|
||||||
|
|
||||||
The WebExtension can be tested using Storybook. Using live server or building
|
The WebExtension can be tested using example stories.
|
||||||
static html files to deploy into nginx.
|
|
||||||
|
|
||||||
To run a live server use the 'dev-view' target
|
To run a live server use the 'dev-view' target
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
make webextension-dev-view
|
make webextension-dev-view
|
||||||
```
|
```
|
||||||
|
|
||||||
A server will start, usually at http://localhost:6006/.
|
Stories are defined with a \*.stories.tsx file [1], you are free to create new or edit
|
||||||
On the left it will have a navigation panel with examples organized in a tree view.
|
|
||||||
|
|
||||||
Stories are defined with a *.stories.tsx file [1], you are free to create new or edit
|
|
||||||
some and commit them in order to create a more complete set of examples.
|
some and commit them in order to create a more complete set of examples.
|
||||||
|
|
||||||
[1] look for them at packages/taler-wallet-webextension/src/**/*.stories.tsx
|
[1] look for them at packages/taler-wallet-webextension/src/\*_/_.stories.tsx
|
||||||
|
|
||||||
|
### WebExtension UI Components
|
||||||
|
|
||||||
|
Every group of component have a directory and a README.
|
||||||
|
Testing component is based in two main category:
|
||||||
|
|
||||||
|
- UI testing
|
||||||
|
- State transition testing
|
||||||
|
|
||||||
|
For UI testing, every story example will be taken as a unit test.
|
||||||
|
For State testing, every stateful component should have an `useStateComponent` function that will be tested in a \*.test.ts file.
|
||||||
|
|
||||||
|
### Testing WebExtension
|
||||||
|
|
||||||
|
After building the WebExtension look for the folder `extension`
|
||||||
|
Inside you will find v2 and v3 version referring to the manifest version being used.
|
||||||
|
|
||||||
|
Firefox users:
|
||||||
|
|
||||||
|
- Go to about:addons
|
||||||
|
- Then `debug addon` (or about:debugging#/runtime/this-firefox)
|
||||||
|
- Then `Load temporary addon...`
|
||||||
|
- Select the `taler-wallet-webextension-*.zip`
|
||||||
|
|
||||||
|
Chrome users:
|
||||||
|
|
||||||
|
- Settings -> More tools -> Extensions (or go to chrome://extensions/)
|
||||||
|
- `Load unpacked` button in the upper left
|
||||||
|
- Selected the `unpacked` folder in v2 or v3
|
||||||
|
|
||||||
# Integration Tests
|
# Integration Tests
|
||||||
|
|
||||||
This repository comes with integration tests for GNU Taler. To run them,
|
This repository comes with integration tests for GNU Taler. To run them,
|
||||||
install the wallet first. Then use the test runner from the
|
install the wallet first. Then use the test runner from the
|
||||||
taler-integrationtests package:
|
taler-integrationtests package:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
@ -121,7 +143,7 @@ cd packages/taler-integrationtests/
|
|||||||
./testrunner '*'
|
./testrunner '*'
|
||||||
```
|
```
|
||||||
|
|
||||||
The test runner accepts a bash glob pattern as parameter. Individual tests can
|
The test runner accepts a bash glob pattern as parameter. Individual tests can
|
||||||
be run by specifying their name.
|
be run by specifying their name.
|
||||||
|
|
||||||
To check coverage, use nyc from the root of the repository and make sure that the taler-wallet-cli
|
To check coverage, use nyc from the root of the repository and make sure that the taler-wallet-cli
|
||||||
|
Loading…
Reference in New Issue
Block a user