2 This project is aimed to testing yang files using yang validator tool.
6 *Prerequisite:* The followings are required for building test:
15 git clone "https://git.opendaylight.org/gerrit/yangtools"
18 git clone ssh://{USERNAME}@git.opendaylight.org:29418/yangtools
23 INSTALL VIRTUAL ENVIROMENT PACKAGE:
24 sudo apt install python3-virtualenv
26 CREATE NEW VIRTUAL ENVIROMENT:
29 ACTIVATE VIRTUAL ENVIROMENT:
30 source venv/bin/activate
33 sudo apt install openjdk-17-jdk openjdk-17-jre
36 export JAVA_HOME enviroment variable
42 python3 yangtools_test.py -l y -m /src/main/yang/vendor/
43 python3 yangtools_test.py --log=y --models=/src/main/yang/vendor/
46 -l, --log=y/n for delete previous logs in ~/yangtools_csit_test/yang_validator_logs/ (omitting will not delete previous logs)
49 -m, --models=/path/to/models/ select directory for testing (omitting will test all models)
51 models option examples:
52 /src/main/yang/standard/
53 /src/main/yang/vendor/
54 /src/main/yang/standard/ietf/
55 /src/main/yang/standard/ieee/
56 /src/main/yang/standard/iana/
57 /src/main/yang/vendor/ciena/
62 ~/yangtools_csit_test/yang_validator_logs
65 for each model not pass in yangvalidator, one log file will be created.
66 For example "following-components-yangtools-log.1669020980.753.log" meaning "Following components of unique statement argument refer to non-existent nodes" error.
67 Name of these logs are modified with prefix depending on JAVA error.
68 Txt files will be generated containing list of all models that not passed test.