UI-Lion: Migrate BundleStitcher and LionConfig to web.gui module.

Change-Id: Id744e8a3a33621d69379b2286d1cd29770f16e57
diff --git a/core/api/src/main/java/org/onosproject/ui/lion/LionUtils.java b/core/api/src/main/java/org/onosproject/ui/lion/LionUtils.java
index c7aecca..c14409a 100644
--- a/core/api/src/main/java/org/onosproject/ui/lion/LionUtils.java
+++ b/core/api/src/main/java/org/onosproject/ui/lion/LionUtils.java
@@ -17,13 +17,9 @@
 
 package org.onosproject.ui.lion;
 
-import com.google.common.collect.ImmutableList;
-import org.onosproject.ui.lion.stitch.BundleStitcher;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.ArrayList;
-import java.util.List;
 import java.util.Locale;
 import java.util.ResourceBundle;
 import java.util.Set;
@@ -215,58 +211,4 @@
         sb.append(DOT).append(baseName);
         return ResourceBundle.getBundle(sb.toString());
     }
-
-    /**
-     * Generates an immutable list of localization bundles, using the specified
-     * resource tree (base) and localization configuration file names (tags).
-     * <p>
-     * As an example, you might invoke:
-     * <pre>
-     * private static final String LION_BASE = "/org/onosproject/ui/lion";
-     *
-     * private static final String[] LION_TAGS = {
-     *     "core.view.App",
-     *     "core.view.Settings",
-     *     "core.view.Cluster",
-     *     "core.view.Processor",
-     *     "core.view.Partition",
-     * };
-     *
-     * List&lt;LionBundle&gt; bundles =
-     *      LionUtils.generateLionBundles(LION_BASE, LION_TAGS);
-     * </pre>
-     * It is expected that in the "LION_BASE" directory there is a subdirectory
-     * named "_config" which contains the configuration files listed in the
-     * "LION_TAGS" array, each with a ".lioncfg" suffix...
-     * <pre>
-     * /org/onosproject/ui/lion/
-     *   |
-     *   +-- _config
-     *         |
-     *         +-- core.view.App.lioncfg
-     *         +-- core.view.Settings.lioncfg
-     *         :
-     * </pre>
-     * These files collate a localization bundle for their particular view
-     * by referencing resource bundles and their keys.
-     *
-     * @param base the base resource directory path
-     * @param tags the list of bundles to generate
-     * @return a list of generated localization bundles
-     */
-    public static List<LionBundle> generateLionBundles(String base,
-                                                       String... tags) {
-        List<LionBundle> result = new ArrayList<>(tags.length);
-        BundleStitcher stitcher = new BundleStitcher(base);
-        for (String tag : tags) {
-            try {
-                LionBundle b = stitcher.stitch(tag);
-                result.add(b);
-
-            } catch (IllegalArgumentException e) {
-                log.warn("Unable to generate bundle: {} / {}", base, tag);
-            }
-        }
-        return ImmutableList.copyOf(result);
-    }
 }
diff --git a/core/api/src/main/java/org/onosproject/ui/lion/stitch/BundleStitcher.java b/core/api/src/main/java/org/onosproject/ui/lion/stitch/BundleStitcher.java
deleted file mode 100644
index dc6e05f..0000000
--- a/core/api/src/main/java/org/onosproject/ui/lion/stitch/BundleStitcher.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * Copyright 2017-present Open Networking Laboratory
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.onosproject.ui.lion.stitch;
-
-import org.onosproject.ui.lion.LionBundle;
-import org.onosproject.ui.lion.LionUtils;
-
-import java.util.ResourceBundle;
-import java.util.Set;
-
-/**
- * Gathers and stitches together a localization bundle according to a
- * "lion" configuration file.
- */
-public class BundleStitcher {
-
-    private static final String CONFIG_DIR = "_config";
-    private static final String SUFFIX = ".lioncfg";
-    private static final String SLASH = "/";
-    private static final String DOT = ".";
-
-
-    private final String base;
-
-    /**
-     * Creates a bundle stitcher, configured with the specified base resource
-     * path.
-     *
-     * @param base the base resource path
-     */
-    public BundleStitcher(String base) {
-        this.base = base;
-    }
-
-    @Override
-    public String toString() {
-        return "BundleStitcher{base=\"" + base + "\"}";
-    }
-
-    /**
-     * Stitches together a LionBundle, based on the bundle configuration data
-     * for the given bundle ID.
-     *
-     * @param id the bundle ID
-     * @return a corresponding lion bundle
-     * @throws IllegalArgumentException if the bundle config cannot be loaded
-     */
-    public LionBundle stitch(String id) {
-        String source = base + SLASH + CONFIG_DIR + SLASH + id + SUFFIX;
-        LionConfig cfg = new LionConfig().load(source);
-        LionBundle.Builder builder = new LionBundle.Builder(id);
-
-        for (LionConfig.CmdFrom from : cfg.entries()) {
-            addItemsToBuilder(builder, from);
-        }
-
-        return builder.build();
-    }
-
-    private void addItemsToBuilder(LionBundle.Builder builder,
-                                   LionConfig.CmdFrom from) {
-        String resBundleName = base + SLASH + from.res();
-        String resFqbn = convertToFqbn(resBundleName);
-        ResourceBundle bundle = LionUtils.getBundledResource(resFqbn);
-
-        if (from.starred()) {
-            addAllItems(builder, bundle);
-        } else {
-            addItems(builder, bundle, from.keys());
-        }
-    }
-
-    // to fully-qualified-bundle-name
-    private String convertToFqbn(String path) {
-        if (!path.startsWith(SLASH)) {
-            throw new IllegalArgumentException("path should start with '/'");
-        }
-        return path.substring(1).replaceAll(SLASH, DOT);
-    }
-
-    private void addAllItems(LionBundle.Builder builder, ResourceBundle bundle) {
-        addItems(builder, bundle, bundle.keySet());
-    }
-
-    private void addItems(LionBundle.Builder builder, ResourceBundle bundle,
-                          Set<String> keys) {
-        keys.forEach(k -> builder.addItem(k, bundle.getString(k)));
-    }
-}
diff --git a/core/api/src/test/java/org/onosproject/ui/lion/LionUtilsTest.java b/core/api/src/test/java/org/onosproject/ui/lion/LionUtilsTest.java
index 957fe73..289ec52 100644
--- a/core/api/src/test/java/org/onosproject/ui/lion/LionUtilsTest.java
+++ b/core/api/src/test/java/org/onosproject/ui/lion/LionUtilsTest.java
@@ -24,7 +24,6 @@
 import org.junit.Test;
 import org.onosproject.ui.AbstractUiTest;
 
-import java.util.List;
 import java.util.Locale;
 import java.util.ResourceBundle;
 
@@ -175,27 +174,6 @@
         checkLanguageCountry(locale, "ko", "KR");
     }
 
-    // -- Testing generateLionBundles(...)
-
-    private static final String LION_BASE = "/org/onosproject/ui/lion/stitchtests";
-
-    private static final String[] LION_TAGS = {"CardGame1"};
-
-    @Test
-    public void generateLionBundles() {
-        title("generateLionBundles");
-        List<LionBundle> bundles =
-                LionUtils.generateLionBundles(LION_BASE, LION_TAGS);
-        print(bundles);
-        assertEquals("missing the bundle", 1, bundles.size());
-
-        LionBundle b = bundles.get(0);
-        assertEquals("wrong id", "CardGame1", b.id());
-        assertEquals("unexpected item count", 12, b.size());
-        assertEquals("missing 3oak", "Three of a Kind", b.getValue("three_oak"));
-        assertEquals("missing queen", "Queen", b.getValue("queen"));
-        assertEquals("missing clubs", "Clubs", b.getValue("clubs"));
-    }
 
     // -- Testing loading of correct bundle, based on locale
 
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/UiExtensionManager.java b/web/gui/src/main/java/org/onosproject/ui/impl/UiExtensionManager.java
index 85935de..83af0d7 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/UiExtensionManager.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/UiExtensionManager.java
@@ -225,7 +225,7 @@
         return new UiExtension.Builder(CL, coreViews)
                 // TODO: currently broken, until BundleStitcher & LionConfig
                 //        have been moved to web.gui module...
-//                .lionBundles(generateLionBundles(LION_BASE, LION_TAGS))
+//                .lionBundles(generateBundles(LION_BASE, LION_TAGS))
                 .messageHandlerFactory(messageHandlerFactory)
                 .topoOverlayFactory(topoOverlayFactory)
                 .topo2OverlayFactory(topo2OverlayFactory)
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/lion/BundleStitcher.java b/web/gui/src/main/java/org/onosproject/ui/impl/lion/BundleStitcher.java
new file mode 100644
index 0000000..aaeab93
--- /dev/null
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/lion/BundleStitcher.java
@@ -0,0 +1,166 @@
+/*
+ * Copyright 2017-present Open Networking Laboratory
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.onosproject.ui.impl.lion;
+
+import com.google.common.collect.ImmutableList;
+import org.onosproject.ui.lion.LionBundle;
+import org.onosproject.ui.lion.LionUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.ResourceBundle;
+import java.util.Set;
+
+/**
+ * Gathers and stitches together a localization bundle according to a
+ * "lion" configuration file.
+ */
+public class BundleStitcher {
+
+    private static final Logger log =
+            LoggerFactory.getLogger(BundleStitcher.class);
+
+    private static final String CONFIG_DIR = "_config";
+    private static final String SUFFIX = ".lioncfg";
+    private static final String SLASH = "/";
+    private static final String DOT = ".";
+
+
+    private final String base;
+
+    /**
+     * Creates a bundle stitcher, configured with the specified base resource
+     * path.
+     *
+     * @param base the base resource path
+     */
+    public BundleStitcher(String base) {
+        this.base = base;
+    }
+
+    @Override
+    public String toString() {
+        return "BundleStitcher{base=\"" + base + "\"}";
+    }
+
+    /**
+     * Stitches together a LionBundle, based on the bundle configuration data
+     * for the given bundle ID.
+     *
+     * @param id the bundle ID
+     * @return a corresponding lion bundle
+     * @throws IllegalArgumentException if the bundle config cannot be loaded
+     */
+    public LionBundle stitch(String id) {
+        String source = base + SLASH + CONFIG_DIR + SLASH + id + SUFFIX;
+        LionConfig cfg = new LionConfig().load(source);
+        LionBundle.Builder builder = new LionBundle.Builder(id);
+
+        for (LionConfig.CmdFrom from : cfg.entries()) {
+            addItemsToBuilder(builder, from);
+        }
+
+        return builder.build();
+    }
+
+    private void addItemsToBuilder(LionBundle.Builder builder,
+                                   LionConfig.CmdFrom from) {
+        String resBundleName = base + SLASH + from.res();
+        String resFqbn = convertToFqbn(resBundleName);
+        ResourceBundle bundle = LionUtils.getBundledResource(resFqbn);
+
+        if (from.starred()) {
+            addAllItems(builder, bundle);
+        } else {
+            addItems(builder, bundle, from.keys());
+        }
+    }
+
+    // to fully-qualified-bundle-name
+    private String convertToFqbn(String path) {
+        if (!path.startsWith(SLASH)) {
+            throw new IllegalArgumentException("path should start with '/'");
+        }
+        return path.substring(1).replaceAll(SLASH, DOT);
+    }
+
+    private void addAllItems(LionBundle.Builder builder, ResourceBundle bundle) {
+        addItems(builder, bundle, bundle.keySet());
+    }
+
+    private void addItems(LionBundle.Builder builder, ResourceBundle bundle,
+                          Set<String> keys) {
+        keys.forEach(k -> builder.addItem(k, bundle.getString(k)));
+    }
+
+    /**
+     * Generates an immutable list of localization bundles, using the specified
+     * resource tree (base) and localization configuration file names (tags).
+     * <p>
+     * As an example, you might invoke:
+     * <pre>
+     * private static final String LION_BASE = "/org/onosproject/ui/lion";
+     *
+     * private static final String[] LION_TAGS = {
+     *     "core.view.App",
+     *     "core.view.Settings",
+     *     "core.view.Cluster",
+     *     "core.view.Processor",
+     *     "core.view.Partition",
+     * };
+     *
+     * List&lt;LionBundle&gt; bundles =
+     *      LionUtils.generateBundles(LION_BASE, LION_TAGS);
+     * </pre>
+     * It is expected that in the "LION_BASE" directory there is a subdirectory
+     * named "_config" which contains the configuration files listed in the
+     * "LION_TAGS" array, each with a ".lioncfg" suffix...
+     * <pre>
+     * /org/onosproject/ui/lion/
+     *   |
+     *   +-- _config
+     *         |
+     *         +-- core.view.App.lioncfg
+     *         +-- core.view.Settings.lioncfg
+     *         :
+     * </pre>
+     * These files collate a localization bundle for their particular view
+     * by referencing resource bundles and their keys.
+     *
+     * @param base the base resource directory path
+     * @param tags the list of bundles to generate
+     * @return a list of generated localization bundles
+     */
+    public static List<LionBundle> generateBundles(String base,
+                                                   String... tags) {
+        List<LionBundle> result = new ArrayList<>(tags.length);
+        BundleStitcher stitcher = new BundleStitcher(base);
+        for (String tag : tags) {
+            try {
+                LionBundle b = stitcher.stitch(tag);
+                result.add(b);
+
+            } catch (IllegalArgumentException e) {
+                log.warn("Unable to generate bundle: {} / {}", base, tag);
+            }
+        }
+        return ImmutableList.copyOf(result);
+    }
+}
diff --git a/core/api/src/main/java/org/onosproject/ui/lion/stitch/LionConfig.java b/web/gui/src/main/java/org/onosproject/ui/impl/lion/LionConfig.java
similarity index 99%
rename from core/api/src/main/java/org/onosproject/ui/lion/stitch/LionConfig.java
rename to web/gui/src/main/java/org/onosproject/ui/impl/lion/LionConfig.java
index 71a423a..0fa520a 100644
--- a/core/api/src/main/java/org/onosproject/ui/lion/stitch/LionConfig.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/lion/LionConfig.java
@@ -15,7 +15,7 @@
  *
  */
 
-package org.onosproject.ui.lion.stitch;
+package org.onosproject.ui.impl.lion;
 
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSortedSet;
diff --git a/core/api/src/main/java/org/onosproject/ui/lion/stitch/package-info.java b/web/gui/src/main/java/org/onosproject/ui/impl/lion/package-info.java
similarity index 84%
rename from core/api/src/main/java/org/onosproject/ui/lion/stitch/package-info.java
rename to web/gui/src/main/java/org/onosproject/ui/impl/lion/package-info.java
index 0661144..f8566fa 100644
--- a/core/api/src/main/java/org/onosproject/ui/lion/stitch/package-info.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/lion/package-info.java
@@ -16,6 +16,6 @@
  */
 
 /**
- * Facilities for stitching together localization bundles.
+ * Set of resources providing localization utilities for the ONOS GUI.
  */
-package org.onosproject.ui.lion.stitch;
+package org.onosproject.ui.impl.lion;
diff --git a/core/api/src/test/java/org/onosproject/ui/lion/stitch/BundleStitcherTest.java b/web/gui/src/test/java/org/onosproject/ui/impl/lion/BundleStitcherTest.java
similarity index 74%
rename from core/api/src/test/java/org/onosproject/ui/lion/stitch/BundleStitcherTest.java
rename to web/gui/src/test/java/org/onosproject/ui/impl/lion/BundleStitcherTest.java
index f1a606a..e5ae6a6 100644
--- a/core/api/src/test/java/org/onosproject/ui/lion/stitch/BundleStitcherTest.java
+++ b/web/gui/src/test/java/org/onosproject/ui/impl/lion/BundleStitcherTest.java
@@ -15,7 +15,7 @@
  *
  */
 
-package org.onosproject.ui.lion.stitch;
+package org.onosproject.ui.impl.lion;
 
 import org.junit.AfterClass;
 import org.junit.Before;
@@ -25,6 +25,7 @@
 import org.onosproject.ui.AbstractUiTest;
 import org.onosproject.ui.lion.LionBundle;
 
+import java.util.List;
 import java.util.Locale;
 
 import static org.junit.Assert.assertEquals;
@@ -34,8 +35,10 @@
  */
 public class BundleStitcherTest extends AbstractUiTest {
 
-    private static final String TEST_RESOURCE_BASE =
-            "/org/onosproject/ui/lion/stitchtests";
+    private static final String LION_BASE = "/org/onosproject/ui/lion";
+
+    private static final String[] LION_TAGS = {"CardGame1"};
+
 
     private static final String[] CARD_GAME_1_KEYS = {
             "of", "flush", "full_house", "pair", "three_oak",
@@ -78,7 +81,7 @@
 
 
     private BundleStitcher testStitcher() {
-        return new BundleStitcher(TEST_RESOURCE_BASE);
+        return new BundleStitcher(LION_BASE);
     }
 
     private void verifyItems(LionBundle lion, String[] values) {
@@ -91,6 +94,24 @@
         }
     }
 
+    // -- Testing generateLionBundles(...)
+
+    @Test
+    public void generateBundles() {
+        title("generateBundles");
+        List<LionBundle> bundles =
+                BundleStitcher.generateBundles(LION_BASE, LION_TAGS);
+        print(bundles);
+        assertEquals("missing the bundle", 1, bundles.size());
+
+        LionBundle b = bundles.get(0);
+        assertEquals("wrong id", "CardGame1", b.id());
+        assertEquals("unexpected item count", 12, b.size());
+        assertEquals("missing 3oak", "Three of a Kind", b.getValue("three_oak"));
+        assertEquals("missing queen", "Queen", b.getValue("queen"));
+        assertEquals("missing clubs", "Clubs", b.getValue("clubs"));
+    }
+
     @Test
     public void cardGame1English() {
         title("cardGame1English");
@@ -105,12 +126,12 @@
 
     /*
      * TODO: Andrea to localize
-     * Under: ${ONOS_ROOT}/core/api/src/test/resources/
+     * Under: ${ONOS_ROOT}/web/gui/src/test/resources/
      *
      * Bundles to Localize:
-     *    org/onosproject/ui/lion/stitchtests/app/Cards.properties
-     *    org/onosproject/ui/lion/stitchtests/core/stuff/Rank.properties
-     *    org/onosproject/ui/lion/stitchtests/core/stuff/Suit.properties
+     *    org/onosproject/ui/lion/app/Cards.properties
+     *    org/onosproject/ui/lion/core/stuff/Rank.properties
+     *    org/onosproject/ui/lion/core/stuff/Suit.properties
      */
     @Ignore("Andrea to localize bundles to Italian")
     @Test
diff --git a/core/api/src/test/java/org/onosproject/ui/lion/stitch/LionConfigTest.java b/web/gui/src/test/java/org/onosproject/ui/impl/lion/LionConfigTest.java
similarity index 98%
rename from core/api/src/test/java/org/onosproject/ui/lion/stitch/LionConfigTest.java
rename to web/gui/src/test/java/org/onosproject/ui/impl/lion/LionConfigTest.java
index ec636b1..5e4f1dc 100644
--- a/core/api/src/test/java/org/onosproject/ui/lion/stitch/LionConfigTest.java
+++ b/web/gui/src/test/java/org/onosproject/ui/impl/lion/LionConfigTest.java
@@ -15,7 +15,7 @@
  *
  */
 
-package org.onosproject.ui.lion.stitch;
+package org.onosproject.ui.impl.lion;
 
 import org.junit.Test;
 import org.onosproject.ui.AbstractUiTest;
@@ -31,7 +31,7 @@
  */
 public class LionConfigTest extends AbstractUiTest {
 
-    private static final String ROOT = "/org/onosproject/ui/lion/stitchtests/";
+    private static final String ROOT = "/org/onosproject/ui/lion/";
     private static final String CMD_ROOT = ROOT + "_cmd/";
     private static final String CONFIG_ROOT = ROOT + "_config/";
 
diff --git a/core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/01-bundle.lioncfg b/web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/01-bundle.lioncfg
similarity index 100%
rename from core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/01-bundle.lioncfg
rename to web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/01-bundle.lioncfg
diff --git a/core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/02-alias.lioncfg b/web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/02-alias.lioncfg
similarity index 100%
rename from core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/02-alias.lioncfg
rename to web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/02-alias.lioncfg
diff --git a/core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/03-from.lioncfg b/web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/03-from.lioncfg
similarity index 100%
rename from core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/03-from.lioncfg
rename to web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/03-from.lioncfg
diff --git a/core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/04-from-four.lioncfg b/web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/04-from-four.lioncfg
similarity index 100%
rename from core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/04-from-four.lioncfg
rename to web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/04-from-four.lioncfg
diff --git a/core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/05-from-expand.lioncfg b/web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/05-from-expand.lioncfg
similarity index 100%
rename from core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/05-from-expand.lioncfg
rename to web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/05-from-expand.lioncfg
diff --git a/core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/06-from-star.lioncfg b/web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/06-from-star.lioncfg
similarity index 100%
rename from core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/06-from-star.lioncfg
rename to web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/06-from-star.lioncfg
diff --git a/core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/07-star-is-special.lioncfg b/web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/07-star-is-special.lioncfg
similarity index 100%
rename from core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_cmd/07-star-is-special.lioncfg
rename to web/gui/src/test/resources/org/onosproject/ui/lion/_cmd/07-star-is-special.lioncfg
diff --git a/core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_config/CardGame1.lioncfg b/web/gui/src/test/resources/org/onosproject/ui/lion/_config/CardGame1.lioncfg
similarity index 100%
rename from core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/_config/CardGame1.lioncfg
rename to web/gui/src/test/resources/org/onosproject/ui/lion/_config/CardGame1.lioncfg
diff --git a/core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/app/Cards.properties b/web/gui/src/test/resources/org/onosproject/ui/lion/app/Cards.properties
similarity index 100%
rename from core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/app/Cards.properties
rename to web/gui/src/test/resources/org/onosproject/ui/lion/app/Cards.properties
diff --git a/core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/core/stuff/Rank.properties b/web/gui/src/test/resources/org/onosproject/ui/lion/core/stuff/Rank.properties
similarity index 100%
rename from core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/core/stuff/Rank.properties
rename to web/gui/src/test/resources/org/onosproject/ui/lion/core/stuff/Rank.properties
diff --git a/core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/core/stuff/Suit.properties b/web/gui/src/test/resources/org/onosproject/ui/lion/core/stuff/Suit.properties
similarity index 100%
rename from core/api/src/test/resources/org/onosproject/ui/lion/stitchtests/core/stuff/Suit.properties
rename to web/gui/src/test/resources/org/onosproject/ui/lion/core/stuff/Suit.properties