yanglint UPDATE print features
Added the ability to print all features in a format, which can later be
used to specify, which features a model should use, for both interactive
and non-interactive versions of yanglint.
diff --git a/tools/lint/tests/expect/feature.exp b/tools/lint/tests/expect/feature.exp
new file mode 100755
index 0000000..87e2718
--- /dev/null
+++ b/tools/lint/tests/expect/feature.exp
@@ -0,0 +1,18 @@
+#!/usr/bin/expect -f
+
+set timeout 1
+
+spawn $env(YANGLINT)
+expect -exact "> "
+send -- "feature -a\r"
+expect {
+ "feature -a\r
+yang:\r
+\t(none)\r
+ietf-yang-schema-mount:\r
+\t(none)\r
+> " { }
+ timeout { exit 1 }
+}
+send -- "exit\r"
+expect eof
diff --git a/tools/lint/tests/shunit2/feature.sh b/tools/lint/tests/shunit2/feature.sh
new file mode 100755
index 0000000..fb2ee88
--- /dev/null
+++ b/tools/lint/tests/shunit2/feature.sh
@@ -0,0 +1,19 @@
+#!/usr/bin/env bash
+
+testFeature() {
+ models=( "iana-if-type@2014-05-08.yang" "ietf-netconf@2011-06-01.yang" "ietf-netconf-with-defaults@2011-06-01.yang"
+ "sm.yang" "ietf-interfaces@2014-05-08.yang" "ietf-netconf-acm@2018-02-14.yang" "ietf-origin@2018-02-14.yang"
+ "ietf-ip@2014-06-16.yang" "ietf-restconf@2017-01-26.yang" )
+ features=( " -F iana-if-type:"
+ " -F ietf-netconf:writable-running,candidate,confirmed-commit,rollback-on-error,validate,startup,url,xpath"
+ " -F ietf-netconf-with-defaults:" " -F sm:" " -F ietf-interfaces:arbitrary-names,pre-provisioning,if-mib"
+ " -F ietf-netconf-acm:" " -F ietf-origin:" " -F ietf-ip:ipv4-non-contiguous-netmasks,ipv6-privacy-autoconf"
+ " -F ietf-restconf:" )
+
+ for i in ${!models[@]}; do
+ output=`${YANGLINT} -f feature-param ${YANG_MODULES_DIR}/${models[$i]}`
+ assertEquals "Unexpected features of module ${models[$i]}." "${features[$i]}" "${output}"
+ done
+}
+
+. shunit2
diff --git a/tools/lint/tests/shunit2/list.sh b/tools/lint/tests/shunit2/list.sh
index fb913f9..41d3805 100755
--- a/tools/lint/tests/shunit2/list.sh
+++ b/tools/lint/tests/shunit2/list.sh
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/usr/bin/env bash
LIST_BASE="List of the loaded models:
i ietf-yang-metadata@2016-08-05