@bsv/payment-express-middleware
Version:
BSV Blockchain service monetization express middleware
36 lines (35 loc) • 1.31 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const sdk_1 = require("@bsv/sdk");
const MockWallet_1 = require("./MockWallet");
const testExpressServer_1 = require("./testExpressServer");
describe('AuthFetch and AuthExpress Integration Tests', () => {
const privKey = sdk_1.PrivateKey.fromRandom();
let server;
beforeAll((done) => {
// Start the Express server
server = (0, testExpressServer_1.startServer)(3000);
server.on('listening', () => {
done();
});
});
afterAll((done) => {
// Close the server after tests
server.close(() => {
console.log('Test server stopped');
done();
});
});
test('Weather test', async () => {
const walletWithRequests = new MockWallet_1.MockWallet(privKey);
const authClient = new sdk_1.AuthFetch(walletWithRequests);
const result = await authClient.fetch('http://localhost:3000/weather', {
method: 'GET'
});
expect(result.status).toBe(200);
const jsonResponse = await result.json();
console.log(jsonResponse);
expect(Number(result.headers.get('x-bsv-payment-satoshis-paid'))).toEqual(10);
expect(jsonResponse).toBeDefined();
}, 150000);
});