import Sequenic.T3.Config import Sequenic.T3.Pool import Sequenic.T3.Sequence.Datatype.SUITE import Sequenic.T3.Generator.Generator import static Sequenic.T3.Generator.GenCombinators.FirstOf import static Sequenic.T3.Generator.Value.ValueMGCombinators.* import Sequenic.T3.T3groovyAPI import Sequenic.T3.T3instrGroovyAPI import Sequenic.T3.SuiteUtils.Query.* import static Sequenic.T3.SuiteUtils.Query.StepPredicate.* import static Sequenic.T3.SuiteUtils.Query.SeqPredicate.* import static Sequenic.T3.SuiteUtils.Query.LTLQuery.* import static Sequenic.T3.SuiteUtils.Query.Alg2Query.* import static Sequenic.T3.SuiteUtils.Query.Equation.* import Sequenic.T3.SuiteUtils.SuitePrinter.Printer // An example of obtaining coverage information. // Note: experimental, currently class is instrumented in-memory, which prevents it // from accessing non-public members of other classes due to JVM's security constraint. config = new Config(CUT : CUTexamples.Item) t3 = new T3instrGroovyAPI(config) // generate a suite, and show the coverage: S = t3.ADT() t3.printCoverage() // replay the suite, and show the coverage: t3.jacoco.clear() t3.printCoverage() t3.replay(S) t3.printCoverage() // save the suite, reload it, replay, then show the coverage t3.jacoco.clear() t3.printCoverage() S.save(".","bla",false) T = SUITE.load("bla") t3.replay(t3.translate(T)) t3.printCoverage() // produce an HTML report t3.printCoverage("D:/workshop/t2framework/repos/T3/T3i/v0/src/CUTexamples/Item.java","report.html")