package jstest.object;
import base.TestCounter;
import common.expression.ExprTester;
import common.expression.Dialect;
import common.expression.Diff;
import common.expression.Language;
import jstest.JSExpressionEngine;
import java.nio.file.Path;
/**
* Tester for
* JavaScript Object Expressions
* homework of Programming Paradigms course.
*
* @author Georgiy Korneev (kgeorgiy@kgeorgiy.info)
*/
public final class ObjectTester {
public static final Dialect OBJECT = new Dialect("new Variable('%s')", "new Const(%s)", "new {op}({args})", ", ");
private static final Diff DIFF = new Diff(2, new Dialect(
"'%s'", "%s",
(name, args) -> "%s.%s(%s)".formatted(args.get(0), name, String.join(", ", args.subList(1, args.size())))
));
private ObjectTester() {
}
public static ExprTester