This commit adds a sanity check of the test script TIMEFN, which is by
default 'time -p', for the scripts that define it. The scripts are
currently written such that if there is no 'time' executable, such as in
Debian 9, then some of the scripts fail and some don't but should. This
commit fixes that problem.
this function would never traverse up an XML tree from a node that
was not bound to a YANG model. this prevents the function from
working in some cases where it could.
This commit provides a scriptable headline for the octal dump output.
When the received output of a test is empty or only whitespace, this
commit makes it clear that the octal dump putput is not the expected
output.
These features are added in order to:
1. Warn the user when root privileges are necessary
2. Warn the user when root UID is probably not intended
3. Bring the non-default 'example' target to the user's attention
more clearly
4. Build and install the util applications whenever the example app is
built or installed, because the most likely use of the example app
is to run the tests, which require the util applications
5. Provide a new target 'util' for building the util applications
6. Provide a new target 'install-example' for installing the example
app
7. Provide a new target 'mrproper' to uninstall and clean everything,
in order to avoid missing files that need to be removed before
regression testing, but might be forgotten, for example, the yang
specs
Added basic rfc8527 support, but without support for:
* ds:operational
* with-origin
* clixon/test/test_rfc8527_*.sh
The current level of rfc8527 support is intended to allow commit
operations on the 'candidate' datastore without rewriting the 'startup'
datastore.
Added documentation in comments in test scripts, added example site.sh,
moved evaluation of site.sh later in lib.sh to allow site.sh to override
more lib.sh variables.
* The existing autocli does not support modes, complete paths must be given, eg: `set a b c d 42`.
* In the new auto-cli, automatic modes are present at each YANG syntax node level, eg the above can be given as: `edit a b c; set d 4; top`
* The existing CLI API remains, the new API is as follows: `cli_auto_edit()`, `cli_auto_up()`, `cli_auto_top()`, `cli_auto_show()`, `cli_auto_set()`, `cli_auto_merge()`, `cli_auto_create()`, `cli_auto_del()`.
* See `test/test_cli_auto.sh` for an example of the new API, and `apps/cli/cli_auto.c` for the source code of the new callback API.
* Documentation will be appear and full integration with the main example.
* Added inline state field to clixon-example.yang
* Added new clicon_data_cvec_*() API for generic cvec structs