UNPKG

lit-siwe

Version:
43 lines (42 loc) 2.55 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); const parsingPositive = require("../../../test/parsing_positive.json"); const validationPositive = require("../../../test/validation_positive.json"); const validationNegative = require("../../../test/validation_negative.json"); // import { Wallet } from 'ethers'; const wallet_1 = require("@ethersproject/wallet"); const client_1 = require("./client"); describe(`Message Generation`, () => { test.concurrent.each(Object.entries(parsingPositive))("Generates message successfully: %s", (_, test) => { const msg = new client_1.SiweMessage(test.fields); expect(msg.toMessage()).toBe(test.message); }); }); describe(`Message Validation`, () => { test.concurrent.each(Object.entries(validationPositive))("Validates message successfully: %s", (_, test_fields) => __awaiter(void 0, void 0, void 0, function* () { const msg = new client_1.SiweMessage(test_fields); yield expect(msg.validate(test_fields.signature)).resolves.not.toThrow(); })); test.concurrent.each(Object.entries(validationNegative))("Fails to validate message: %s", (_, test_fields) => __awaiter(void 0, void 0, void 0, function* () { const msg = new client_1.SiweMessage(test_fields); yield expect(msg.validate(test_fields.signature)).rejects.toThrow(); })); }); describe(`Round Trip`, () => { let wallet = wallet_1.Wallet.createRandom(); test.concurrent.each(Object.entries(parsingPositive))("Generates a Successfully Verifying message: %s", (_, test) => __awaiter(void 0, void 0, void 0, function* () { const msg = new client_1.SiweMessage(test.fields); msg.address = wallet.address; const signature = yield wallet.signMessage(msg.toMessage()); yield expect(msg.validate(signature)).resolves.not.toThrow(); })); });