diff options
| author | Paul Buetow <paul@buetow.org> | 2023-06-18 19:59:20 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2023-06-18 19:59:20 +0300 |
| commit | 831137abdecfcafeb21fb5f3de45156819f35ed4 (patch) | |
| tree | dfe5f31e781ddde2f5de651965939ea964f6057d | |
| parent | 5f24c3a2ce346a31820ae27676f18a4d71899a34 (diff) | |
refactor
| -rw-r--r-- | Taskfile.yml | 2 | ||||
| -rw-r--r-- | internal/client/tcpclient.go | 6 | ||||
| -rw-r--r-- | internal/iorw/iorw.go (renamed from internal/tcp/tcp.go) | 14 | ||||
| -rw-r--r-- | internal/iorw/iorw_test.go (renamed from internal/tcp/tcp_test.go) | 11 | ||||
| -rw-r--r-- | internal/server/tcpserver.go | 6 |
5 files changed, 16 insertions, 23 deletions
diff --git a/Taskfile.yml b/Taskfile.yml index 48f0e5c..4cc772b 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -5,7 +5,7 @@ tasks: cmds: - go build -o gorum cmd/gorum/main.go dev: - deps: ["vet", "lint"] + deps: ["vet", "lint", "test"] cmds: - go build -race -o gorum cmd/gorum/main.go test: diff --git a/internal/client/tcpclient.go b/internal/client/tcpclient.go index 3181fd4..db4334f 100644 --- a/internal/client/tcpclient.go +++ b/internal/client/tcpclient.go @@ -6,7 +6,7 @@ import ( "log" "net" - "codeberg.org/snonux/gorum/internal/tcp" + "codeberg.org/snonux/gorum/internal/iorw" "codeberg.org/snonux/gorum/internal/vote" ) @@ -29,11 +29,11 @@ func tcpClientRun(ctx context.Context, node string, ch <-chan vote.Vote) error { } log.Println("tcpclient: sending", message, "to node", node) - if err := tcp.WriteStr(conn, message); err != nil { + if err := iorw.WriteStr(conn, message); err != nil { return err } - response, err := tcp.ReadStr(conn) + response, err := iorw.ReadStr(conn) if err != nil { return err } diff --git a/internal/tcp/tcp.go b/internal/iorw/iorw.go index 3f9bafc..a91a5b2 100644 --- a/internal/tcp/tcp.go +++ b/internal/iorw/iorw.go @@ -1,19 +1,11 @@ -package tcp +package iorw import ( "encoding/binary" "io" ) -type Writer interface { - Write(b []byte) (n int, err error) -} - -type Reader interface { - Read(b []byte) (n int, err error) -} - -func WriteStr(w Writer, message string) error { +func WriteStr(w io.Writer, message string) error { messageBytes := []byte(message) sizeBytes := make([]byte, 8) binary.BigEndian.PutUint64(sizeBytes, uint64(len(messageBytes))) @@ -28,7 +20,7 @@ func WriteStr(w Writer, message string) error { return nil } -func ReadStr(r Reader) (string, error) { +func ReadStr(r io.Reader) (string, error) { sizeBytes := make([]byte, 8) if _, err := io.ReadFull(r, sizeBytes); err != nil { return "", err diff --git a/internal/tcp/tcp_test.go b/internal/iorw/iorw_test.go index 668758c..c54c059 100644 --- a/internal/tcp/tcp_test.go +++ b/internal/iorw/iorw_test.go @@ -1,4 +1,4 @@ -package tcp +package iorw import ( "testing" @@ -35,10 +35,11 @@ func (rwt readWriteTest) Read(b []byte) (n int, err error) { func TestReadWrite(t *testing.T) { t.Parallel() - message := "Hello world!" - - var sizeWritten bool - var sizeRead bool + var ( + message = "Hello world!" + sizeWritten = false + sizeRead = false + ) rwt := readWriteTest{ sizeWritten: &sizeWritten, diff --git a/internal/server/tcpserver.go b/internal/server/tcpserver.go index 21324c3..d952972 100644 --- a/internal/server/tcpserver.go +++ b/internal/server/tcpserver.go @@ -7,7 +7,7 @@ import ( "net" "codeberg.org/snonux/gorum/internal/config" - "codeberg.org/snonux/gorum/internal/tcp" + "codeberg.org/snonux/gorum/internal/iorw" ) type handlerCb func(message string) string @@ -49,7 +49,7 @@ func handleConnection(ctx context.Context, conn net.Conn, cb handlerCb) { log.Println("server: context done, disconnecting client:", remoteAddr) return default: - message, err := tcp.ReadStr(conn) + message, err := iorw.ReadStr(conn) if err != nil { log.Println("server: unable to read message", remoteAddr, err) return @@ -58,7 +58,7 @@ func handleConnection(ctx context.Context, conn net.Conn, cb handlerCb) { log.Println("server: received message", message, "from", remoteAddr) response := cb(message) - if err := tcp.WriteStr(conn, response); err != nil { + if err := iorw.WriteStr(conn, response); err != nil { log.Println("error:", err) } } |
