Skip to content

Commit fe4499c

Browse files
committed
Fixes small errors in language server
1 parent d7b75e9 commit fe4499c

File tree

4 files changed

+19
-3
lines changed

4 files changed

+19
-3
lines changed

packages/schema/src/language-server/validator/schema-validator.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,9 @@ export default class SchemaValidator implements AstValidator<Model> {
5252
private validateImports(model: Model, accept: ValidationAcceptor) {
5353
model.imports.forEach((imp) => {
5454
const importedModel = resolveImport(this.documents, imp);
55+
const importPath = imp.path.endsWith('.zmodel') ? imp.path : `${imp.path}.zmodel`;
5556
if (!importedModel) {
56-
accept('error', `Cannot find model file ${imp.path}.zmodel`, { node: imp });
57+
accept('error', `Cannot find model file ${importPath}.zmodel`, { node: imp });
5758
}
5859
});
5960
}

packages/schema/src/res/stdlib.zmodel

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -390,7 +390,7 @@ attribute @updatedAt() @@@targetField([DateTimeField]) @@@prisma
390390
/**
391391
* Add full text index (MySQL only).
392392
*/
393-
attribute @@fulltext(_ fields: FieldReference[]) @@@prisma
393+
attribute @@fulltext(_ fields: FieldReference[], map: String?) @@@prisma
394394

395395

396396
// String type modifiers
@@ -479,7 +479,7 @@ attribute @db.Bytes() @@@targetField([BytesField]) @@@prisma
479479
attribute @db.ByteA() @@@targetField([BytesField]) @@@prisma
480480
attribute @db.LongBlob() @@@targetField([BytesField]) @@@prisma
481481
attribute @db.Binary() @@@targetField([BytesField]) @@@prisma
482-
attribute @db.VarBinary() @@@targetField([BytesField]) @@@prisma
482+
attribute @db.VarBinary(_ x: Int?) @@@targetField([BytesField]) @@@prisma
483483
attribute @db.TinyBlob() @@@targetField([BytesField]) @@@prisma
484484
attribute @db.Blob() @@@targetField([BytesField]) @@@prisma
485485
attribute @db.MediumBlob() @@@targetField([BytesField]) @@@prisma

packages/schema/tests/schema/validation/attribute-validation.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,7 @@ describe('Attribute tests', () => {
352352
_longBlob Bytes @db.LongBlob
353353
_binary Bytes @db.Binary
354354
_varBinary Bytes @db.VarBinary
355+
_varBinarySized Bytes @db.VarBinary(100)
355356
_tinyBlob Bytes @db.TinyBlob
356357
_blob Bytes @db.Blob
357358
_mediumBlob Bytes @db.MediumBlob

packages/schema/tests/schema/validation/schema-validation.test.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,20 @@ describe('Toplevel Schema Validation Tests', () => {
3939
).toContain('Cannot find model file models/abc.zmodel');
4040
});
4141

42+
it('not existing import with extension', async () => {
43+
expect(
44+
await loadModelWithError(`
45+
import 'models/abc.zmodel'
46+
datasource db1 {
47+
provider = 'postgresql'
48+
url = env('DATABASE_URL')
49+
}
50+
51+
model X {id String @id }
52+
`)
53+
).toContain('Cannot find model file models/abc.zmodel');
54+
})
55+
4256
it('multiple auth models', async () => {
4357
expect(
4458
await loadModelWithError(`

0 commit comments

Comments
 (0)