"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const chai_1 = require("chai");
const src_1 = require("../../src");
// eslint-disable-next-line @typescript-eslint/no-var-requires
const chai = require("chai");
// eslint-disable-next-line @typescript-eslint/no-var-requires
chai.use(require("chai-as-promised"));
describe("Lite block base test ", function () {
    before(async function () {
        src_1.traceManager.displayStateOnException = false;
    });
    describe("getChainType", function () {
        it("Should get chainType : default", async function () {
            const en = src_1.MCC.getChainType("default");
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.invalid);
        });
        it("Should get chainType : ALGO", async function () {
            const en = src_1.MCC.getChainType("ALGO");
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.ALGO);
        });
        it("Should get chainType : ALGORAND", async function () {
            const en = src_1.MCC.getChainType("ALGORAND");
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.ALGO);
        });
        it("Should get chainType : ALGO", async function () {
            const en = src_1.MCC.getChainType(src_1.ChainType.ALGO);
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.ALGO);
        });
        it("Should get chainType : DOGE", async function () {
            const en = src_1.MCC.getChainType("DOGE");
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.DOGE);
        });
        it("Should get chainType : DOGE", async function () {
            const en = src_1.MCC.getChainType(src_1.ChainType.DOGE);
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.DOGE);
        });
        it("Should get chainType : LTC", async function () {
            const en = src_1.MCC.getChainType("LTC");
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.LTC);
        });
        it("Should get chainType : LTC", async function () {
            const en = src_1.MCC.getChainType(src_1.ChainType.LTC);
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.LTC);
        });
        it("Should get chainType : BTC", async function () {
            const en = src_1.MCC.getChainType("BTC");
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.BTC);
        });
        it("Should get chainType : BTC", async function () {
            const en = src_1.MCC.getChainType(src_1.ChainType.BTC);
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.BTC);
        });
        it("Should get chainType : XRP", async function () {
            const en = src_1.MCC.getChainType("XRP");
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.XRP);
        });
        it("Should get chainType : RIPPLE", async function () {
            const en = src_1.MCC.getChainType("RIPPLE");
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.XRP);
        });
        it("Should get chainType : XRP", async function () {
            const en = src_1.MCC.getChainType(src_1.ChainType.XRP);
            (0, chai_1.expect)(en).to.eq(src_1.ChainType.XRP);
        });
    });
    describe("getChainName", function () {
        it("Should get ChainTypeName : default", async function () {
            const en = src_1.MCC.getChainTypeName(src_1.ChainType.invalid);
            (0, chai_1.expect)(en).to.eq("invalid");
        });
        it("Should get ChainTypeName : XRP", async function () {
            const en = src_1.MCC.getChainTypeName(src_1.ChainType.XRP);
            (0, chai_1.expect)(en).to.eq("XRP");
        });
        it("Should get ChainTypeName : ALGO", async function () {
            const en = src_1.MCC.getChainTypeName(src_1.ChainType.ALGO);
            (0, chai_1.expect)(en).to.eq("ALGO");
        });
        it("Should get ChainTypeName : BTC", async function () {
            const en = src_1.MCC.getChainTypeName(src_1.ChainType.BTC);
            (0, chai_1.expect)(en).to.eq("BTC");
        });
        it("Should get ChainTypeName : DOGE", async function () {
            const en = src_1.MCC.getChainTypeName(src_1.ChainType.DOGE);
            (0, chai_1.expect)(en).to.eq("DOGE");
        });
        it("Should get ChainTypeName : LTC", async function () {
            const en = src_1.MCC.getChainTypeName(src_1.ChainType.LTC);
            (0, chai_1.expect)(en).to.eq("LTC");
        });
    });
    describe("Client", function () {
        it("Should not initialize", async function () {
            const fn = () => {
                return src_1.MCC.Client("invalid", { url: "", password: "" });
            };
            (0, chai_1.expect)(fn).to.throw(Error);
            (0, chai_1.expect)(fn).to.throw("Not implemented");
        });
    });
});
//# sourceMappingURL=chaintype.test.js.map