wlu: updated
diff --git a/org.eclipse.epf.library.tests/Libraries/1.0.0/TestCommands/newMethodElements/newActivities.tc b/org.eclipse.epf.library.tests/Libraries/1.0.0/TestCommands/newMethodElements/newActivities.tc
index 052ed76..3230035 100644
--- a/org.eclipse.epf.library.tests/Libraries/1.0.0/TestCommands/newMethodElements/newActivities.tc
+++ b/org.eclipse.epf.library.tests/Libraries/1.0.0/TestCommands/newMethodElements/newActivities.tc
@@ -4,11 +4,12 @@
 	<OpenLibrary libFolderName="newLib">
 	</OpenLibrary>	
 	
-	<NewMethodElement 
-		type="MethodPlugin"
+	<NewMethodPlugin 
 		name="Plug_A"
+		briefDescription="Brief desciption of Plug_A"
+		authors="Somebody"	
 		>	
-	</NewMethodElement>	
+	</NewMethodPlugin>	
 	
 	<NewMethodElement 
 		type="MethodConfiguration"
@@ -29,7 +30,7 @@
 	
 	<OutputLibrary disable="false" />	
 	
-	<CompareToGoldenFile  disable="true"
+	<CompareToGoldenFile  disable="false"
 		goldenFileName="newMethodElements.xml" 
 		diffCount="4" 
 		elementCount="71"
diff --git a/org.eclipse.epf.library.tests/src/org/eclipse/epf/library/tester/TestCommandFileTest.java b/org.eclipse.epf.library.tests/src/org/eclipse/epf/library/tester/TestCommandFileTest.java
index 0ea3452..3b53d2c 100644
--- a/org.eclipse.epf.library.tests/src/org/eclipse/epf/library/tester/TestCommandFileTest.java
+++ b/org.eclipse.epf.library.tests/src/org/eclipse/epf/library/tester/TestCommandFileTest.java
@@ -48,8 +48,8 @@
 		
 		"TestCommands",
 		"newMethodElements",
-		"newMethodElements.tc"
-		//"newActivities.tc"
+		//"newMethodElements.tc"
+		"newActivities.tc"
 	};
 		
 	private QaTestService service = new	QaTestService(new TestFolderSetup(), true);
diff --git a/org.eclipse.epf.library.tests/src/org/eclipse/epf/library/tester/TesterOutputUtil.java b/org.eclipse.epf.library.tests/src/org/eclipse/epf/library/tester/TesterOutputUtil.java
index 30d99b3..0700736 100644
--- a/org.eclipse.epf.library.tests/src/org/eclipse/epf/library/tester/TesterOutputUtil.java
+++ b/org.eclipse.epf.library.tests/src/org/eclipse/epf/library/tester/TesterOutputUtil.java
@@ -21,6 +21,7 @@
 import org.eclipse.epf.uma.MethodElement;
 import org.eclipse.epf.uma.MethodLibrary;
 import org.eclipse.epf.uma.MethodPlugin;
+import org.eclipse.epf.uma.ProcessPackage;
 
 /**
  * Utility class for tester output manipulations
@@ -87,9 +88,31 @@
 		return getMethodConfiguration(lib, firstPath);
 	}
 	
-	public static MethodElement getBreakdownElementParent(MethodLibrary lib, 
+	public static ProcessPackage getBreakdownElementParent(MethodLibrary lib, 
 			String parentPath, String beName) {
-		return null;
+		if (parentPath == null || parentPath.length() == 0) {
+			return null;
+		}
+		List paths = parseMethodElementPath(parentPath);
+		int sz = paths.size();
+		if (sz == 0) {
+			return null;
+		}		
+		MethodElement me = getFirstMethodElement(lib, (String) paths.get(0));
+		if (me == null) {
+			return null;
+		}
+		for (int i=1; i<sz; i++) {
+			Map nameMap = getMethodElementNameMap(me.eContents());
+			me = (MethodElement) nameMap.get(paths.get(i));
+			if (me == null || i == sz - 1) {
+				break;
+			}
+			if (i > 2 && me instanceof ProcessPackage) {
+				
+			}
+		}		
+		return me instanceof ProcessPackage ? (ProcessPackage) me : null;
 }
 	
 	public static List parseMethodElementPath(String path) {
diff --git a/org.eclipse.epf.library.tests/src/org/eclipse/epf/library/tester/impl/testcommands/TCNewMethodElement.java b/org.eclipse.epf.library.tests/src/org/eclipse/epf/library/tester/impl/testcommands/TCNewMethodElement.java
index 18b4d45..d804bfa 100644
--- a/org.eclipse.epf.library.tests/src/org/eclipse/epf/library/tester/impl/testcommands/TCNewMethodElement.java
+++ b/org.eclipse.epf.library.tests/src/org/eclipse/epf/library/tester/impl/testcommands/TCNewMethodElement.java
@@ -26,6 +26,7 @@
 import org.eclipse.epf.library.tester.iface.TCExeReply;
 import org.eclipse.epf.library.tester.impl.TestCommandImpl;
 import org.eclipse.epf.uma.BreakdownElement;
+import org.eclipse.epf.uma.CapabilityPattern;
 import org.eclipse.epf.uma.ContentElement;
 import org.eclipse.epf.uma.ContentPackage;
 import org.eclipse.epf.uma.MethodConfiguration;
@@ -33,6 +34,8 @@
 import org.eclipse.epf.uma.MethodLibrary;
 import org.eclipse.epf.uma.MethodPackage;
 import org.eclipse.epf.uma.MethodPlugin;
+import org.eclipse.epf.uma.ProcessComponent;
+import org.eclipse.epf.uma.ProcessPackage;
 import org.eclipse.epf.uma.UmaFactory;
 import org.eclipse.epf.uma.UmaPackage;
 import org.eclipse.epf.uma.util.ContentDescriptionFactory;
@@ -86,7 +89,9 @@
 		if (reply != null && !reply.passing()) {
 			return reply;
 		}
-
+		if (true) {
+			return null;
+		}
 		return executeEdit(name, parentPath);
 	}
 
@@ -105,6 +110,9 @@
 	}
 
 	private TCExeReply addToLib(String parentPath, MethodElement me) {
+		if (me instanceof BreakdownElement) {
+			return addBeToLib(parentPath, (BreakdownElement) me);
+		}
 		MethodLibrary currLib = getOwner().getCurrentBaseLib();
 		MethodElement parentMe = TesterOutputUtil.getMethodElement(currLib, parentPath);
 		if (parentMe == null) {
@@ -118,13 +126,24 @@
 		return null;
 	}
 	
-	private TCExeReply addToLib(String parentPath, BreakdownElement be) {
+	private TCExeReply addBeToLib(String parentPath, BreakdownElement be) {
 		MethodLibrary currLib = getOwner().getCurrentBaseLib();
-		MethodElement parentMe = TesterOutputUtil.getBreakdownElementParent(currLib, parentPath, be.getName());
+		ProcessPackage parentMe = TesterOutputUtil.getBreakdownElementParent(currLib, parentPath, be.getName());
 		if (parentMe == null) {
 			return new TCExeReplyImpl("parentMe == null", false);
-		}		
-		addToParent(be, parentMe);
+		}
+		if (be instanceof CapabilityPattern) {			
+			CapabilityPattern cp = (CapabilityPattern) be;
+			//cp.setDefaultContext(defaultConfig);
+
+			ProcessComponent pc = UmaFactory.eINSTANCE.createProcessComponent();
+			pc.setGuid(EcoreUtil.generateUUID());
+			pc.setName(be.getName());
+			parentMe.getChildPackages().add(pc);
+			pc.setProcess(cp);
+			
+			addToParent(be, pc);
+		}
 
 		save(parentMe);