mirror of
https://github.com/pezkuwichain/revive.git
synced 2026-06-14 20:21:07 +00:00
154 lines
6.0 KiB
TypeScript
154 lines
6.0 KiB
TypeScript
import { executeCommand } from "../src/helper";
|
|
import { paths } from '../src/entities';
|
|
|
|
|
|
describe("Set of --combined-json tests", () => {
|
|
const zksolcCommand = 'zksolc';
|
|
const solcCommand = 'solc';
|
|
const json_args: string[] = [`abi`, `hashes`, `metadata`, `devdoc`, `userdoc`, `storage-layout`, `ast`, `asm`, `bin`, `bin-runtime`];
|
|
|
|
//id1742:I
|
|
describe(`Run ${zksolcCommand} with just --combined-json`, () => {
|
|
const args = [`--combined-json`];
|
|
const result = executeCommand(zksolcCommand, args);
|
|
|
|
it("Valid command exit code = 1", () => {
|
|
expect(result.exitCode).toBe(1);
|
|
});
|
|
|
|
it("--combined-json error is presented", () => {
|
|
expect(result.output).toMatch(/(requires a value but none was supplied)/i);
|
|
});
|
|
|
|
it("solc exit code == zksolc exit code", () => {
|
|
const solcResult = executeCommand(solcCommand, args);
|
|
expect(solcResult.exitCode).toBe(result.exitCode);
|
|
});
|
|
});
|
|
|
|
//id1742:II
|
|
describe(`Run ${zksolcCommand} with Sol contract and --combined-json`, () => {
|
|
const args = [`${paths.pathToBasicSolContract}`, `--combined-json`];
|
|
const result = executeCommand(zksolcCommand, args);
|
|
|
|
it("Valid command exit code = 1", () => {
|
|
expect(result.exitCode).toBe(1);
|
|
});
|
|
|
|
it("--combined-json error is presented", () => {
|
|
expect(result.output).toMatch(/(requires a value but none was supplied)/i);
|
|
});
|
|
|
|
it("solc exit code == zksolc exit code", () => {
|
|
const solcResult = executeCommand(solcCommand, args);
|
|
expect(solcResult.exitCode).toBe(result.exitCode);
|
|
});
|
|
});
|
|
|
|
//id1742:III
|
|
for (let i = 0; i < json_args.length; i++) {
|
|
describe(`Run ${zksolcCommand} with Sol, --combined-json and ARG: ${json_args[i]}`, () => {
|
|
const args = [`${paths.pathToBasicSolContract}`, `--combined-json`, `${json_args[i]}`];
|
|
const result = executeCommand(zksolcCommand, args);
|
|
|
|
it("Valid command exit code = 0", () => {
|
|
expect(result.exitCode).toBe(0);
|
|
});
|
|
|
|
it("--combined-json error is presented", () => {
|
|
expect(result.output).toMatch(/(contracts)/i);
|
|
});
|
|
|
|
it("solc exit code == zksolc exit code", () => {
|
|
const solcResult = executeCommand(solcCommand, args);
|
|
expect(solcResult.exitCode).toBe(result.exitCode);
|
|
});
|
|
});
|
|
}
|
|
|
|
//id1829:I
|
|
for (let i = 0; i < json_args.length; i++) {
|
|
describe(`Run ${zksolcCommand} with Sol, --combined-json and wrong ARG: --${json_args[i]}`, () => {
|
|
const args = [`${paths.pathToBasicSolContract}`, `--combined-json`, `--${json_args[i]}`];
|
|
const result = executeCommand(zksolcCommand, args);
|
|
|
|
it("Valid command exit code = 1", () => {
|
|
expect(result.exitCode).toBe(1);
|
|
});
|
|
|
|
it("--combined-json error is presented", () => {
|
|
expect(result.output).toMatch(/(Invalid option|error)/i);
|
|
});
|
|
|
|
it("solc exit code == zksolc exit code", () => {
|
|
const solcResult = executeCommand(solcCommand, args);
|
|
expect(solcResult.exitCode).toBe(result.exitCode);
|
|
});
|
|
});
|
|
}
|
|
|
|
//id1829:II
|
|
for (let i = 0; i < json_args.length; i++) {
|
|
describe(`Run ${zksolcCommand} with Sol, --combined-json and multiple ARG: ${json_args[i]} ${json_args[i]}`, () => {
|
|
const args = [`${paths.pathToBasicSolContract}`, `--combined-json`, `${json_args[i]}`, `${json_args[i]}`];
|
|
const result = executeCommand(zksolcCommand, args);
|
|
|
|
xit("Valid command exit code = 1", () => {
|
|
expect(result.exitCode).toBe(1);
|
|
});
|
|
|
|
it("--combined-json error is presented", () => {
|
|
expect(result.output).toMatch(/(No such file or directory|cannot find the file specified)/i); // Hopefully we should have more precise message here!
|
|
});
|
|
|
|
xit("solc exit code == zksolc exit code", () => {
|
|
const solcResult = executeCommand(solcCommand, args);
|
|
expect(solcResult.exitCode).toBe(result.exitCode);
|
|
});
|
|
});
|
|
}
|
|
|
|
//id1829:III
|
|
for (let i = 0; i < json_args.length; i++) {
|
|
describe(`Run ${zksolcCommand} with Sol, and multiple (--combined-json ${json_args[i]})`, () => {
|
|
const args = [`${paths.pathToBasicSolContract}`, `--combined-json`, `${json_args[i]}`, `--combined-json`, `${json_args[i]}`];
|
|
const result = executeCommand(zksolcCommand, args);
|
|
|
|
it("Valid command exit code = 1", () => {
|
|
expect(result.exitCode).toBe(1);
|
|
});
|
|
|
|
it("--combined-json error is presented", () => {
|
|
expect(result.output).toMatch(/(cannot be used multiple times)/i);
|
|
});
|
|
|
|
it("solc exit code == zksolc exit code", () => {
|
|
const solcResult = executeCommand(solcCommand, args);
|
|
expect(solcResult.exitCode).toBe(result.exitCode);
|
|
});
|
|
});
|
|
}
|
|
|
|
//id1830
|
|
for (let i = 0; i < json_args.length; i++) {
|
|
describe(`Run ${zksolcCommand} with Yul, and --combined-json ${json_args[i]}`, () => {
|
|
const args = [`${paths.pathToBasicYulContract}`, `--combined-json`, `${json_args[i]}`];
|
|
const result = executeCommand(zksolcCommand, args);
|
|
|
|
it("Valid command exit code = 1", () => {
|
|
expect(result.exitCode).toBe(1);
|
|
});
|
|
|
|
it("--combined-json error is presented", () => {
|
|
expect(result.output).toMatch(/(ParserError: Expected identifier)/i);
|
|
});
|
|
asd
|
|
|
|
it("solc exit code == zksolc exit code", () => {
|
|
const solcResult = executeCommand(solcCommand, args);
|
|
expect(solcResult.exitCode).toBe(result.exitCode);
|
|
});
|
|
});
|
|
}
|
|
});
|