aboutsummaryrefslogtreecommitdiff
path: root/server/descriptor
diff options
context:
space:
mode:
authorRasmus Dahlberg <rasmus.dahlberg@kau.se>2020-11-03 10:22:57 +0100
committerRasmus Dahlberg <rasmus.dahlberg@kau.se>2020-11-03 10:22:57 +0100
commit1132536be92df9833ccaa72683eaa7e74e10b9e3 (patch)
treeb0a2f02226b12ef053e44a2f84ba9fc37200948c /server/descriptor
parentc210c80e80231143f6eaa0f39e8e1d3303983791 (diff)
fixed FindLog such that it uses a list of operators
Diffstat (limited to 'server/descriptor')
-rw-r--r--server/descriptor/.descriptor.go.swpbin12288 -> 0 bytes
-rw-r--r--server/descriptor/descriptor.go10
-rw-r--r--server/descriptor/descriptor_test.go8
3 files changed, 10 insertions, 8 deletions
diff --git a/server/descriptor/.descriptor.go.swp b/server/descriptor/.descriptor.go.swp
deleted file mode 100644
index e12d5cd..0000000
--- a/server/descriptor/.descriptor.go.swp
+++ /dev/null
Binary files differ
diff --git a/server/descriptor/descriptor.go b/server/descriptor/descriptor.go
index ba90289..016d1cc 100644
--- a/server/descriptor/descriptor.go
+++ b/server/descriptor/descriptor.go
@@ -30,10 +30,12 @@ type Log struct {
BaseUrl string `json:"base_url"` // E.g., example.com/st/v1
}
-func (op *Operator) FindLog(logId []byte) (*Log, error) {
- for _, log := range op.Logs {
- if bytes.Equal(logId, log.Id) {
- return log, nil
+func FindLog(ops []Operator, logId []byte) (*Log, error) {
+ for _, op := range ops {
+ for _, log := range op.Logs {
+ if bytes.Equal(logId, log.Id) {
+ return log, nil
+ }
}
}
return nil, fmt.Errorf("no such log: %s", base64.StdEncoding.EncodeToString(logId))
diff --git a/server/descriptor/descriptor_test.go b/server/descriptor/descriptor_test.go
index e461f88..d01fc66 100644
--- a/server/descriptor/descriptor_test.go
+++ b/server/descriptor/descriptor_test.go
@@ -48,14 +48,14 @@ func TestUnmarshal(t *testing.T) {
func TestFindLog(t *testing.T) {
for _, table := range []struct {
- op Operator
+ ops []Operator
logId []byte
wantError bool
}{
- {makeOperatorList()[0], deb64("B9oCJk4XIOMXba8dBM5yUj+NLtqTE6xHwbvR9dYkHPM="), false},
- {makeOperatorList()[0], []byte{0, 1, 2, 3}, true},
+ {makeOperatorList(), deb64("B9oCJk4XIOMXba8dBM5yUj+NLtqTE6xHwbvR9dYkHPM="), false},
+ {makeOperatorList(), []byte{0, 1, 2, 3}, true},
} {
- _, err := table.op.FindLog(table.logId)
+ _, err := FindLog(table.ops, table.logId)
if (err != nil) != table.wantError {
t.Errorf("wanted log not found for id: %v", table.logId)
}