35 lines
994 B
TypeScript
35 lines
994 B
TypeScript
/* TRADINGGRAPH related file */
|
|
|
|
import { describe, it, expect, vi } from "vitest";
|
|
import { TradingGraph } from "../tradingGraph";
|
|
|
|
describe("TradingGraph", () => {
|
|
const mockClient = {
|
|
createChatCompletion: vi.fn().mockResolvedValue({
|
|
choices: [{ message: { content: '{"signal":"bullish","confidence":0.8,"reasoning":"Test"}' } }],
|
|
}),
|
|
};
|
|
|
|
const mockInput = {
|
|
financialData: "Revenue: 1B, Growth: 10%, Debt: low",
|
|
technicalData: {
|
|
prices: [100, 101, 102, 103, 104, 105, 106, 107, 108, 109],
|
|
sma: 105,
|
|
ema: 106,
|
|
rsi: 65,
|
|
macd: 2.5,
|
|
},
|
|
sentimentData: {
|
|
headlines: ["Company beats earnings expectations"],
|
|
source: "news" as const,
|
|
},
|
|
};
|
|
|
|
it("should run full analysis", async () => {
|
|
const graph = new TradingGraph(mockClient as any);
|
|
const decision = await graph.propagate("AAPL", mockInput);
|
|
expect(decision).toHaveProperty("action");
|
|
expect(decision).toHaveProperty("confidence");
|
|
});
|
|
});
|