| * Fix build issues in util package * Update eslint TS plugins * Scope react app package name * Convert cli package back to CJS and dynamically import ESM * Upgrade ts-node version * Fix tests | ||
|---|---|---|
| .. | ||
| assembly | ||
| bin | ||
| environments | ||
| src | ||
| test | ||
| .env.example | ||
| .eslintignore | ||
| .eslintrc.json | ||
| .gitignore | ||
| .mocharc.yml | ||
| .npmignore | ||
| asconfig.json | ||
| hardhat.config.ts | ||
| ipld-demo.md | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
graph-node
Test
- 
Run yarnto install all dependencies.
- 
Create .env file $ cp .env.example .env
- 
Run yarn build:exampleto build the wasm files.
- 
Run yarn test.
Run
- 
Compare query results from two different GQL endpoints: - 
In a config file (sample: environments/compare-cli-config.toml):- 
Specify the two GQL endpoints in the endpoints config. 
- 
Specify the query directory in queries config or pass as an arg. to the CLI. 
- 
Example: [endpoints] gqlEndpoint1 = "http://localhost:8000/subgraphs/name/example1" gqlEndpoint2 = "http://localhost:3008/graphql" [queries] queryDir = "../graph-test-watcher/src/gql/queries"
 
- 
- 
Fire a query and get the diff of the results from the two GQL endpoints: ./bin/compare-entity --config-file <config-file-path> --query-dir [query-dir] --query-name <query-name> --block-hash <block-hash> --entity-id <entity-id> --raw-json [true | false]- config-file(alias:- cf): Configuration file path (toml) (required).
- query-dir(alias:- qf): Path to queries directory (defualt: taken from the config file).
- query-name(alias:- q): Query to be fired (required).
- block-hash(alias:- b): Block hash (required).
- entity-id(alias:- i): Entity Id (required).
- raw-json(alias:- j): Whether to print out a raw diff object (default:- false).
 Example: ```bash ./bin/compare-entity --config-file environments/compare-cli-config.toml --query-name author --block-hash 0xceed7ee9d3de97c99db12e42433cae9115bb311c516558539fb7114fa17d545b --entity-id 0xdc7d7a8920c8eecc098da5b7522a5f31509b5bfc ```
- 
The program will exit with code 1if the query results are not equal.
- 
For comparing queries in a range of blocks: - 
Config file should have the names of queries to be fired along with the corresponding entity names. [queries] queryDir = "../graph-test-watcher/src/gql/queries" [queries.names] author = "Author" blog = "Blog"The queries will be fired if the corresponding entities are updated. 
- 
Run the CLI: ./bin/compare-blocks --config-file environments/compare-cli-config.toml --start-block 1 --end-block 10
- 
For comparing entities after fetching updated entity ids from watcher database: - 
Set the watcher config file path and entities directory. [endpoints] gqlEndpoint1 = "http://localhost:8000/subgraphs/name/example1" gqlEndpoint2 = "http://localhost:3008/graphql" [queries] queryDir = "../graph-test-watcher/src/gql/queries" [queries.names] author = "Author" blog = "Blog" [watcher] configPath = "../../graph-test-watcher/environments/local.toml" entitiesDir = "../../graph-test-watcher/dist/entity/*"
- 
To verify diffState state generated at each block, set the watcher endpoint andverifyStateflag to true[watcher] configPath = "../../graph-test-watcher/environments/local.toml" entitiesDir = "../../graph-test-watcher/dist/entity/*" endpoint = "gqlEndpoint2" verifyState = true
- 
Run the CLI with fetch-idsflag set to true:\./bin/compare-blocks --config-file environments/compare-cli-config.toml --start-block 1 --end-block 10 --fetch-ids
 
- 
 
- 
 
-