blob: 25bb130942e66c60195c973af83f7b9aaa571ed1 [file] [log] [blame]
aPiecek8858de02023-04-26 14:27:24 +02001source [expr {[info exists ::env(TESTS_DIR)] ? "$env(TESTS_DIR)/interactive/ly.tcl" : "ly.tcl"}]
2
3set ddir "$::env(TESTS_DIR)/data"
4set err1 "Operational datastore takes effect only with RPCs/Actions/Replies/Notifications input data types"
5
6test data_operational_twice {it is not allowed to specify more than one --operational parameter} {
7-setup $ly_setup -cleanup $ly_cleanup -body {
8 ly_cmd "load modoper-leafref"
9 ly_cmd "data -t notif -O $ddir/modconfig.xml -O $ddir/modleaf.xml" "cannot be set multiple times"
10}}
11
12test data_operational_no_type {--operational should be with parameter --type} {
13-setup $ly_setup -cleanup $ly_cleanup -body {
14 ly_cmd "load modoper-leafref"
15 ly_cmd_wrn "data -O $ddir/modconfig.xml $ddir/modoper_leafref_notif.xml" $err1
16}}
17
18test data_operational_missing {--operational is omitted and the datastore contents is in the data file} {
19-setup $ly_setup -cleanup $ly_cleanup -body {
20 ly_cmd "load modoper-leafref"
21 ly_cmd_err "data $ddir/modoper_leafref_notif_err.xml" "Failed to parse input data file"
22}}
23
aPiecek90c85162023-04-26 14:30:00 +020024test data_operational_datastore_with_unknown_data {unknown data are ignored} {
25-setup $ly_setup -cleanup $ly_cleanup -body {
26 ly_cmd "load modrpc"
27 ly_cmd "data -t rpc -O $ddir/modmandatory_invalid.xml $ddir/modrpc.xml"
28}}
29
aPiecek4386c932023-04-26 14:41:12 +020030test data_operational_notif_leafref {--operational data is referenced from notification-leafref} {
31-setup $ly_setup -cleanup $ly_cleanup -body {
32 ly_cmd "load modoper-leafref"
33 ly_cmd "data -t notif -O $ddir/modconfig.xml $ddir/modoper_leafref_notif.xml"
34}}
35
36test data_operational_nested_notif_leafref {--operational data is referenced from nested-notification-leafref} {
37-setup $ly_setup -cleanup $ly_cleanup -body {
38 ly_cmd "load modoper-leafref"
39 ly_cmd "data -t notif -O $ddir/modoper_leafref_ds.xml $ddir/modoper_leafref_notif2.xml"
40}}
41
42test data_operational_nested_notif_parent_missing {--operational data are invalid due to missing parent node} {
43-setup $ly_setup -cleanup $ly_cleanup -body {
44 ly_cmd "load modoper-leafref"
45 set msg "klf='key_val']\" not found in the operational data"
46 ly_cmd_err "data -t notif -O $ddir/modconfig.xml $ddir/modoper_leafref_notif2.xml" $msg
47}}
48
49test data_operational_action_leafref {--operational data is referenced from action-leafref} {
50-setup $ly_setup -cleanup $ly_cleanup -body {
51 ly_cmd "load modoper-leafref"
52 ly_cmd "data -t rpc -O $ddir/modoper_leafref_ds.xml $ddir/modoper_leafref_action.xml"
53}}
54
55test data_operational_rpc_leafref {--operational data is referenced from rpc-leafref} {
56-setup $ly_setup -cleanup $ly_cleanup -body {
57 ly_cmd "load modoper-leafref"
58 ly_cmd "data -t rpc -O $ddir/modconfig.xml $ddir/modoper_leafref_rpc.xml"
59}}
60
aPiecek8858de02023-04-26 14:27:24 +020061cleanupTests