Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tests - reorg; base-tests, etc.. #22381

Open
wants to merge 181 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
181 commits
Select commit Hold shift + click to select a range
104836f
remove proxy remnant
ttodua May 3, 2024
10eacd0
test.ts - reorg
ttodua May 3, 2024
42d80e9
base-extend
ttodua May 3, 2024
69da879
bootstrap
ttodua May 3, 2024
d41d984
helper methods
ttodua May 3, 2024
ea74006
auto
ttodua May 3, 2024
f0dbaa4
transpile upd
ttodua May 3, 2024
3efa254
transpile
ttodua May 3, 2024
50b3170
packg
ttodua May 3, 2024
48e775f
bootstrap
ttodua May 4, 2024
8153b3d
ext
ttodua May 4, 2024
dc9f42e
base tests & package
ttodua May 4, 2024
011d50e
bootstrap updates
ttodua May 4, 2024
c17197e
python tests reorg
ttodua May 4, 2024
228a0e8
bootstrap ts
ttodua May 4, 2024
830518a
py tests
ttodua May 4, 2024
6406f34
[ci skip]
ttodua May 4, 2024
2e7d374
add new files
ttodua May 4, 2024
c52a97b
bootst py
ttodua May 4, 2024
2961c58
transpile
ttodua May 4, 2024
2c115a7
php tests
ttodua May 4, 2024
e782331
helpers
ttodua May 4, 2024
e983a06
py
ttodua May 4, 2024
33e1e55
extend
ttodua May 4, 2024
25004e4
php
ttodua May 4, 2024
5fc0124
transpile
ttodua May 4, 2024
d94957e
tranpsile further updates
ttodua May 4, 2024
a0f7dfe
nelwine
ttodua May 4, 2024
dc99167
ren
ttodua May 8, 2024
3f83257
tests pathes
ttodua May 8, 2024
33b4b51
tests renames
ttodua May 8, 2024
df0dd35
php init
ttodua May 8, 2024
63bfa21
batch 2
ttodua May 8, 2024
9ec8058
tests inits next updates
ttodua May 8, 2024
af5e6f3
package
ttodua May 8, 2024
e4bc916
ts js finish
ttodua May 8, 2024
1c87850
comment
ttodua May 8, 2024
f5f3f54
ts edits
ttodua May 8, 2024
b06ea6a
upd
ttodua May 8, 2024
d25e415
transplie & tests
ttodua May 8, 2024
175284b
inits
ttodua May 8, 2024
1b3c6d1
extend-php
ttodua May 8, 2024
851c761
react add
ttodua May 8, 2024
e414863
inits
ttodua May 8, 2024
133469e
asyncio
ttodua May 8, 2024
abfa641
rewrite
ttodua May 8, 2024
c9c4aeb
pack
ttodua May 8, 2024
b8e4a4f
all py fixes
ttodua May 8, 2024
a051cda
path
ttodua May 8, 2024
b608c60
futher updates
ttodua May 9, 2024
9d2f432
test
ttodua May 14, 2024
b0fc95c
package upd
ttodua May 14, 2024
6ddfb2a
ts
ttodua May 16, 2024
aa1d456
py
ttodua May 16, 2024
1ddf895
rem com
ttodua May 16, 2024
a9af131
php
ttodua May 16, 2024
d2ad05c
remove auto tests
ttodua May 16, 2024
00bab0f
tbfe
ttodua May 17, 2024
a449fe5
rename
ttodua May 21, 2024
73676b7
fix syntax
carlosmiei May 20, 2024
92ac211
ren2
ttodua May 21, 2024
2554cdf
renames 3
ttodua May 21, 2024
91f3625
bunch of renames
ttodua May 21, 2024
e255b47
js ts fixes
ttodua May 21, 2024
0f96c1b
next renames
ttodua May 21, 2024
73b411d
-
ttodua May 21, 2024
ced3ec3
transp
ttodua May 21, 2024
c264a77
test ex
ttodua May 21, 2024
522648b
syntax
ttodua May 21, 2024
c230b41
exch
ttodua May 22, 2024
21b1ec6
props
ttodua May 23, 2024
a3f0624
pathes
ttodua May 23, 2024
427a089
rem borrow
ttodua May 23, 2024
1427335
Delete php/test/exchange/async/test_fetch_borrow_rates.php
ttodua May 24, 2024
999372a
json [ci skip]
ttodua May 24, 2024
a48558a
c# parts
ttodua May 30, 2024
6ec9ef9
ws base ttests
ttodua May 31, 2024
e79edaf
base migr
ttodua May 31, 2024
54408a7
ts pro
ttodua May 31, 2024
f15beb2
php updates
ttodua May 31, 2024
5a0066d
transpiler
ttodua May 31, 2024
66b1a33
package
ttodua May 31, 2024
6ea3935
ts base
ttodua May 31, 2024
77d3e3d
transpile
ttodua May 31, 2024
b2690d4
ts
ttodua May 31, 2024
4edaf9f
write export
ttodua May 31, 2024
8719fd8
remove php
ttodua May 31, 2024
ac3ac48
remove php
ttodua May 31, 2024
ec4f775
tranps
ttodua May 31, 2024
6a0c16c
inits py
ttodua May 31, 2024
298ff24
removals py
ttodua May 31, 2024
beca298
transpile
ttodua May 31, 2024
0133e88
safe
ttodua May 31, 2024
c518d6c
py updates
ttodua May 31, 2024
1467c6f
py updates
ttodua May 31, 2024
fe1dbb2
php pro
ttodua May 31, 2024
6155fad
commands
ttodua May 31, 2024
f748bbd
cs
ttodua May 31, 2024
2b0c582
upd fixes
ttodua May 31, 2024
ba24961
py
ttodua May 31, 2024
d124aa0
transpiler funcs
ttodua May 31, 2024
f777c0e
py init
ttodua May 31, 2024
948e9e3
tranp
ttodua May 31, 2024
7abcea2
php datetime
ttodua May 31, 2024
8e67269
php & py
ttodua May 31, 2024
9bb6baf
c# transp
ttodua May 31, 2024
eafef58
ts
ttodua May 31, 2024
1a1a73e
cs
ttodua May 31, 2024
e193045
program
ttodua May 31, 2024
a0d952c
remove c#
ttodua May 31, 2024
6707b56
transpiler fixes
ttodua May 31, 2024
6b6fe5a
ts
ttodua May 31, 2024
69108bc
cs
ttodua May 31, 2024
74df277
ts
ttodua May 31, 2024
4f3b5c3
lint py
ttodua Jun 3, 2024
76f92c6
minorrs
ttodua Jun 3, 2024
96f2ae1
nubmer & datetime
ttodua Jun 3, 2024
ef592c9
datetime ts
ttodua Jun 3, 2024
0c4685c
num
ttodua Jun 3, 2024
c3254ac
names
ttodua Jun 3, 2024
1e03e9c
ws tests
ttodua Jun 3, 2024
948a040
ts
ttodua Jun 3, 2024
9215b43
-
ttodua Jun 3, 2024
b3b0281
py
ttodua Jun 3, 2024
4cc5dd4
ts
ttodua Jun 3, 2024
4ab0de0
datetime & number & renames
ttodua Jun 3, 2024
c64dbbc
ast
ttodua Jun 3, 2024
5d75395
cs
ttodua Jun 3, 2024
da25539
package
ttodua Jun 3, 2024
f1f6767
async py
ttodua Jun 3, 2024
1489962
transp
ttodua Jun 3, 2024
fb6b89c
cs
ttodua Jun 3, 2024
5375472
cs
ttodua Jun 4, 2024
248c56c
tet updates
ttodua Jun 4, 2024
7b9cc6d
newlines
ttodua Jun 4, 2024
6cde305
transpile
ttodua Jun 4, 2024
99924f0
match
ttodua Jun 4, 2024
68ecadf
equals
ttodua Jun 4, 2024
6aa55e1
close ws
ttodua Jun 5, 2024
0937111
basetests updates
ttodua Jun 5, 2024
0704d60
tmp close
ttodua Jun 5, 2024
47aa911
rev
ttodua Jun 18, 2024
809a5c5
Discard changes to js/ccxt.d.ts
ttodua Jun 18, 2024
a2d6270
Discard changes to ts/src/test/Exchange/base/test.orderBook.ts
ttodua Jun 18, 2024
a142f21
updates
ttodua Jun 18, 2024
24d891e
id tests
ttodua Jun 19, 2024
e70953a
separation of tests
ttodua Jun 19, 2024
a93a949
additional updates
ttodua Jun 19, 2024
5ee8f4d
renames
ttodua Jun 19, 2024
5b7341a
py updates
ttodua Jun 19, 2024
c090bb1
c# parts
ttodua Jun 19, 2024
22e408e
minor fixes
ttodua Jun 19, 2024
7f2a2e4
lint
ttodua Jun 20, 2024
5bd883d
simplify tests.init
carlosmiei Jun 20, 2024
d1d286c
rename package.json
carlosmiei Jun 20, 2024
e953226
fix tests_init
carlosmiei Jun 20, 2024
65003ca
simplify tests_init.php
carlosmiei Jun 20, 2024
24a58c3
fix var
carlosmiei Jun 20, 2024
b14fe34
missing var
carlosmiei Jun 20, 2024
76117eb
add call_exchange_method_dynamically_sync
carlosmiei Jun 20, 2024
c6acbaf
invoke callExchangeMethodDynamicallySync
carlosmiei Jun 20, 2024
f5d60fd
remove async
carlosmiei Jun 20, 2024
d832c97
add import
carlosmiei Jun 20, 2024
10195e8
fix init exchange
carlosmiei Jun 20, 2024
8afcc69
remove message
carlosmiei Jun 20, 2024
756a0ac
add prefix
carlosmiei Jun 20, 2024
f676a62
close only if async
carlosmiei Jun 20, 2024
49b0563
fix response tests
carlosmiei Jun 20, 2024
6edd09b
update package-json commands
carlosmiei Jun 20, 2024
6873735
rename overwrite safeoverwrite
carlosmiei Jun 20, 2024
fc6a401
update package name
carlosmiei Jun 20, 2024
6bbe914
import rest base
carlosmiei Jun 20, 2024
530e6b0
call base_tests_init_Ws
carlosmiei Jun 20, 2024
ba72e1c
obj signature
ttodua Jun 20, 2024
811cd24
equals
ttodua Jun 20, 2024
5f4a600
remove transpilable files from index
ttodua Jun 21, 2024
d110220
package json updates
ttodua Jun 21, 2024
6f4e7e4
transpiler
ttodua Jun 26, 2024
481ad89
cache fixed
ttodua Jun 26, 2024
3fd6681
test import
ttodua Jun 26, 2024
f9e973b
php
ttodua Jun 26, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -1072,7 +1072,7 @@ node run-tests --python-async kraken # test Kraken with Python async test, requi
Follow this steps to add a test:

- Create a file in [ts/tests/Exchange](ts/test/Exchange/) following syntax that can be transpiled.
- Add test to `runPrivateTests` or `runPublicTests` to [ts/src/test/test.ts](ts/src/test/test.ts#L354) or for ccxt.pro endpoints to [ts/src/pro/test/test.ts](ts/src/pro/test/test.ts#L121)
- Add test to `runPrivateTests` or `runPublicTests` to [ts/src/test/tests.ts](ts/src/test/tests.ts#L354) or for ccxt.pro endpoints to [ts/src/pro/test/tests.ts](ts/src/pro/test/tests.ts#L121)
- run `npm run transpile` to generate the test file in javascript, python and php.
- Call tests `node run-tests`

Expand Down
17 changes: 10 additions & 7 deletions build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -34,14 +34,14 @@ function run_tests {
if [ -z "$rest_pid" ]; then
if [ -z "$rest_args" ] || { [ -n "$rest_args" ] && [ "$rest_args" != "skip" ]; }; then
# shellcheck disable=SC2086
node run-tests --js --python-async --php-async --csharp --useProxy $rest_args &
npm run live-tests -- --js --python-async --php-async --csharp $rest_args &
local rest_pid=$!
fi
fi
if [ -z "$ws_pid" ]; then
if [ -z "$ws_args" ] || { [ -n "$ws_args" ] && [ "$ws_args" != "skip" ]; }; then
# shellcheck disable=SC2086
node run-tests --ws --js --python-async --php-async --csharp --useProxy $ws_args &
npm run live-tests -- --js --python-async --php-async --csharp --ws $ws_args &
local ws_pid=$!
fi
fi
Expand Down Expand Up @@ -80,9 +80,12 @@ build_and_test_all () {
# cd ..
# fi
fi
npm run test-base
npm run test-base-rest
npm run test-base-ws
node ./utils/test-commonjs.cjs
npm run id-tests
npm run request-tests
npm run response-tests
npm run commonjs-test
npm run package-test
npm run test-freshness
if [ "$IS_TRAVIS" = "TRUE" ] && [ "$TRAVIS_PULL_REQUEST" = "false" ]; then
Expand Down Expand Up @@ -197,7 +200,7 @@ npm run buildCS

# run base tests (base js,py,php, brokerId )
# npm run test-base
npm run test-js-base && npm run test-python-base && npm run test-php-base && npm run id-tests
npm run test-base-rest && npm run test-base-ws && npm run id-tests

# rest_args=${REST_EXCHANGES[*]} || "skip"
rest_args=$(IFS=" " ; echo "${REST_EXCHANGES[*]}") || "skip"
Expand All @@ -209,15 +212,15 @@ ws_args=$(IFS=" " ; echo "${WS_EXCHANGES[*]}") || "skip"
for exchange in "${REST_EXCHANGES[@]}"; do
npm run request-js -- $exchange
npm run request-py -- $exchange
php php/test/test_async.php $exchange --requestTests
npm run request-php -- $exchange
npm run request-cs -- $exchange
done

#response static tests
for exchange in "${REST_EXCHANGES[@]}"; do
npm run response-js -- $exchange
npm run response-py -- $exchange
php php/test/test_async.php $exchange --responseTests
npm run response-php -- $exchange
npm run response-cs -- $exchange
done

Expand Down
170 changes: 70 additions & 100 deletions build/csharpTranspiler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import ts from "typescript";
import path from 'path'
import errors from "../js/src/base/errors.js"
import { basename, join, resolve } from 'path'
import { createFolderRecursively, replaceInFile, overwriteFile } from './fsLocal.js'
import { createFolderRecursively, replaceInFile, overwriteFile, writeFile, checkCreateFolder } from './fsLocal.js'
import { platform } from 'process'
import fs from 'fs'
import log from 'ololog'
Expand All @@ -23,6 +23,14 @@ const exchangeIds = exchanges.ids

let __dirname = new URL('.', import.meta.url).pathname;

function overwriteFileAndFolder (path, content) {
if (!(fs.existsSync(path))) {
checkCreateFolder (path);
}
overwriteFile (path, content);
writeFile (path, content);
}

// this is necessary because for some reason
// pathname keeps the first '/' for windows paths
// making them invalid
Expand Down Expand Up @@ -620,7 +628,7 @@ class NewTranspiler {
].join('\n')
log.magenta ('→', (path as any).yellow)

overwriteFile (path, file);
overwriteFileAndFolder (path, file);
}

transpileErrorHierarchy () {
Expand Down Expand Up @@ -686,7 +694,7 @@ class NewTranspiler {
log.bright.cyan (message, (ERRORS_FILE as any).yellow)
// const csharpRegex = /(?<=public partial class Exchange\n{)((.|\n)+)(?=})/g
// replaceInFile (ERRORS_FILE, csharpRegex, csharpBodyIntellisense)
overwriteFile (ERRORS_FILE, csharpBodyIntellisense)
overwriteFileAndFolder (ERRORS_FILE, csharpBodyIntellisense)
}

log.bright.cyan (message, (ERRORS_FILE as any).yellow)
Expand Down Expand Up @@ -795,7 +803,7 @@ class NewTranspiler {
'}'
].join('\n');

overwriteFile (EXAMPLES_OUTPUT_FOLDER + fileName + '.cs', finalFile);
overwriteFileAndFolder (EXAMPLES_OUTPUT_FOLDER + fileName + '.cs', finalFile);
}
}
}
Expand Down Expand Up @@ -983,13 +991,13 @@ class NewTranspiler {
const csharp = this.createCSharpClass (csharpResult, ws)

if (csharpFolder) {
overwriteFile (csharpFolder + csharpFilename, csharp)
overwriteFileAndFolder (csharpFolder + csharpFilename, csharp)
// fs.utimesSync (csharpFolder + csharpFilename, new Date (), new Date (tsMtime))
}
}

// ---------------------------------------------------------------------------------------------
transpileOrderbookTestsToCSharp (outDir: string) {
transpileWsOrderbookTestsToCSharp (outDir: string) {

const jsFile = './ts/src/pro/test/base/test.OrderBook.ts';
const csharpFile = `${outDir}/Orderbook.cs`;
Expand Down Expand Up @@ -1019,20 +1027,17 @@ class NewTranspiler {
this.createGeneratedHeader().join('\n'),
'public partial class BaseTest',
'{',
' public void OrderBookTests()',
' {',
contentIdented,
' }',
'}',
].join('\n')

log.magenta ('→', (csharpFile as any).yellow)

overwriteFile (csharpFile, file);
overwriteFileAndFolder (csharpFile, file);
}

// ---------------------------------------------------------------------------------------------
transpileCacheTestsToCSharp (outDir: string) {
transpileWsCacheTestsToCSharp (outDir: string) {

const jsFile = './ts/src/pro/test/base/test.Cache.ts';
const csharpFile = `${outDir}/Cache.cs`;
Expand Down Expand Up @@ -1062,60 +1067,21 @@ class NewTranspiler {
this.createGeneratedHeader().join('\n'),
'public partial class BaseTest',
'{',
' public void CacheTests()',
' {',
contentIdented,
' }',
'}',
].join('\n')

log.magenta ('→', (csharpFile as any).yellow)

overwriteFile (csharpFile, file);
overwriteFileAndFolder (csharpFile, file);
}

// ---------------------------------------------------------------------------------------------

transpilePrecisionTestsToCSharp (outDir: string) {

const jsFile = './ts/src/test/base/functions/test.number.ts';
const csharpFile = `${outDir}/Precision.cs`;

log.magenta ('Transpiling from', (jsFile as any).yellow)

const csharp = this.transpiler.transpileCSharpByPath(jsFile);
let content = csharp.content;
content = this.regexAll (content, [
[ /object = functions;/g, '' ], // tmp fix
[/assert/g, 'Assert'],
]).trim ()

const contentLines = content.split ('\n');
const contentIdented = contentLines.map (line => ' ' + line).join ('\n');

const file = [
'using ccxt;',
'namespace Tests;',
'',
this.createGeneratedHeader().join('\n'),
'public partial class BaseTest',
'{',
' public void PrecisionTests()',
' {',
contentIdented,
' }',
'}',
].join('\n')

log.magenta ('→', (csharpFile as any).yellow)

overwriteFile (csharpFile, file);
}

transpileCryptoTestsToCSharp (outDir: string) {

const jsFile = './ts/src/test/base/functions/test.crypto.ts';
const csharpFile = `${outDir}/Crypto.cs`;
const jsFile = './ts/src/test/base/test.cryptography.ts';
const csharpFile = `${outDir}/Cryptography.cs`;

log.magenta ('[csharp] Transpiling from', (jsFile as any).yellow)

Expand All @@ -1138,16 +1104,13 @@ class NewTranspiler {
this.createGeneratedHeader().join('\n'),
'public partial class BaseTest',
'{',
' public void CryptoTests()',
' {',
contentIdented,
' }',
'}',
].join('\n')

log.magenta ('→', (csharpFile as any).yellow)

overwriteFile (csharpFile, file);
overwriteFileAndFolder (csharpFile, file);
}

transpileExchangeTest(name: string, path: string): [string, string] {
Expand Down Expand Up @@ -1198,49 +1161,59 @@ class NewTranspiler {
await Promise.all (transpiledFiles.map ((file, idx) => promisedWriteFile (outDir + file[0] + '.cs', file[1])))
}

transpileDatetimeTestsToCSharp (outDir: string) {
transpileBaseTestsToCSharp () {
const outDir = BASE_TESTS_FOLDER;
this.transpileBaseTests(outDir);
this.transpileCryptoTestsToCSharp(outDir);
this.transpileWsCacheTestsToCSharp(outDir);
this.transpileWsOrderbookTestsToCSharp(outDir);
}

const jsFile = './ts/src/test/base/functions/test.datetime.ts';
const csharpFile = `${outDir}/Datetime.cs`;
transpileBaseTests (outDir) {

log.magenta ('Transpiling from', (jsFile as any).yellow)
const baseFolders = {
ts: './ts/src/test/base/',
};

const csharp = this.transpiler.transpileCSharpByPath(jsFile);
let content = csharp.content;
content = this.regexAll (content, [
[ /\s*object\s+=\sfunctions;\n/gm, '' ],
[/assert/g, 'Assert'],
]).trim ()
let baseFunctionTests = fs.readdirSync (baseFolders.ts).filter(filename => filename.endsWith('.ts')).map(filename => filename.replace('.ts', ''));

const contentLines = content.split ('\n');
const contentIdented = contentLines.map (line => ' ' + line).join ('\n');
for (const testName of baseFunctionTests) {
const tsFile = baseFolders.ts + testName + '.ts';
const tsContent = fs.readFileSync(tsFile).toString();
if (!tsContent.includes ('// AUTO_TRANSPILE_ENABLED')) {
continue;
}

const csFileName = this.capitalize(testName.replace ('test.', ''));
const csharpFile = `${outDir}/${csFileName}.cs`;

const file = [
'using ccxt;',
'namespace Tests;',
'',
this.createGeneratedHeader().join('\n'),
'public partial class BaseTest',
'{',
' public void DateTimeTests()',
' {',
contentIdented,
' }',
'}',
].join('\n')
log.magenta ('Transpiling from', (tsFile as any).yellow)

log.magenta ('→', (csharpFile as any).yellow)
const csharp = this.transpiler.transpileCSharpByPath(tsFile);
let content = csharp.content;
content = this.regexAll (content, [
[/object = functions;/g, '' ], // tmp fix
[/assert/g, 'Assert'],
]).trim ()

overwriteFile (csharpFile, file);
}
const contentLines = content.split ('\n');
const contentIdented = contentLines.map (line => ' ' + line).join ('\n');

transpileBaseTestsToCSharp () {
const outDir = BASE_TESTS_FOLDER;
this.transpilePrecisionTestsToCSharp(outDir);
this.transpileCryptoTestsToCSharp(outDir);
this.transpileDatetimeTestsToCSharp(outDir);
this.transpileCacheTestsToCSharp(outDir);
this.transpileOrderbookTestsToCSharp(outDir);
const file = [
'using ccxt;',
'namespace Tests;',
'',
this.createGeneratedHeader().join('\n'),
'public partial class BaseTest',
'{',
contentIdented,
'}',
].join('\n')

log.magenta ('→', (csharpFile as any).yellow)

overwriteFileAndFolder (csharpFile, file);
}
}

capitalize(s: string) {
Expand All @@ -1255,10 +1228,7 @@ class NewTranspiler {
[ /\'use strict\';?\s+/g, '' ],
])

const commentStartLine = '***** AUTO-TRANSPILER-START *****';
const commentEndLine = '***** AUTO-TRANSPILER-END *****';

const mainContent = ts.split (commentStartLine)[1].split (commentEndLine)[0];
const mainContent = ts;
const csharp = this.transpiler.transpileCSharp(mainContent);
// let contentIndentend = csharp.content.split('\n').map(line => line ? ' ' + line : line).join('\n');
let contentIndentend = csharp.content;
Expand All @@ -1282,12 +1252,12 @@ class NewTranspiler {
contentIndentend,
].join('\n')

overwriteFile (files.csharpFile, file);
overwriteFileAndFolder (files.csharpFile, file);
}

transpileExchangeTests(){
this.transpileMainTest({
'tsFile': './ts/src/test/test.ts',
'tsFile': './ts/src/test/tests.ts',
'csharpFile': BASE_TESTS_FILE,
});

Expand Down Expand Up @@ -1402,7 +1372,7 @@ class NewTranspiler {
'}',
].join('\n');
}
overwriteFile (tests[idx].csharpFile, csharp);
overwriteFileAndFolder (tests[idx].csharpFile, csharp);
});
}

Expand All @@ -1415,7 +1385,7 @@ class NewTranspiler {

if (isMainEntry(import.meta.url)) {
const ws = process.argv.includes ('--ws')
const baseOnly = process.argv.includes ('--base')
const baseOnly = process.argv.includes ('--baseTests')
const test = process.argv.includes ('--test') || process.argv.includes ('--tests')
const examples = process.argv.includes ('--examples');
const force = process.argv.includes ('--force')
Expand Down
Loading