/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package br.uff.ic.oceano.core.tools.metrics.extractors.dependometer; import br.uff.ic.oceano.core.tools.metrics.extractors.dependometer.util.MetricHelper; import br.uff.ic.oceano.util.test.AbstractNGTest; import com.valtech.source.dependometer.app.core.common.MetricEnum; import java.util.HashSet; import java.util.LinkedList; import java.util.List; import java.util.Set; import static org.testng.Assert.*; import org.testng.annotations.Test; /** * * @author Daniel Heraclio */ public class MetricsLoaderNGTest extends AbstractNGTest { @Test public void testGetSelf() { println("getSelf"); assertNotNull(MetricsLoader.getSelf(), "Null metric loader"); } @Test public void testMetricSetChanged() { println("checkIfMetricSetHasChanged"); assertEquals(MetricEnum.values().length, 103, "Metric set changed"); //count undefined metrics List<MetricEnum> undefined = new LinkedList<MetricEnum>(); for (MetricEnum mEnum : MetricEnum.values()) { try { MetricHelper.isNumberMetric(mEnum); } catch (DependometerException ex) { undefined.add(mEnum); } } assertEquals(undefined.size(),4, "Undefined metrics set changed"); //count numeric metrics try { int count = 0; for (MetricEnum mEnum : MetricEnum.values()) { //ignore undefined if (undefined.contains(mEnum)) { continue; } count += MetricHelper.isNumberMetric(mEnum) ? 1 : 0; } assertEquals(count, 75, "Metric set changed"); } catch (DependometerException ex) { fail(ex.getMessage(), ex); } try { Set<MetricEnum> valids = new HashSet<MetricEnum>(); List<MetricEnum> metrics = MetricHelper.getValidProjectMetrics(); assertEquals(metrics.size(), 53, "Valid Project metrics set changed"); valids.addAll(metrics); metrics = MetricHelper.getValidPackageMetrics(); assertEquals(metrics.size(), 19, "Valid Package Metrics set changed"); valids.addAll(metrics); metrics = MetricHelper.getValidCompilationUnitMetrics(); assertEquals(metrics.size(), 12, "Valid CompilationUnit Metrics set changed"); valids.addAll(metrics); metrics = MetricHelper.getValidTypeMetrics(); assertEquals(metrics.size(), 10, "Valid Type metrics set changed"); valids.addAll(metrics); assertEquals(valids.size(), 72, "Valid metric set changed"); } catch (DependometerException ex) { fail(ex.getMessage(),ex); } } }