#!groovy
funcs = evaluate readTrusted( 'TestON/JenkinsFile/dependencies/JenkinsCommonFuncs.groovy' )
test_lists = evaluate readTrusted( 'TestON/JenkinsFile/dependencies/JenkinsTestONTests.groovy' )
fileRelated = evaluate readTrusted( 'TestON/JenkinsFile/dependencies/JenkinsPathAndFiles.groovy' )

fileRelated.init()
stat_graph_generator_file = fileRelated.histogramMultiple
pie_graph_generator_file = fileRelated.pieMultiple
graph_saved_directory = fileRelated.jenkinsWorkspace + "postjob-VM/"

funcs.initializeTrend( "VM" )

onos_branch = params.ONOSbranch
AllTheTests = test_lists.getAllTheTests("")

funcs.generateStatGraph( "TestStation-VMs",
                         onos_branch,
                         AllTheTests,
                         stat_graph_generator_file,
                         pie_graph_generator_file,
                         graph_saved_directory )
