seraph-agent
Version:
An extremely lightweight, SRE autonomous AI agent for seamless integration with common observability tasks.
33 lines (32 loc) • 1.26 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const openai_1 = require("../openai");
const openai_2 = __importDefault(require("openai"));
jest.mock('openai');
describe('OpenAIProvider', () => {
const mockedOpenAI = openai_2.default;
it('should handle errors from the OpenAI API', async () => {
const create = jest.fn().mockRejectedValue(new Error('OpenAI API error'));
mockedOpenAI.prototype.chat = { completions: { create } };
const config = {
port: 8080,
workers: 4,
apiKey: 'test-key',
serverApiKey: null,
};
const provider = new openai_1.OpenAIProvider(config);
await expect(provider.generate('test prompt')).rejects.toThrow('OpenAI API error');
});
it('should throw an error if no API key is provided', () => {
const config = {
port: 8080,
workers: 4,
apiKey: null,
serverApiKey: null,
};
expect(() => new openai_1.OpenAIProvider(config)).toThrow('OpenAI API key not found in config.');
});
});