/******************************************************************************* * Copyright (c) 2017 Rogue Wave Software Inc. and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Rogue Wave Software Inc. - initial implementation *******************************************************************************/ package org.eclipse.php.internal.debug.ui.views.coverage; import org.eclipse.dltk.core.IModelElement; import org.eclipse.php.internal.debug.core.zend.debugger.CodeCoverageData; /** * Code coverage result. */ public class CodeCoverageResult { private IModelElement modelElement; private CodeCoverageData coverageData; private int lines; private int covered; private int significant; private int files; public CodeCoverageResult(final int lines, final int covered, final int significant, final int files) { this.lines = lines; this.covered = covered; if (significant == -1) this.significant = lines; else this.significant = significant; this.files = files; } public void addCoverageResult(final CodeCoverageResult data) { lines += data.getLines(); covered += data.getCovered(); significant += data.getSignificant(); files += data.getFiles(); } public IModelElement getModelElement() { return modelElement; } public CodeCoverageData getCoverageData() { return coverageData; } public int getCovered() { return covered; } public int getSignificant() { return significant; } public int getFiles() { return files; } public int getLines() { return lines; } public float getPercentage() { return (float) covered / significant; } public void setModelElement(final IModelElement modelElement) { this.modelElement = modelElement; } public void setCoverageData(final CodeCoverageData coverageData) { this.coverageData = coverageData; } }