diff --git a/test/misc/multischema/base.prisma b/test/misc/multischema/base.prisma new file mode 100644 index 000000000..ee76feb3f --- /dev/null +++ b/test/misc/multischema/base.prisma @@ -0,0 +1,16 @@ +datasource db { + provider = "sqlite" + url = env("__REPLACE__") +} + +generator db { + provider = "go run github.com/steebchen/prisma-client-go" + output = "." + disableGoBinaries = true + package = "db" + previewFeatures = ["prismaSchemaFolder"] +} + +model noop { + id String @id @default(cuid()) @map("_id") +} diff --git a/test/misc/multischema/post.prisma b/test/misc/multischema/post.prisma new file mode 100644 index 000000000..d545abad6 --- /dev/null +++ b/test/misc/multischema/post.prisma @@ -0,0 +1,5 @@ +model Post { + id String @id @default(cuid()) @map("_id") + title String + views Int +} diff --git a/test/misc/multischema/schema_test.go b/test/misc/multischema/schema_test.go new file mode 100644 index 000000000..269d93d0e --- /dev/null +++ b/test/misc/multischema/schema_test.go @@ -0,0 +1,47 @@ +//go:generate go run github.com/steebchen/prisma-client-go generate --schema . + +package db + +import ( + "context" + "testing" + + "github.com/steebchen/prisma-client-go/test" + "github.com/steebchen/prisma-client-go/test/helpers/massert" +) + +type cx = context.Context +type Func func(t *testing.T, client *PrismaClient, ctx cx) + +func TestSchema(t *testing.T) { + t.Parallel() + + tests := []struct { + name string + before []string + run Func + }{{ + name: "run", + run: func(t *testing.T, client *PrismaClient, ctx cx) { + actual, err := client.Post.FindMany( + Post.ID.Equals("stuff"), + ).Exec(ctx) + if err != nil { + t.Fatalf("fail %s", err) + } + + massert.Equal(t, 0, len(actual)) + }, + }} + for _, tt := range tests { + tt := tt + t.Run(tt.name, func(t *testing.T) { + test.RunSerial(t, test.Databases, func(t *testing.T, db test.Database, ctx context.Context) { + client := NewClient() + mockDBName := test.Start(t, db, client.Engine, tt.before) + defer test.End(t, db, client.Engine, mockDBName) + tt.run(t, client, context.Background()) + }) + }) + } +}