HW12 completed
parent
bc91e45c8b
commit
72ecf8fb02
|
@ -1,9 +0,0 @@
|
|||
package http
|
||||
|
||||
/*
|
||||
func loggingMiddleware(next http.Handler) http.Handler {
|
||||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
})
|
||||
}
|
||||
*/
|
|
@ -32,6 +32,6 @@ func (s *Server) Stop() error {
|
|||
if err := s.server.Close(); err != nil {
|
||||
return err
|
||||
}
|
||||
s.app.Logger.Infof("Server starting")
|
||||
s.app.Logger.Infof("Server stoped")
|
||||
return nil
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@ type Storage struct {
|
|||
}
|
||||
|
||||
func New() *Storage {
|
||||
return &Storage{}
|
||||
return &Storage{Events: make(map[int64]event.Event)}
|
||||
}
|
||||
|
||||
func (s *Storage) Create(event event.Event) (int64, error) {
|
||||
|
@ -46,5 +46,5 @@ func (s *Storage) GetByID(id int64) (event.Event, bool) {
|
|||
if s.Events[id].Title == "" {
|
||||
return event.Event{}, false
|
||||
}
|
||||
return s.Events[id], false
|
||||
return s.Events[id], true
|
||||
}
|
||||
|
|
|
@ -0,0 +1,56 @@
|
|||
package memorystorage
|
||||
|
||||
import (
|
||||
"github.com/stretchr/testify/require"
|
||||
"github.com/tiburon-777/HW_OTUS/hw12_13_14_15_calendar/internal/storage/event"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestMemoryStorage(t *testing.T) {
|
||||
s := New()
|
||||
|
||||
t.Run("Empty storage", func(t *testing.T) {
|
||||
require.Equal(t,0, len(s.Events))
|
||||
})
|
||||
|
||||
id,err:=s.Create(event.Event{ Title:"event1",Date:"11.11.1111" })
|
||||
|
||||
t.Run("Create events", func(t *testing.T) {
|
||||
require.NoError(t,err)
|
||||
require.Equal(t,1, len(s.Events))
|
||||
require.Equal(t,event.Event{ Title:"event1",Date:"11.11.1111" }, s.Events[id])
|
||||
})
|
||||
|
||||
t.Run("Update event", func(t *testing.T) {
|
||||
err:=s.Update(id,event.Event{ Title:"event1_modifyed",Date:"22.11.22222" })
|
||||
require.NoError(t,err)
|
||||
require.Equal(t,1, len(s.Events))
|
||||
require.Equal(t,event.Event{ Title:"event1_modifyed",Date:"22.11.22222" }, s.Events[id])
|
||||
})
|
||||
|
||||
t.Run("List event", func(t *testing.T) {
|
||||
res,err:=s.List()
|
||||
require.NoError(t,err)
|
||||
require.Equal(t,1, len(res))
|
||||
require.Equal(t,event.Event{ Title:"event1_modifyed",Date:"22.11.22222" }, res[id])
|
||||
})
|
||||
|
||||
t.Run("Get event by ID", func(t *testing.T) {
|
||||
res,ok := s.GetByID(id)
|
||||
require.Equal(t,ok,true)
|
||||
require.Equal(t,event.Event{ Title:"event1_modifyed",Date:"22.11.22222" }, res)
|
||||
})
|
||||
|
||||
t.Run("Get event by fake ID", func(t *testing.T) {
|
||||
res,ok := s.GetByID(53663)
|
||||
require.Equal(t,ok,false)
|
||||
require.Equal(t,event.Event{}, res)
|
||||
})
|
||||
|
||||
t.Run("Delete event", func(t *testing.T) {
|
||||
err := s.Delete(id)
|
||||
require.NoError(t,err)
|
||||
require.Equal(t,0, len(s.Events))
|
||||
})
|
||||
|
||||
}
|
Loading…
Reference in New Issue