diff --git a/Makefile b/Makefile index fad954b..fbb7d9f 100644 --- a/Makefile +++ b/Makefile @@ -18,3 +18,6 @@ build: text_to_story: rm -f ./cmd/text_to_story/story.json go run ./cmd/text_to_story/main.go + +test: + go test ./... diff --git a/internal/tests/client.go b/internal/tests/client.go new file mode 100644 index 0000000..c649451 --- /dev/null +++ b/internal/tests/client.go @@ -0,0 +1,23 @@ +package tests + +import ( + "context" + "log" + "time" + + pb "evening_detective/proto" + + "google.golang.org/grpc" +) + +func getClient() (pb.EveningDetectiveClient, func() error) { + conn, err := grpc.Dial("localhost:8080", grpc.WithInsecure()) + if err != nil { + log.Fatalf("Не удалось подключиться к серверу: %v", err) + } + return pb.NewEveningDetectiveClient(conn), conn.Close +} + +func getContext() (context.Context, context.CancelFunc) { + return context.WithTimeout(context.Background(), time.Second) +} diff --git a/internal/tests/ping_test.go b/internal/tests/ping_test.go new file mode 100644 index 0000000..eb499ed --- /dev/null +++ b/internal/tests/ping_test.go @@ -0,0 +1,23 @@ +package tests + +import ( + "log" + "testing" + + pb "evening_detective/proto" +) + +func TestPing(t *testing.T) { + client, close := getClient() + defer close() + + ctx, cancel := getContext() + defer cancel() + + req := &pb.PingReq{} + + _, err := client.Ping(ctx, req) + if err != nil { + log.Fatalf("Ошибка выполнения запроса: %v", err) + } +}