Skip to main content
Glama
fixtures.js6.78 kB
// Test fixtures for MCP Sigmund // This file provides consistent test data to ensure reliable test execution export const TEST_FIXTURES = { // Test provider data providers: [ { id: 'test-provider-1', name: 'Test Bank', environment: 'sandbox', status: 'active', created_at: '2024-01-01T00:00:00Z', updated_at: '2024-01-01T00:00:00Z' }, { id: 'test-provider-2', name: 'Test Credit Union', environment: 'sandbox', status: 'active', created_at: '2024-01-01T00:00:00Z', updated_at: '2024-01-01T00:00:00Z' } ], // Test user data users: [ { id: 'test-user-1', provider_id: 'test-provider-1', external_id: 'ext-user-1', email: 'test@example.com', status: 'active', created_at: '2024-01-01T00:00:00Z', updated_at: '2024-01-01T00:00:00Z' } ], // Test account data accounts: [ { id: 'test-account-1', user_id: 'test-user-1', provider_id: 'test-provider-1', external_id: 'ext-account-1', account_type: 'checking', display_name: 'Test Checking Account', currency: 'EUR', current_balance: 1500.00, available_balance: 1500.00, status: 'active', created_at: '2024-01-01T00:00:00Z', updated_at: '2024-01-01T00:00:00Z', last_updated: '2024-01-01T00:00:00Z' }, { id: 'test-account-2', user_id: 'test-user-1', provider_id: 'test-provider-2', external_id: 'ext-account-2', account_type: 'savings', display_name: 'Test Savings Account', currency: 'EUR', current_balance: 5000.00, available_balance: 5000.00, status: 'active', created_at: '2024-01-01T00:00:00Z', updated_at: '2024-01-01T00:00:00Z', last_updated: '2024-01-01T00:00:00Z' } ], // Test transaction data transactions: [ { id: 'test-transaction-1', account_id: 'test-account-1', user_id: 'test-user-1', provider_id: 'test-provider-1', external_id: 'ext-transaction-1', amount: -25.50, currency: 'EUR', date: '2024-01-15T10:30:00Z', description: 'Coffee Shop Purchase', category: 'Food & Dining', status: 'completed', created_at: '2024-01-15T10:30:00Z', updated_at: '2024-01-15T10:30:00Z' }, { id: 'test-transaction-2', account_id: 'test-account-1', user_id: 'test-user-1', provider_id: 'test-provider-1', external_id: 'ext-transaction-2', amount: 3000.00, currency: 'EUR', date: '2024-01-01T09:00:00Z', description: 'Salary Payment', category: 'Income', status: 'completed', created_at: '2024-01-01T09:00:00Z', updated_at: '2024-01-01T09:00:00Z' }, { id: 'test-transaction-3', account_id: 'test-account-2', user_id: 'test-user-1', provider_id: 'test-provider-2', external_id: 'ext-transaction-3', amount: -100.00, currency: 'EUR', date: '2024-01-10T14:20:00Z', description: 'Grocery Store', category: 'Food & Dining', status: 'completed', created_at: '2024-01-10T14:20:00Z', updated_at: '2024-01-10T14:20:00Z' } ], // Test balance data balances: [ { id: 'test-balance-1', account_id: 'test-account-1', user_id: 'test-user-1', provider_id: 'test-provider-1', balance_type: 'current', amount: 1500.00, currency: 'EUR', snapshot_date: '2024-01-15T00:00:00Z' }, { id: 'test-balance-2', account_id: 'test-account-2', user_id: 'test-user-1', provider_id: 'test-provider-2', balance_type: 'current', amount: 5000.00, currency: 'EUR', snapshot_date: '2024-01-15T00:00:00Z' } ] }; // Helper functions for test data export const TestHelpers = { // Get a random transaction for testing getRandomTransaction: () => { const transactions = TEST_FIXTURES.transactions; return transactions[Math.floor(Math.random() * transactions.length)]; }, // Get transactions by category getTransactionsByCategory: (category) => { return TEST_FIXTURES.transactions.filter(t => t.category === category); }, // Get transactions by provider getTransactionsByProvider: (providerId) => { return TEST_FIXTURES.transactions.filter(t => t.provider_id === providerId); }, // Get accounts by provider getAccountsByProvider: (providerId) => { return TEST_FIXTURES.accounts.filter(a => a.provider_id === providerId); }, // Calculate expected totals calculateExpectedTotals: () => { const transactions = TEST_FIXTURES.transactions; const totalIncome = transactions .filter(t => t.amount > 0) .reduce((sum, t) => sum + t.amount, 0); const totalExpenses = transactions .filter(t => t.amount < 0) .reduce((sum, t) => sum + Math.abs(t.amount), 0); const netFlow = totalIncome - totalExpenses; return { totalIncome, totalExpenses, netFlow, transactionCount: transactions.length }; } }; // Test data validation helpers export const TestValidators = { // Validate transaction structure validateTransaction: (transaction) => { const requiredFields = ['id', 'account_id', 'user_id', 'provider_id', 'amount', 'date', 'status']; return requiredFields.every(field => transaction.hasOwnProperty(field)); }, // Validate account structure validateAccount: (account) => { const requiredFields = ['id', 'user_id', 'provider_id', 'account_type', 'status']; return requiredFields.every(field => account.hasOwnProperty(field)); }, // Validate provider structure validateProvider: (provider) => { const requiredFields = ['id', 'name', 'status']; return requiredFields.every(field => provider.hasOwnProperty(field)); } }; //# sourceMappingURL=fixtures.js.map

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/radup/mcp-sigmund'

If you have feedback or need assistance with the MCP directory API, please join our Discord server