Skip to content

Commit 711d868

Browse files
serathiusnwnt
andcommitted
Use static list of keys in model
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com> Co-authored-by: Nont <9658731+nwnt@users.noreply.github.com>
1 parent 59a250f commit 711d868

11 files changed

Lines changed: 344 additions & 214 deletions

tests/robustness/model/describe.go

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,15 @@ func describeEtcdState(state EtcdState) string {
8585

8686
descHTML = append(descHTML, fmt.Sprintf("<p style=\"margin: 0.25em 0;\">state, rev: %d, compactRev: %d</p>", state.Revision, state.CompactRevision))
8787

88-
if len(state.KeyValues) > 0 {
88+
keys := []string{}
89+
for i, v := range state.KeyValues {
90+
if v == nil {
91+
continue
92+
}
93+
keys = append(keys, state.Keys[i])
94+
}
95+
96+
if len(keys) > 0 {
8997
descHTML = append(descHTML, "keys: <ul style=\"margin: 0.25em 0;\">")
9098

9199
keys, values, leases := state.KeysValueLeases()
@@ -99,12 +107,13 @@ func describeEtcdState(state EtcdState) string {
99107
if value.Value.Hash != 0 {
100108
descHTML = append(descHTML, fmt.Sprintf("hash: %d, ", value.Value.Hash))
101109
}
110+
descHTML = append(descHTML, fmt.Sprintf("mod: %d, ver: %d", value.ModRevision, value.Version))
102111
lease := leases[i]
103112
if lease != 0 {
104-
descHTML = append(descHTML, fmt.Sprintf("lease: %d, ", lease))
113+
descHTML = append(descHTML, fmt.Sprintf(", lease: %d", lease))
105114
}
106115

107-
descHTML = append(descHTML, fmt.Sprintf("mod: %d, ver: %d</li>", value.ModRevision, value.Version))
116+
descHTML = append(descHTML, "</li>")
108117
}
109118

110119
descHTML = append(descHTML, "</ul>")

tests/robustness/model/describe_test.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import (
1818
"errors"
1919
"testing"
2020

21+
"github.com/anishathalye/porcupine"
2122
"github.com/stretchr/testify/assert"
2223

2324
"go.etcd.io/etcd/api/v3/mvccpb"
@@ -170,8 +171,13 @@ func TestModelDescribe(t *testing.T) {
170171
expectDescribe: `range("key16".."key16b", limit=2) -> [], count: 0, rev: 16`,
171172
},
172173
}
174+
ops := []porcupine.Operation{}
173175
for _, tc := range tcs {
174-
assert.Equal(t, tc.expectDescribe, NonDeterministicModel.DescribeOperation(tc.req, tc.resp))
176+
ops = append(ops, porcupine.Operation{Input: tc.req, Output: tc.resp})
177+
}
178+
model := NonDeterministicModel(ModelKeys(ops))
179+
for _, tc := range tcs {
180+
assert.Equal(t, tc.expectDescribe, model.DescribeOperation(tc.req, tc.resp))
175181
}
176182
}
177183

0 commit comments

Comments
 (0)