wlu: updated
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 95a6a0e..5148043 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
@@ -92,7 +92,7 @@
 	public static ProcessElement getProcessElement(MethodLibrary lib, String path) {
 		int ix = path.lastIndexOf("/");
 		String parentPath = path.substring(0, ix);
-		String name = path.substring(ix);
+		String name = path.substring(ix + 1);
 		
 		ProcessPackage outerParent = getProcessElementParent(lib, parentPath, name);
 		
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 3028375..6772edd 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
@@ -25,6 +25,7 @@
 import org.eclipse.epf.library.tester.TesterOutputUtil;
 import org.eclipse.epf.library.tester.iface.TCExeReply;
 import org.eclipse.epf.library.tester.impl.TestCommandImpl;
+import org.eclipse.epf.uma.Activity;
 import org.eclipse.epf.uma.BreakdownElement;
 import org.eclipse.epf.uma.CapabilityPattern;
 import org.eclipse.epf.uma.ContentElement;
@@ -90,9 +91,6 @@
 		if (reply != null && !reply.passing()) {
 			return reply;
 		}
-		if (true) {
-			return null;
-		}
 		return executeEdit(name, parentPath);
 	}
 
@@ -112,7 +110,7 @@
 
 	private TCExeReply addToLib(String parentPath, MethodElement me) {
 		if (me instanceof BreakdownElement) {
-			return addBeToLib(parentPath, (ProcessElement) me);
+			return addProcessElementToLib(parentPath, (ProcessElement) me);
 		}
 		MethodLibrary currLib = getOwner().getCurrentBaseLib();
 		MethodElement parentMe = TesterOutputUtil.getMethodElement(currLib, parentPath);
@@ -127,7 +125,7 @@
 		return null;
 	}
 	
-	private TCExeReply addBeToLib(String parentPath, ProcessElement pe) {
+	private TCExeReply addProcessElementToLib(String parentPath, ProcessElement pe) {
 		MethodLibrary currLib = getOwner().getCurrentBaseLib();
 		ProcessPackage parentMe = TesterOutputUtil.getProcessElementParent(currLib, parentPath, pe.getName());
 		if (parentMe == null) {
@@ -141,9 +139,18 @@
 			pc.setGuid(EcoreUtil.generateUUID());
 			pc.setName(pe.getName());
 			parentMe.getChildPackages().add(pc);
-			pc.setProcess(cp);
-			
+			pc.setProcess(cp);			
 			addToParent(pe, pc);
+			
+		} else if (pe instanceof BreakdownElement) {
+			BreakdownElement be = (BreakdownElement) pe;
+			ProcessPackage pkg = UmaFactory.eINSTANCE.createProcessPackage();
+			pkg.setName(pe.getName());
+			parentMe.getChildPackages().add(pkg);;
+			addToParent(pe, pkg);
+			
+			Activity parentAct = (Activity) parentMe.getProcessElements().get(0);
+			parentAct.getBreakdownElements().add(be);
 		}
 
 		save(parentMe);
@@ -176,6 +183,18 @@
 			if (eobj instanceof MethodConfiguration) {
 				return up.getMethodLibrary_PredefinedConfigurations();
 			}
+		}		
+		
+		if (owner instanceof ContentPackage) {
+			if (eobj instanceof ContentElement) {
+				return up.getContentPackage_ContentElements();
+			}
+		}
+		
+		if (owner instanceof ProcessPackage) {
+			if (eobj instanceof ProcessElement) {
+				return up.getProcessPackage_ProcessElements();
+			}
 		}
 		
 		if (owner instanceof MethodPackage) {
@@ -184,12 +203,6 @@
 			}
 		}
 		
-		if (owner instanceof ContentPackage) {
-			if (eobj instanceof ContentElement) {
-				return up.getContentPackage_ContentElements();
-			}
-		}
-		
 		return null;
 	}