-
Notifications
You must be signed in to change notification settings - Fork 231
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
8 changed files
with
150 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,3 +5,7 @@ export JS_NEON_DATABASE_URL="postgres://USER:[email protected] | |
|
||
# Note: if you use hosted Postgres instances (e.g., from PDP provision), you need `?sslmode=disable` | ||
export JS_PG_DATABASE_URL="postgres://postgres:prisma@localhost:5438" | ||
|
||
export JS_LIBSQL_DATABASE_URL="file:libsql.db" | ||
# Set this when using a remote Turso database | ||
# export JS_LIBSQL_AUTH_TOKEN="" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
libsql.db | ||
libsql.db-journal |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -9,6 +9,8 @@ | |
"prisma:db:execute:postgres": "prisma db execute --schema ./prisma/postgres/schema.prisma --file ./prisma/postgres/commands/type_test/insert.sql", | ||
"prisma:db:push:mysql": "prisma db push --schema ./prisma/mysql/schema.prisma --force-reset", | ||
"prisma:db:execute:mysql": "prisma db execute --schema ./prisma/mysql/schema.prisma --file ./prisma/mysql/commands/type_test/insert.sql", | ||
"prisma:db:push:sqlite": "prisma db push --schema ./prisma/sqlite/schema.prisma --force-reset", | ||
"prisma:db:execute:sqlite": "prisma db execute --schema ./prisma/sqlite/schema.prisma --file ./prisma/sqlite/commands/type_test/insert.sql", | ||
"prisma:neon": "cross-env-shell DATABASE_URL=\"${JS_NEON_DATABASE_URL}\" \"pnpm prisma:db:push:postgres && pnpm prisma:db:execute:postgres\"", | ||
"neon:ws:libquery": "DATABASE_URL=\"${JS_NEON_DATABASE_URL}\" node --test --loader=tsx ./src/libquery/neon.ws.test.ts", | ||
"neon:http:libquery": "DATABASE_URL=\"${JS_NEON_DATABASE_URL}\" node --test --loader=tsx ./src/libquery/neon.http.test.ts", | ||
|
@@ -23,7 +25,10 @@ | |
"prisma:planetscale": "cross-env-shell DATABASE_URL=\"${JS_PLANETSCALE_DATABASE_URL}\" \"pnpm prisma:db:push:mysql && pnpm prisma:db:execute:mysql\"", | ||
"planetscale:libquery": "DATABASE_URL=\"${JS_PLANETSCALE_DATABASE_URL}\" node --test --loader=tsx ./src/libquery/planetscale.test.ts", | ||
"planetscale:client": "DATABASE_URL=\"${JS_PLANETSCALE_DATABASE_URL}\" node --test --loader=tsx ./src/client/planetscale.test.ts", | ||
"planetscale": "pnpm planetscale:libquery && pnpm planetscale:client" | ||
"planetscale": "pnpm planetscale:libquery && pnpm planetscale:client", | ||
"libsql:libquery": "cross-env-shell DATABASE_URL=\"${JS_LIBSQL_DATABASE_URL}\" node --test --loader=tsx ./src/libquery/libsql.test.ts", | ||
"libsql:client": "cross-env-shell DATABASE_URL=\"${JS_LIBSQL_DATABASE_URL}\" node --test --loader=tsx ./src/client/libsql.test.ts", | ||
"libsql": "pnpm libsql:libquery && pnpm libsql:client" | ||
}, | ||
"keywords": [], | ||
"author": "Alberto Schiabel <[email protected]>", | ||
|
17 changes: 17 additions & 0 deletions
17
query-engine/driver-adapters/js/smoke-test-js/prisma/sqlite/commands/type_test/insert.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
INSERT INTO type_test ( | ||
int_column, | ||
bigint_column, | ||
double_column, | ||
decimal_column, | ||
boolean_column, | ||
text_column, | ||
datetime_column | ||
) VALUES ( | ||
2147483647, -- int | ||
9223372036854775807, -- bigint | ||
1.7976931348623157, -- double | ||
99999999.99, -- decimal | ||
TRUE, -- boolean | ||
'This is a long text...', -- text | ||
'2023-07-24 23:59:59.415' -- datetime | ||
); |
70 changes: 70 additions & 0 deletions
70
query-engine/driver-adapters/js/smoke-test-js/prisma/sqlite/schema.prisma
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
generator client { | ||
provider = "prisma-client-js" | ||
previewFeatures = ["driverAdapters"] | ||
} | ||
|
||
datasource db { | ||
provider = "sqlite" | ||
url = env("DATABASE_URL") | ||
} | ||
|
||
model type_test { | ||
id Int @id @default(autoincrement()) | ||
int_column Int | ||
int_column_null Int? | ||
bigint_column BigInt | ||
bigint_column_null BigInt? | ||
double_column Float | ||
double_column_null Float? | ||
decimal_column Decimal | ||
decimal_column_null Decimal? | ||
boolean_column Boolean | ||
boolean_column_null Boolean? | ||
text_column String | ||
text_column_null String? | ||
datetime_column DateTime | ||
datetime_column_null DateTime? | ||
} | ||
|
||
// This will eventually supersede type_test | ||
model type_test_2 { | ||
id String @id @default(cuid()) | ||
datetime_column DateTime @default(now()) | ||
datetime_column_null DateTime? | ||
} | ||
|
||
model Child { | ||
c String @unique | ||
c_1 String | ||
c_2 String | ||
parentId String? @unique | ||
non_unique String? | ||
id String @id | ||
@@unique([c_1, c_2]) | ||
} | ||
|
||
model Parent { | ||
p String @unique | ||
p_1 String | ||
p_2 String | ||
non_unique String? | ||
id String @id | ||
@@unique([p_1, p_2]) | ||
} | ||
|
||
model Author { | ||
id Int @id @default(autoincrement()) | ||
firstName String | ||
lastName String | ||
age Int | ||
@@map("authors") | ||
} | ||
|
||
model Product { | ||
id String @id @default(cuid()) | ||
properties String | ||
properties_null String? | ||
} |
14 changes: 14 additions & 0 deletions
14
query-engine/driver-adapters/js/smoke-test-js/src/client/libsql.test.ts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
import { PrismaLibsql } from '@aqrln/prisma-adapter-libsql' | ||
import { createClient } from '@libsql/client' | ||
import { describe } from 'node:test' | ||
import { smokeTestClient } from './client' | ||
|
||
describe('libsql with @prisma/client', async () => { | ||
const connectionString = process.env.JS_LIBSQL_DATABASE_URL as string | ||
const authToken = process.env.JS_LIBSQL_AUTH_TOKEN | ||
|
||
const client = createClient({ url: connectionString, authToken }) | ||
const adapter = new PrismaLibsql(client) | ||
|
||
smokeTestClient(adapter) | ||
}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
16 changes: 16 additions & 0 deletions
16
query-engine/driver-adapters/js/smoke-test-js/src/libquery/libsql.test.ts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
import { PrismaLibsql } from '@aqrln/prisma-adapter-libsql' | ||
import { bindAdapter } from '@jkomyno/prisma-driver-adapter-utils' | ||
import { createClient } from '@libsql/client' | ||
import { describe } from 'node:test' | ||
import { smokeTestLibquery } from './libquery' | ||
|
||
describe('libsql', () => { | ||
const connectionString = process.env.JS_LIBSQL_DATABASE_URL as string | ||
const authToken = process.env.JS_LIBSQL_AUTH_TOKEN | ||
|
||
const client = createClient({ url: connectionString, authToken: authToken }) | ||
const adapter = new PrismaLibsql(client) | ||
const driverAdapter = bindAdapter(adapter) | ||
|
||
smokeTestLibquery(driverAdapter, '../../prisma/sqlite/schema.prisma') | ||
}) |