44import OpenAPIParser from '@readme/openapi-parser' ;
55import { getLiteral , getObjectLiteral } from '@zenstackhq/sdk' ;
66import { Model , Plugin , isPlugin } from '@zenstackhq/sdk/ast' ;
7- import { loadZModelAndDmmf } from '@zenstackhq/testtools' ;
7+ import { loadZModelAndDmmf , normalizePath } from '@zenstackhq/testtools' ;
88import fs from 'fs' ;
99import path from 'path' ;
1010import * as tmp from 'tmp' ;
1111import YAML from 'yaml' ;
1212import generate from '../src' ;
1313
14+ tmp . setGracefulCleanup ( ) ;
15+
1416describe ( 'Open API Plugin RPC Tests' , ( ) => {
1517 it ( 'run plugin' , async ( ) => {
1618 for ( const specVersion of [ '3.0.0' , '3.1.0' ] ) {
1719 const { model, dmmf, modelFile } = await loadZModelAndDmmf ( `
1820plugin openapi {
19- provider = '${ path . resolve ( __dirname , '../dist' ) } '
21+ provider = '${ normalizePath ( path . resolve ( __dirname , '../dist' ) ) } '
2022 specVersion = '${ specVersion } '
2123}
2224
@@ -127,7 +129,7 @@ model Bar {
127129 it ( 'options' , async ( ) => {
128130 const { model, dmmf, modelFile } = await loadZModelAndDmmf ( `
129131plugin openapi {
130- provider = '${ path . resolve ( __dirname , '../dist' ) } '
132+ provider = '${ normalizePath ( path . resolve ( __dirname , '../dist' ) ) } '
131133 specVersion = '3.0.0'
132134 title = 'My Awesome API'
133135 version = '1.0.0'
@@ -164,7 +166,7 @@ model User {
164166 it ( 'security schemes valid' , async ( ) => {
165167 const { model, dmmf, modelFile } = await loadZModelAndDmmf ( `
166168plugin openapi {
167- provider = '${ path . resolve ( __dirname , '../dist' ) } '
169+ provider = '${ normalizePath ( path . resolve ( __dirname , '../dist' ) ) } '
168170 securitySchemes = {
169171 myBasic: { type: 'http', scheme: 'basic' },
170172 myBearer: { type: 'http', scheme: 'bearer', bearerFormat: 'JWT' },
@@ -198,7 +200,7 @@ model User {
198200 it ( 'security schemes invalid' , async ( ) => {
199201 const { model, dmmf, modelFile } = await loadZModelAndDmmf ( `
200202plugin openapi {
201- provider = '${ path . resolve ( __dirname , '../dist' ) } '
203+ provider = '${ normalizePath ( path . resolve ( __dirname , '../dist' ) ) } '
202204 securitySchemes = {
203205 myBasic: { type: 'invalid', scheme: 'basic' }
204206 }
@@ -219,7 +221,7 @@ model User {
219221 it ( 'security model level override' , async ( ) => {
220222 const { model, dmmf, modelFile } = await loadZModelAndDmmf ( `
221223plugin openapi {
222- provider = '${ path . resolve ( __dirname , '../dist' ) } '
224+ provider = '${ normalizePath ( path . resolve ( __dirname , '../dist' ) ) } '
223225 securitySchemes = {
224226 myBasic: { type: 'http', scheme: 'basic' }
225227 }
@@ -247,7 +249,7 @@ model User {
247249 it ( 'security operation level override' , async ( ) => {
248250 const { model, dmmf, modelFile } = await loadZModelAndDmmf ( `
249251plugin openapi {
250- provider = '${ path . resolve ( __dirname , '../dist' ) } '
252+ provider = '${ normalizePath ( path . resolve ( __dirname , '../dist' ) ) } '
251253 securitySchemes = {
252254 myBasic: { type: 'http', scheme: 'basic' }
253255 }
@@ -280,7 +282,7 @@ model User {
280282 it ( 'security inferred' , async ( ) => {
281283 const { model, dmmf, modelFile } = await loadZModelAndDmmf ( `
282284plugin openapi {
283- provider = '${ path . resolve ( __dirname , '../dist' ) } '
285+ provider = '${ normalizePath ( path . resolve ( __dirname , '../dist' ) ) } '
284286 securitySchemes = {
285287 myBasic: { type: 'http', scheme: 'basic' }
286288 }
@@ -306,7 +308,7 @@ model User {
306308 it ( 'v3.1.0 fields' , async ( ) => {
307309 const { model, dmmf, modelFile } = await loadZModelAndDmmf ( `
308310plugin openapi {
309- provider = '${ path . resolve ( __dirname , '../dist' ) } '
311+ provider = '${ normalizePath ( path . resolve ( __dirname , '../dist' ) ) } '
310312 summary = 'awesome api'
311313}
312314
@@ -330,7 +332,7 @@ model User {
330332 it ( 'ignored model used as relation' , async ( ) => {
331333 const { model, dmmf, modelFile } = await loadZModelAndDmmf ( `
332334plugin openapi {
333- provider = '${ path . resolve ( __dirname , '../dist' ) } '
335+ provider = '${ normalizePath ( path . resolve ( __dirname , '../dist' ) ) } '
334336}
335337
336338model User {
@@ -362,7 +364,7 @@ model Post {
362364 for ( const specVersion of [ '3.0.0' , '3.1.0' ] ) {
363365 const { model, dmmf, modelFile } = await loadZModelAndDmmf ( `
364366plugin openapi {
365- provider = '${ path . resolve ( __dirname , '../dist' ) } '
367+ provider = '${ normalizePath ( path . resolve ( __dirname , '../dist' ) ) } '
366368 specVersion = '${ specVersion } '
367369}
368370
@@ -408,7 +410,7 @@ generator js {
408410}
409411
410412plugin openapi {
411- provider = '${ path . resolve ( __dirname , '../dist' ) } '
413+ provider = '${ normalizePath ( path . resolve ( __dirname , '../dist' ) ) } '
412414}
413415
414416enum role {
0 commit comments