package tests import ( "context" "log" "testing" "time" "evening_detective/internal/config" "evening_detective/internal/services" pb "evening_detective/proto" "github.com/stretchr/testify/assert" "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) } func deleteTeams(t *testing.T) { dbFilepath := config.GetDBFilepath() repository, err := services.NewRepository(dbFilepath) if err != nil { assert.Nil(t, err, "подключение к базе") } defer repository.Close() err = repository.DeleteAllTeams(context.Background()) assert.Nil(t, err, "команды удалены") } func createTeam(client pb.EveningDetectiveClient, name string) (*pb.AddTeamsRsp, error) { ctx, cancel := getContext() defer cancel() req := &pb.AddTeamsReq{ Teams: []*pb.Team{ {Name: name}, }, } return client.AddTeams(ctx, req) } func getTeams(client pb.EveningDetectiveClient) (*pb.GetTeamsRsp, error) { ctx, cancel := getContext() defer cancel() req := &pb.GetTeamsReq{} return client.GetTeams(ctx, req) }