1
1
const yargs = require ( "yargs" ) ;
2
2
const path = require ( "path" ) ;
3
3
const { emptyDirSync, rmdirSync } = require ( "fs-extra" ) ;
4
- const { generateClients } = require ( "./code-gen" ) ;
4
+ const { generateClients, generateProtocolTests } = require ( "./code-gen" ) ;
5
5
const { copyToClients } = require ( "./copy-to-clients" ) ;
6
6
const {
7
- CODE_GEN_OUTPUT_DIR ,
7
+ CODE_GEN_SDK_OUTPUT_DIR ,
8
+ CODE_GEN_PROTOCOL_TESTS_OUTPUT_DIR ,
8
9
TEMP_CODE_GEN_INPUT_DIR
9
10
} = require ( "./code-gen-dir" ) ;
10
11
const { prettifyCode } = require ( "./code-prettify" ) ;
11
12
12
- const CLIENTS_DIR = path . normalize ( path . join ( __dirname , ".." , ".." , "clients" ) ) ;
13
+ const SDK_CLIENTS_DIR = path . normalize (
14
+ path . join ( __dirname , ".." , ".." , "clients" )
15
+ ) ;
16
+ const PROTOCOL_TESTS_CLIENTS_DIR = path . normalize (
17
+ path . join ( __dirname , ".." , ".." , "protocol_tests" )
18
+ ) ;
13
19
14
20
const { models, globs, output : clientsDir } = yargs
15
21
. alias ( "m" , "models" )
@@ -22,16 +28,27 @@ const { models, globs, output: clientsDir } = yargs
22
28
. alias ( "o" , "output" )
23
29
. string ( "o" )
24
30
. describe ( "o" , "The output directory for built clients" )
25
- . default ( "o" , CLIENTS_DIR )
31
+ . default ( "o" , SDK_CLIENTS_DIR )
26
32
. help ( ) . argv ;
27
33
28
34
( async ( ) => {
29
35
try {
30
36
await generateClients ( models || globs ) ;
31
- await prettifyCode ( ) ;
32
- await copyToClients ( clientsDir ) ;
33
- emptyDirSync ( CODE_GEN_OUTPUT_DIR ) ;
37
+ await generateProtocolTests ( ) ;
38
+
39
+ await prettifyCode ( CODE_GEN_SDK_OUTPUT_DIR ) ;
40
+ await prettifyCode ( CODE_GEN_PROTOCOL_TESTS_OUTPUT_DIR ) ;
41
+
42
+ await copyToClients ( CODE_GEN_SDK_OUTPUT_DIR , clientsDir ) ;
43
+ await copyToClients (
44
+ CODE_GEN_PROTOCOL_TESTS_OUTPUT_DIR ,
45
+ PROTOCOL_TESTS_CLIENTS_DIR
46
+ ) ;
47
+
48
+ emptyDirSync ( CODE_GEN_SDK_OUTPUT_DIR ) ;
49
+ emptyDirSync ( CODE_GEN_PROTOCOL_TESTS_OUTPUT_DIR ) ;
34
50
emptyDirSync ( TEMP_CODE_GEN_INPUT_DIR ) ;
51
+
35
52
rmdirSync ( TEMP_CODE_GEN_INPUT_DIR ) ;
36
53
} catch ( e ) {
37
54
console . log ( e ) ;
0 commit comments