Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorddunne2009-10-21 15:36:46 +0000
committerddunne2009-10-21 15:36:46 +0000
commitf71b76a8a3095fa74a87eaf974bcb0e927d84969 (patch)
tree8bf7fadb7dab4ab879cf946c0e86474f961cb446
parent31cb4fef531add47dc8e6ab4b8c3fb4896f39b5a (diff)
downloadorg.eclipse.osee-f71b76a8a3095fa74a87eaf974bcb0e927d84969.tar.gz
org.eclipse.osee-f71b76a8a3095fa74a87eaf974bcb0e927d84969.tar.xz
org.eclipse.osee-f71b76a8a3095fa74a87eaf974bcb0e927d84969.zip
code coverage
-rw-r--r--org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/SampleJavaFileParser.java5
-rw-r--r--org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/CoverageImportTest1NavigateItem.java4
-rw-r--r--org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/apu/AuxPowerUnit1.java100
-rw-r--r--org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/apu/AuxPowerUnit2.java44
-rw-r--r--org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xcover/CoverageXViewerFactory.java2
-rw-r--r--org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xmerge/CoverageMergeLabelProvider.java24
-rw-r--r--org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xmerge/CoverageMergeXViewer.java15
7 files changed, 191 insertions, 3 deletions
diff --git a/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/SampleJavaFileParser.java b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/SampleJavaFileParser.java
index 404100a6bb6..214d0a22726 100644
--- a/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/SampleJavaFileParser.java
+++ b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/SampleJavaFileParser.java
@@ -68,6 +68,11 @@ public class SampleJavaFileParser {
String name = m.group(3);
coverageUnit = new CoverageUnit(fileCoverageUnit, name, "Line " + lineNum);
fileCoverageUnit.addCoverageUnit(coverageUnit);
+ // Duplicate this method as error case for importing
+ if (filename.contains("AuxPowerUnit2") && name.contains("clear")) {
+ coverageUnit = new CoverageUnit(fileCoverageUnit, name, "Line " + lineNum);
+ fileCoverageUnit.addCoverageUnit(coverageUnit);
+ }
}
// Determine if executable coverage line; store as CoverageItem
m = executeLine.matcher(line);
diff --git a/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/CoverageImportTest1NavigateItem.java b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/CoverageImportTest1NavigateItem.java
index 450e3ac99c7..e9631ec2efc 100644
--- a/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/CoverageImportTest1NavigateItem.java
+++ b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/CoverageImportTest1NavigateItem.java
@@ -51,7 +51,9 @@ public class CoverageImportTest1NavigateItem extends XNavigateItemAction impleme
//
"com/screenB/ScreenBButton1.java", "com/screenB/ScreenBButton2.java", "com/screenB/ScreenBButton3.java",
//
- "epu/PowerUnit1.java", "epu/PowerUnit1.java",
+ "epu/PowerUnit1.java", "epu/PowerUnit2.java", "epu/PowerUnit2.java",
+ //
+ "apu/AuxPowerUnit1.java", "apu/AuxPowerUnit2.java",
//
"nav/NavigationButton1.java", "nav/NavigationButton2.java", "nav/NavigationButton3.java"
//
diff --git a/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/apu/AuxPowerUnit1.java b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/apu/AuxPowerUnit1.java
new file mode 100644
index 00000000000..090751c9f2a
--- /dev/null
+++ b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/apu/AuxPowerUnit1.java
@@ -0,0 +1,100 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * 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:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.coverage.test.import1.apu;
+
+import java.util.logging.Level;
+import org.eclipse.osee.coverage.internal.Activator;
+import org.eclipse.osee.framework.logging.OseeLog;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.TableColumn;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class AuxPowerUnit1 extends Table {
+
+ public Image image;
+
+ /**
+ * @param parent
+ * @param style
+ */
+ public AuxPowerUnit1(Composite parent, int style, Image image) {
+ super(parent, style);
+ }
+
+ public Image getImage() {
+ try {
+ if (getStyle() == 4) { // 1, 1, TestUnit2
+ return this.image; // 1, 2, n
+ } else {
+ return this.image; // 1, 3, TestUnit2
+ }
+ } catch (IllegalArgumentException ex) {
+ OseeLog.log(Activator.class, Level.SEVERE, ex); // 1, 4, n
+
+ } catch (Exception ex) {
+ OseeLog.log(Activator.class, Level.SEVERE, ex); // 1, 5, n
+ }
+ return null; // 1, 6, n
+ }
+
+ @Override
+ public void clear(int[] indices) {
+ try {
+ if (getStyle() == 4) { // 2, 1, TestUnit2
+ System.out.println("clear it"); // 2, 2, n
+ } else {
+ for (int x = 0; x < 34; x++) {
+ System.err.println("clear");// 2, 2, n
+ }
+ }
+ } catch (IllegalArgumentException ex) {
+ OseeLog.log(Activator.class, Level.SEVERE, ex); // 2, 4, n
+
+ } catch (Exception ex) {
+ OseeLog.log(Activator.class, Level.SEVERE, ex); // 2, 5, n
+ }
+ }
+
+ @Override
+ public void clearAll() {
+ System.out.println("clear All"); // 3, 1, TestUnit2
+ }
+
+ @Override
+ public Point computeSize(int wHint, int hHint, boolean changed) {
+ if (getStyle() == 4) { // 4, 1, TestUnit2
+ return new Point(3, 2); // 4, 2, n
+ } else {
+ return super.computeSize(wHint, hHint, changed); // 4, 3, TestUnit2
+ }
+ }
+
+ @Override
+ public void deselect(int start, int end) {
+ super.deselect(start, end); // 5, 1, TestUnit2
+ }
+
+ @Override
+ public TableColumn getColumn(int index) {
+ return super.getColumn(index); // 6, 1, TestUnit2
+ }
+
+ @Override
+ public int getColumnCount() {
+ return super.getColumnCount(); // 7, 1, TestUnit2
+ }
+
+}
diff --git a/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/apu/AuxPowerUnit2.java b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/apu/AuxPowerUnit2.java
new file mode 100644
index 00000000000..371d90df150
--- /dev/null
+++ b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/import1/apu/AuxPowerUnit2.java
@@ -0,0 +1,44 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * 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:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.coverage.test.import1.apu;
+
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Table;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class AuxPowerUnit2 extends Table {
+
+ public Image image;
+
+ /**
+ * @param parent
+ * @param style
+ */
+ public AuxPowerUnit2(Composite parent, int style, Image image) {
+ super(parent, style);
+ }
+
+ // NOTE: This method will be duplicated to show error case; duplicated via SampleJavaFileParser
+ @Override
+ public void clear(int[] indices) {
+ if (getStyle() == 4) { // 2, 1, TestUnit2
+ System.out.println("clear it"); // 2, 2, n
+ } else {
+ for (int x = 0; x < 34; x++) {
+ System.err.println("clear");// 2, 3, n
+ }
+ }
+ }
+
+}
diff --git a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xcover/CoverageXViewerFactory.java b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xcover/CoverageXViewerFactory.java
index 769b5ecfd6b..b7e78a725d6 100644
--- a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xcover/CoverageXViewerFactory.java
+++ b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xcover/CoverageXViewerFactory.java
@@ -27,7 +27,7 @@ public class CoverageXViewerFactory extends SkynetXViewerFactory {
public static XViewerColumn Namespace =
new XViewerColumn(NAMESPACE + ".namespace", "Namespace", 80, SWT.LEFT, true, SortDataType.String, false, "");
public static XViewerColumn Coverage_Percent =
- new XViewerColumn(NAMESPACE + ".percentCoverage", "Percent Coverage", 40, SWT.LEFT, true,
+ new XViewerColumn(NAMESPACE + ".percentCoverage", "Percent Coverage", 50, SWT.LEFT, true,
SortDataType.Integer, false, "");
public static XViewerColumn Method_Number =
new XViewerColumn(NAMESPACE + ".methodNumber", "Method Number", 80, SWT.LEFT, true, SortDataType.String,
diff --git a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xmerge/CoverageMergeLabelProvider.java b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xmerge/CoverageMergeLabelProvider.java
index 36420099134..89c9c239d7e 100644
--- a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xmerge/CoverageMergeLabelProvider.java
+++ b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xmerge/CoverageMergeLabelProvider.java
@@ -15,6 +15,7 @@ import org.eclipse.nebula.widgets.xviewer.XViewerColumn;
import org.eclipse.osee.coverage.editor.ICoverageEditorItem;
import org.eclipse.osee.coverage.editor.xcover.CoverageLabelProvider;
import org.eclipse.osee.coverage.editor.xcover.CoverageXViewerFactory;
+import org.eclipse.osee.coverage.editor.xmerge.CoverageMergeXViewer.ImportType;
import org.eclipse.osee.coverage.util.CoverageUtil;
import org.eclipse.osee.framework.core.exception.OseeCoreException;
import org.eclipse.osee.framework.ui.skynet.FrameworkImage;
@@ -69,12 +70,33 @@ public class CoverageMergeLabelProvider extends CoverageLabelProvider {
if (!mergeXViewer.isImportAllowed(coverageItem)) {
return "";
}
- return mergeXViewer.getImportType(coverageItem).toString();
+ ImportType importType = mergeXViewer.getImportType(coverageItem);
+ if (coverageItem.isFolder() && importType != ImportType.Error) {
+ boolean errored = isChildErrorImportType(coverageItem);
+ if (errored) {
+ return importType.toString() + " - " + "Child Error";
+ }
+ }
+ if (importType == ImportType.Error) {
+ return importType.toString() + " - " + mergeXViewer.getImportError(coverageItem);
+ }
+ return importType.toString();
}
return coverageItem.getCoverageEditorValue(xCol);
}
+ private boolean isChildErrorImportType(ICoverageEditorItem coverageItem) {
+ for (ICoverageEditorItem childEditorItem : coverageItem.getChildrenItems()) {
+ ImportType importType = mergeXViewer.getImportType(childEditorItem);
+ if (importType == ImportType.Error) {
+ return true;
+ }
+ if (isChildErrorImportType(childEditorItem)) return true;
+ }
+ return false;
+ }
+
@Override
public void dispose() {
}
diff --git a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xmerge/CoverageMergeXViewer.java b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xmerge/CoverageMergeXViewer.java
index a08f60f4a25..7f05732a3aa 100644
--- a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xmerge/CoverageMergeXViewer.java
+++ b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/xmerge/CoverageMergeXViewer.java
@@ -21,6 +21,7 @@ import org.eclipse.osee.coverage.editor.xcover.CoverageXViewer;
import org.eclipse.osee.coverage.editor.xcover.XCoverageViewer.TableType;
import org.eclipse.osee.coverage.model.CoverageItem;
import org.eclipse.osee.coverage.model.CoverageUnit;
+import org.eclipse.osee.coverage.model.TestUnit;
import org.eclipse.osee.coverage.util.CoveragePackageImporter;
import org.eclipse.osee.framework.ui.skynet.results.XResultData;
import org.eclipse.swt.widgets.Composite;
@@ -49,8 +50,22 @@ public class CoverageMergeXViewer extends CoverageXViewer {
return coveragePackageImport.getPackageCoverageItem(importItem, recurse);
}
+ public String getImportError(ICoverageEditorItem importItem) {
+ if (!importError.containsKey(importItem)) {
+ XResultData rd = new XResultData(false);
+ coveragePackageImport.validateItems(Collections.singleton(importItem), rd);
+ importError.put(importItem, rd);
+ }
+ XResultData rd = importError.get(importItem);
+ if (rd.getNumErrors() > 0) {
+ return rd.getReport("").getText();
+ }
+ return "";
+ }
+
public ImportType getImportType(ICoverageEditorItem importItem) {
if (importItem instanceof CoverageItem) return ImportType.None;
+ if (importItem instanceof TestUnit) return ImportType.None;
if (!importError.containsKey(importItem)) {
XResultData rd = new XResultData(false);

Back to the top