UNPKG

filecoin-pin

Version:

IPFS Pinning Service API implementation that pins to Filecoin's PDP service

53 lines 1.96 kB
import { EventEmitter } from 'node:events'; // Mock provider info for testing export const mockProviderInfo = { owner: '0x78bF4d833fC2ba1Abd42Bc772edbC788EC76A28F', pdpUrl: 'http://localhost:8888/pdp', pieceRetrievalUrl: 'http://localhost:8888/retrieve', registeredAt: 1234567890, approvedAt: 1234567891 }; // Mock storage service that simulates successful uploads export class MockStorageService extends EventEmitter { proofSetId = 'proof-set-123'; storageProvider = mockProviderInfo.owner; async upload(_data, callbacks) { // Simulate upload delay await new Promise(resolve => setTimeout(resolve, 100)); // Generate a mock CommP based on data size const commp = `baga6ea4seaq${Math.random().toString(36).substring(2, 15)}`; const rootId = Math.floor(Math.random() * 1000); // Call callbacks if provided if (callbacks?.onUploadComplete != null) { callbacks.onUploadComplete(commp); } if (callbacks?.onRootAdded != null) { callbacks.onRootAdded(); } return { commp, rootId, size: 1024 }; } } // Mock Synapse instance export class MockSynapse extends EventEmitter { _storage = null; getNetwork() { return { chainId: 314159n, name: 'calibration' }; } async createStorage(options) { // Simulate provider selection if (options?.callbacks?.onProviderSelected != null) { options.callbacks.onProviderSelected(mockProviderInfo); } // Simulate proof set resolution if (options?.callbacks?.onProofSetResolved != null) { options.callbacks.onProofSetResolved({ proofSetId: 'proof-set-123', isExisting: false, provider: mockProviderInfo }); } this._storage = new MockStorageService(); return this._storage; } } //# sourceMappingURL=synapse-mocks.js.map