@@ -110,8 +110,8 @@ describe('CLI Bots', () => {
110110 await main ( [ 'node' , 'index.js' , 'bot' , 'save' , 'hello-world' ] ) ;
111111 expect ( console . log ) . toBeCalledWith ( expect . stringMatching ( / S u c c e s s / ) ) ;
112112 const check = await medplum . readResource ( 'Bot' , bot . id as string ) ;
113- expect ( check . code ) . toBeDefined ( ) ;
114- expect ( check . code ) . not . toEqual ( '' ) ;
113+ expect ( check . code ) . toBeUndefined ( ) ;
114+ expect ( check . sourceCode ) . toBeDefined ( ) ;
115115 } ) ;
116116
117117 test ( 'Deploy bot success' , async ( ) => {
@@ -137,8 +137,34 @@ describe('CLI Bots', () => {
137137 await main ( [ 'node' , 'index.js' , 'bot' , 'deploy' , 'hello-world' ] ) ;
138138 expect ( console . log ) . toBeCalledWith ( expect . stringMatching ( / S u c c e s s / ) ) ;
139139 const check = await medplum . readResource ( 'Bot' , bot . id as string ) ;
140- expect ( check . code ) . toBeDefined ( ) ;
141- expect ( check . code ) . not . toEqual ( '' ) ;
140+ expect ( check . code ) . toBeUndefined ( ) ;
141+ expect ( check . sourceCode ) . toBeDefined ( ) ;
142+ } ) ;
143+
144+ test ( 'Deploy bot without dist success' , async ( ) => {
145+ // Create the bot
146+ const bot = await medplum . createResource < Bot > ( { resourceType : 'Bot' } ) ;
147+ expect ( bot . code ) . toBeUndefined ( ) ;
148+
149+ // Setup bot config
150+ ( fs . existsSync as unknown as jest . Mock ) . mockReturnValue ( true ) ;
151+ ( fs . readFileSync as unknown as jest . Mock ) . mockReturnValue (
152+ JSON . stringify ( {
153+ bots : [
154+ {
155+ name : 'hello-world' ,
156+ id : bot . id ,
157+ source : 'src/hello-world.ts' ,
158+ } ,
159+ ] ,
160+ } )
161+ ) ;
162+
163+ await main ( [ 'node' , 'index.js' , 'bot' , 'deploy' , 'hello-world' ] ) ;
164+ expect ( console . log ) . toBeCalledWith ( expect . stringMatching ( / S u c c e s s / ) ) ;
165+ const check = await medplum . readResource ( 'Bot' , bot . id as string ) ;
166+ expect ( check . code ) . toBeUndefined ( ) ;
167+ expect ( check . sourceCode ) . toBeDefined ( ) ;
142168 } ) ;
143169
144170 test ( 'Deploy bot for multiple bot with wildcards ' , async ( ) => {
@@ -294,8 +320,8 @@ describe('CLI Bots', () => {
294320 await main ( [ 'node' , 'index.js' , 'save-bot' , 'hello-world' ] ) ;
295321 expect ( console . log ) . toBeCalledWith ( expect . stringMatching ( / S u c c e s s / ) ) ;
296322 const check = await medplum . readResource ( 'Bot' , bot . id as string ) ;
297- expect ( check . code ) . toBeDefined ( ) ;
298- expect ( check . code ) . not . toEqual ( '' ) ;
323+ expect ( check . code ) . toBeUndefined ( ) ;
324+ expect ( check . sourceCode ) . toBeDefined ( ) ;
299325 } ) ;
300326
301327 test ( 'Deprecate Deploy bot success' , async ( ) => {
@@ -321,8 +347,8 @@ describe('CLI Bots', () => {
321347 await main ( [ 'node' , 'index.js' , 'deploy-bot' , 'hello-world' ] ) ;
322348 expect ( console . log ) . toBeCalledWith ( expect . stringMatching ( / S u c c e s s / ) ) ;
323349 const check = await medplum . readResource ( 'Bot' , bot . id as string ) ;
324- expect ( check . code ) . toBeDefined ( ) ;
325- expect ( check . code ) . not . toEqual ( '' ) ;
350+ expect ( check . code ) . toBeUndefined ( ) ;
351+ expect ( check . sourceCode ) . toBeDefined ( ) ;
326352 } ) ;
327353
328354 test ( 'Deprecate Deploy bot for multiple bot with wildcards ' , async ( ) => {
0 commit comments