1.0.23 • Published 3 years ago

@trading-bot/tests v1.0.23

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

Тесты

Локальное тестирование

  • Параллельно запускает все тесты в определенной папке

Интеграционные тесты:

  • Готовит сокет сервер на порту 7001 и HTTP сервер на порту 3001
  • Создает переменные окружения для апи
  • Логирует в консоль инфу + выводит покрытие кода всего проекта

Установка:

  1. npm i @trading-bot/tests @ava/babel @babel/polyfill @babel/register -D
  2. Определить разделы scripts, ava, nyc файла package.json:
"scripts": {
    "test-local": "test-local",
    "test-integration": "test-integration"
},
"ava": {
    "timeout": "5m",
    "files": [
        "**/*.test.js"
    ],
    "snapshotDir": "__snapshots__",
    "require": [
        "@babel/core",
        "@babel/polyfill",
        "@babel/register"
    ],
    "babel": {
        "testOptions": {
            "presets": [
                "@babel/preset-env"
            ],
            "plugins": [
                "@babel/plugin-transform-runtime"
            ]
        }
    },
    "environmentVariables": {
        "WEBSOCKET_SERVER_PORT": "7001",
        "REST_SERVER_PORT": "3001",
        "BINANCE_WEBSOCKET_MARKET_AGGTRADE": "ws://localhost:7001/marketAggTrade",
        "BINANCE_WEBSOCKET_MARKET_BOOKTICKER": "ws://localhost:7001/marketBookTicker",
        "BINANCE_WEBSOCKET_MARKET_KLINE": "ws://localhost:7001/marketKline",
        "BINANCE_WEBSOCKET_MARKET_PRICE": "ws://localhost:7001/marketPrice",
        "BINANCE_WEBSOCKET_USERDATA_MARGIN": "ws://localhost:7001/userDataMargin",
        "BINANCE_WEBSOCKET_USERDATA_SPOT": "ws://localhost:7001/userDataSpot",
        "BINANCE_REST_USERDATA_LISTENKEY": "http://localhost:3001/userDataListenKey",
        "BINANCE_REST_ACCOUNT_INFORMATION": "http://localhost:3001/accountInformation",
        "BINANCE_REST_MARKET_KLINES": "http://localhost:3001/marketKlines",
        "BINANCE_REST_TRADE_MARGIN_BORROW": "http://localhost:3001/marginBorrow",
        "BINANCE_REST_TRADE_MARGIN_CANCELORDER": "http://localhost:3001/marginCancelOrder",
        "BINANCE_REST_TRADE_MARGIN_NEWORDER": "http://localhost:3001/marginNewOrder",
        "BINANCE_REST_TRADE_SPOT_CANCELORDER": "http://localhost:3001/spotCancelOrder",
        "BINANCE_REST_TRADE_SPOT_NEWORDER": "http://localhost:3001/spotNewOrder",
        "BINANCE_REST_TRADE_SPOT_QUERYORDER": "http://localhost:3001/spotQueryOrder"
    }
},
"nyc": {
    "all": true,
    "check-coverage": true,
    "branches": 100,
    "lines": 100,
    "functions": 100,
    "statements": 100,
    "include": [
        "**/*.js"
    ],
    "exclude": [
        "**/*.test.js"
    ],
    "parser-plugins": [
        "asyncGenerators",
        "bigInt",
        "classProperties",
        "classPrivateProperties",
        "dynamicImport",
        "importMeta",
        "objectRestSpread",
        "optionalCatchBinding"
    ]
},

Команды:

  1. test-local - запуск локальных тестов в определенной папке. Параллельное выполнение.
  2. test-integration - запуск тестов в определенной папке. Можно указать конкретный файл test-integration ./example1.test.js. Последовательное выполнение.

Особенности:

  1. Все пути к любым ресурсам в тестируемом модуле через path.resolve
  2. В проекте названия папок должно быть без пробелов

Примеры в папке examples

1.0.23

3 years ago

1.0.19

3 years ago

1.0.22

3 years ago

1.0.21

3 years ago

1.0.20

3 years ago

1.0.18

3 years ago

1.0.17

3 years ago

1.0.16

3 years ago

1.0.15

3 years ago

1.0.14

3 years ago

1.0.13

3 years ago

1.0.12

3 years ago

1.0.9

3 years ago

1.0.8

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.11

3 years ago

1.0.10

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago