From 304276db47fbf4167b0a44e26d140980f2146fb9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roberto=20Abdelkader=20Mart=C3=ADnez=20P=C3=A9rez?= Date: Fri, 18 Oct 2019 23:55:25 +0200 Subject: [PATCH] Fix dummy return. Closes #34 --- internal/server/user/state.go | 4 ++-- internal/server/user/state_test.go | 12 +++++++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/internal/server/user/state.go b/internal/server/user/state.go index 2fde316..085682a 100644 --- a/internal/server/user/state.go +++ b/internal/server/user/state.go @@ -24,13 +24,13 @@ func New() safeRouteList { func (srl *safeRouteList) Append(r model.Route) model.Route { srl.m.Lock() + r.Index = len(srl.rs) srl.rs = append(srl.rs, r) - l := len(srl.rs) srl.m.Unlock() Server.Handler.(*mux.SwappableMux).Update(srl.Snapshot()) - return model.Route{Index: l - 1} + return r } func (srl *safeRouteList) Snapshot() []model.Route { diff --git a/internal/server/user/state_test.go b/internal/server/user/state_test.go index acf7375..73f1d31 100644 --- a/internal/server/user/state_test.go +++ b/internal/server/user/state_test.go @@ -147,7 +147,17 @@ func TestSnapshotNonBlockingReadWithOtherReaders(t *testing.T) { } } -func TestAppendReturnsTheInsertedRoutedWithTheActualIndexWhenEmpty(t *testing.T) { +func TestAppendReturnsTheInsertedRouted(t *testing.T) { + srl := New() + + r := srl.Append(model.Route{ID: "FOO"}) + + if r.ID != "FOO" { + t.Errorf(`ID of the returned route is not "FOO", but %q`, r.ID) + } +} + +func TestAppendReturnsTheNumberedRoutesWhenEmpty(t *testing.T) { srl := New() r := srl.Append(model.Route{})