arnaucube
arnaucube/grapevine-sonobePublic Self-hosted repository
grapevine-sonobe/circom/node_modules/circomlib/test/mimccircuit.js
circom/node_modules/circomlib/test/mimccircuit.jsRaw
 1const chai = require("chai");
 2const path = require("path");
 3const wasm_tester = require("circom_tester").wasm;
 4
 5const buildMimc7 = require("circomlibjs").buildMimc7;
 6
 7describe("MiMC Circuit test", function () {
 8    let circuit;
 9    let mimc7;
10
11    this.timeout(100000);
12
13    before( async () => {
14        mimc7 = await buildMimc7();
15        circuit = await wasm_tester(path.join(__dirname, "circuits", "mimc_test.circom"));
16    });
17
18    it("Should check constrain", async () => {
19        const w = await circuit.calculateWitness({x_in: 1, k: 2}, true);
20
21        const res2 = mimc7.hash(1,2,91);
22
23        await circuit.assertOut(w, {out: mimc7.F.toObject(res2)});
24
25        await circuit.checkConstraints(w);
26    });
27});