functions added

This commit is contained in:
Jordi Baylina
2019-11-29 20:19:58 +01:00
parent 93330f065b
commit f4bbcfd90c
13 changed files with 258 additions and 161 deletions

View File

@@ -19,6 +19,14 @@ async function doTest(circuit, testVectors) {
describe("basic cases", function () {
this.timeout(100000);
it("inout", async () => {
await doTest(
"inout.circom",
[
[{in1: 1, in2: [2,3], in3:[[4,5], [6,7], [8,9]]}, {out1: 1, out2: [2,3], out3: [[4,5], [6,7],[8,9]]}],
]
);
});
it("add", async () => {
await doTest(
"add.circom",
@@ -59,4 +67,24 @@ describe("basic cases", function () {
]
);
});
it("function1", async () => {
await doTest(
"function1.circom",
[
[{in: 0}, {out: 3}],
[{in: 10}, {out: 13}],
[{in: __P__.minus(2)}, {out: 1}],
]
);
});
it("function2", async () => {
await doTest(
"function2.circom",
[
[{in: 0}, {out: 3}],
[{in: 10}, {out: 13}],
[{in: __P__.minus(2)}, {out: 1}],
]
);
});
});

View File

@@ -1 +0,0 @@
{"in":[1,2]}

View File

@@ -0,0 +1,12 @@
function func1(a,b) {
return a+b;
}
template Main() {
signal input in;
signal output out;
out <== func1(in, 3);
}
component main = Main();

View File

@@ -0,0 +1,13 @@
function fnConst(a,b) {
return a+b;
}
template Main() {
signal input in;
signal output out;
var a = fnConst(1,2);
out <== in +a;
}
component main = Main();

View File

@@ -1,5 +0,0 @@
[
"1"
,"0"
,"0"
]

View File

@@ -1,19 +0,0 @@
const path = require("path");
const c_tester = require("../index.js").c_tester;
// const stringifyBigInts = require("snarkjs").stringifyBigInts;
describe("inout test", function () {
this.timeout(100000);
it("Should compile a code with vars inside a for", async () => {
const cir = await c_tester(path.join(__dirname, "circuits", "inout.circom"));
const out = await cir.calculateWitness({in1: 1, in2: [2,3], in3:[[4,5], [6,7], [8,9]]});
// console.log(JSON.stringify(stringifyBigInts(out),null,1));
await cir.assertOut(out, {out1: 1, out2: [2,3], out3: [[4,5], [6,7],[8,9]]} );
await cir.release();
});
});