roman | e84f7dc | 2022-10-21 10:25:38 +0200 | [diff] [blame] | 1 | #!/usr/bin/expect -f |
| 2 | |
| 3 | if { [info exists ::env(CURRENT_SOURCE_DIR)] } { |
| 4 | source "$env(CURRENT_SOURCE_DIR)/tests/expect/common.exp" |
Michal Vasko | 832a6fa | 2022-10-24 08:31:17 +0200 | [diff] [blame] | 5 | set yang_dir "$env(CURRENT_SOURCE_DIR)/examples" |
roman | e84f7dc | 2022-10-21 10:25:38 +0200 | [diff] [blame] | 6 | } else { |
| 7 | source "common.exp" |
Michal Vasko | 832a6fa | 2022-10-24 08:31:17 +0200 | [diff] [blame] | 8 | set yang_dir "../../examples" |
roman | e84f7dc | 2022-10-21 10:25:38 +0200 | [diff] [blame] | 9 | } |
| 10 | |
Michal Vasko | 832a6fa | 2022-10-24 08:31:17 +0200 | [diff] [blame] | 11 | spawn $yanglint |
roman | e84f7dc | 2022-10-21 10:25:38 +0200 | [diff] [blame] | 12 | |
Michal Vasko | b4cf6d1 | 2022-11-09 10:26:14 +0100 | [diff] [blame] | 13 | # skip no dir and/or no history warnings |
| 14 | expect_output "(YANGLINT.*)*> " |
roman | e84f7dc | 2022-10-21 10:25:38 +0200 | [diff] [blame] | 15 | |
| 16 | expect_command "clear -ii" 0 "" |
| 17 | |
Michal Vasko | 832a6fa | 2022-10-24 08:31:17 +0200 | [diff] [blame] | 18 | expect_command "add ${yang_dir}/ietf-ip.yang" 0 "" |
roman | e84f7dc | 2022-10-21 10:25:38 +0200 | [diff] [blame] | 19 | |
| 20 | expect_completion "print -f info -P " "print -f info -P /ietf-" |
| 21 | |
| 22 | set hints {"/ietf-yang-schema-mount:schema-mounts" "/ietf-interfaces:interfaces" "/ietf-interfaces:interfaces-state"} |
| 23 | |
| 24 | expect_hint "" "print -f info -P /ietf-" $hints |
| 25 | |
| 26 | expect_completion "i" "print -f info -P /ietf-interfaces:interfaces" |
| 27 | |
| 28 | expect_completion "/" "print -f info -P /ietf-interfaces:interfaces/interface" |
| 29 | |
| 30 | set hints {"/ietf-interfaces:interfaces/interface" |
| 31 | "/ietf-interfaces:interfaces/interface/name" "/ietf-interfaces:interfaces/interface/description" |
| 32 | "/ietf-interfaces:interfaces/interface/type" "/ietf-interfaces:interfaces/interface/enabled" |
| 33 | "/ietf-interfaces:interfaces/interface/link-up-down-trap-enable" |
| 34 | "/ietf-interfaces:interfaces/interface/ietf-ip:ipv4" "/ietf-interfaces:interfaces/interface/ietf-ip:ipv6"} |
| 35 | |
| 36 | expect_hint "" "print -f info -P /ietf-interfaces:interfaces/interface" $hints |
| 37 | |
| 38 | expect_completion "/i" "print -f info -P /ietf-interfaces:interfaces/interface/ietf-ip:ipv" |
| 39 | |
| 40 | expect_completion "4" "print -f info -P /ietf-interfaces:interfaces/interface/ietf-ip:ipv4" |
| 41 | |
| 42 | set hints { "/ietf-interfaces:interfaces/interface/ietf-ip:ipv4" "/ietf-interfaces:interfaces/interface/ietf-ip:ipv4/enabled" |
| 43 | "/ietf-interfaces:interfaces/interface/ietf-ip:ipv4/forwarding" "/ietf-interfaces:interfaces/interface/ietf-ip:ipv4/mtu" |
| 44 | "/ietf-interfaces:interfaces/interface/ietf-ip:ipv4/address" "/ietf-interfaces:interfaces/interface/ietf-ip:ipv4/neighbor" |
| 45 | } |
| 46 | |
| 47 | expect_hint "\t" "print -f info -P /ietf-interfaces:interfaces/interface/ietf-ip:ipv" $hints |
| 48 | |
| 49 | expect_completion "/e" "print -f info -P /ietf-interfaces:interfaces/interface/ietf-ip:ipv4/enabled " |
| 50 | |
| 51 | send -- "\r" |
| 52 | |
| 53 | expect { |
| 54 | -re ".*\r\n> " {} |
| 55 | timeout {exit 1} |
| 56 | } |
| 57 | |
| 58 | send -- "exit\r" |
| 59 | |
| 60 | expect eof |