Adding upstream version 3.1.0+dfsg.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
64dbec996d
commit
cfcebb1a7d
569 changed files with 205393 additions and 0 deletions
107
tests/yanglint/README.md
Normal file
107
tests/yanglint/README.md
Normal file
|
@ -0,0 +1,107 @@
|
|||
# yanglint testing
|
||||
|
||||
Testing yanglint is divided into two ways.
|
||||
It is either tested in interactive mode using the tcl command 'expect' or non-interactively, classically from the command line.
|
||||
For both modes, unit testing was used using the tcl package tcltest.
|
||||
|
||||
## How to
|
||||
|
||||
The sample commands in this chapter using `tclsh` are called in the `interactive` or `non-interactive` directories.
|
||||
|
||||
### How to run all yanglint tests?
|
||||
|
||||
In the build directory designated for cmake, enter:
|
||||
|
||||
```
|
||||
ctest -R yanglint
|
||||
```
|
||||
|
||||
### How to run all yanglint tests that are in interactive mode?
|
||||
|
||||
In the interactive directory, run:
|
||||
|
||||
```
|
||||
tclsh all.tcl
|
||||
```
|
||||
|
||||
### How to run all yanglint tests that are in non-interactive mode?
|
||||
|
||||
In the non-interactive directory, run:
|
||||
|
||||
```
|
||||
tclsh all.tcl
|
||||
```
|
||||
|
||||
### How to run all unit-tests from .test file?
|
||||
|
||||
```
|
||||
tclsh clear.test
|
||||
```
|
||||
|
||||
or alternatively:
|
||||
|
||||
```
|
||||
tclsh all.tcl -file clear.test
|
||||
```
|
||||
|
||||
### How to run one unit-test?
|
||||
|
||||
```
|
||||
tclsh clear.test -match clear_ietf_yang_library
|
||||
```
|
||||
|
||||
or alternatively:
|
||||
|
||||
```
|
||||
tclsh all.tcl -file clear.test -match clear_ietf_yang_library
|
||||
```
|
||||
|
||||
### How to run unit-tests for a certain yanglint command?
|
||||
|
||||
Test names are assumed to consist of the command name:
|
||||
|
||||
```
|
||||
tclsh all.tcl -match clear*
|
||||
```
|
||||
|
||||
### How do I get more detailed information about 'expect' for a certain test?
|
||||
|
||||
In the interactive directory, run:
|
||||
|
||||
```
|
||||
tclsh clear.test -match clear_ietf_yang_library -load "exp_internal 1"
|
||||
```
|
||||
|
||||
### How do I get more detailed dialog between 'expect' and yanglint for a certain test?
|
||||
|
||||
In the interactive directory, run:
|
||||
|
||||
```
|
||||
tclsh clear.test -match clear_ietf_yang_library -load "log_user 1"
|
||||
```
|
||||
|
||||
### How do I suppress error message from tcltest?
|
||||
|
||||
Probably only possible to do via `-verbose ""`
|
||||
|
||||
### How can I also debug?
|
||||
|
||||
You can write commands `interact` and `interpreter` from 'Expect' package into some test.
|
||||
However, the most useful are the `exp_internal` and `log_user`, which can also be written directly into the test.
|
||||
See also the rlwrap tool.
|
||||
You can also use other debugging methods used in tcl programming.
|
||||
|
||||
### Are the tests between interactive mode and non-interactive mode similar?
|
||||
|
||||
Sort of...
|
||||
- regex \n must be changed to \r\n in the tests for interactive yanglint
|
||||
|
||||
### I would like to add a new "ly_" function.
|
||||
|
||||
Add it to the ly.tcl file.
|
||||
If you need to call other subfunctions in it, add them to namespace ly::private.
|
||||
|
||||
### I would like to use function other than those prefixed with "ly_".
|
||||
|
||||
Look in the common.tcl file in the "uti" namespace,
|
||||
which contains general tcl functions that can be used in both interactive and non-interactive tests.
|
Loading…
Add table
Add a link
Reference in a new issue