22 lines
758 B
Python
22 lines
758 B
Python
|
|
import pytest
|
||
|
|
from engine.surge import SurgeDetector
|
||
|
|
|
||
|
|
def test_detect_surge():
|
||
|
|
detector = SurgeDetector(multiplier=3.0)
|
||
|
|
tickers = [
|
||
|
|
{"symbol": "BTCUSDT", "quoteVolume": "1000000"},
|
||
|
|
{"symbol": "NEWUSDT", "quoteVolume": "5000000"},
|
||
|
|
{"symbol": "ETHUSDT", "quoteVolume": "800000"},
|
||
|
|
]
|
||
|
|
avg_volumes = {"BTCUSDT": 900000, "NEWUSDT": 1000000, "ETHUSDT": 750000}
|
||
|
|
surged = detector.detect(tickers, avg_volumes)
|
||
|
|
assert "NEWUSDT" in surged
|
||
|
|
assert "BTCUSDT" not in surged
|
||
|
|
|
||
|
|
def test_no_surge():
|
||
|
|
detector = SurgeDetector(multiplier=3.0)
|
||
|
|
tickers = [{"symbol": "BTCUSDT", "quoteVolume": "1000000"}]
|
||
|
|
avg_volumes = {"BTCUSDT": 900000}
|
||
|
|
surged = detector.detect(tickers, avg_volumes)
|
||
|
|
assert len(surged) == 0
|