Verifies: SYS-REQ-115 (Get/Set round trip) SYS-REQ-115:nominal:nominal reqproof:proptest:skip targeted witness/regression test; not a property-test subject
(t *testing.T)
| 116 | // SYS-REQ-115:nominal:nominal |
| 117 | // reqproof:proptest:skip targeted witness/regression test; not a property-test subject |
| 118 | func TestConfigRoundTrip(t *testing.T) { |
| 119 | source := []byte(`{'source':42,'target':0}`) |
| 120 | value, valueType, _, err := Lenient.Get(source, "source") |
| 121 | if err != nil { |
| 122 | t.Fatalf("Lenient.Get returned error: %v", err) |
| 123 | } |
| 124 | if valueType != Number { |
| 125 | t.Fatalf("Lenient.Get type = %v, want Number", valueType) |
| 126 | } |
| 127 | |
| 128 | updated, err := Lenient.Set(source, value, "target") |
| 129 | if err != nil { |
| 130 | t.Fatalf("Lenient.Set returned error: %v", err) |
| 131 | } |
| 132 | got, _, _, err := Lenient.Get(updated, "target") |
| 133 | if err != nil { |
| 134 | t.Fatalf("Lenient.Get after Set returned error: %v", err) |
| 135 | } |
| 136 | if !reflect.DeepEqual(got, value) { |
| 137 | t.Fatalf("round-trip value = %q, want %q", got, value) |
| 138 | } |
| 139 | } |
| 140 | |
| 141 | // Verifies: SYS-REQ-115 (lenient traversal and deletion) |
| 142 | // SYS-REQ-115:nominal:nominal |