[ONOS-3634] Enhance app to have a category, icon, URL and readme
This commmit enhances application to have category, icon, URL and
readme. The web GUI and CLI will be implemented in separate commits
Change-Id: Ib02716d7118cc617b24f196f2213ea1fe99a34be
diff --git a/core/api/src/test/java/org/onosproject/app/ApplicationEventTest.java b/core/api/src/test/java/org/onosproject/app/ApplicationEventTest.java
index 34c593c..0d4ae4c 100644
--- a/core/api/src/test/java/org/onosproject/app/ApplicationEventTest.java
+++ b/core/api/src/test/java/org/onosproject/app/ApplicationEventTest.java
@@ -32,8 +32,9 @@
public class ApplicationEventTest extends AbstractEventTest {
private Application createApp() {
- return new DefaultApplication(APP_ID, VER, DESC, ORIGIN, ROLE,
- PERMS, Optional.of(FURL), FEATURES, APPS);
+ return new DefaultApplication(APP_ID, VER, DESC, ORIGIN, CATEGORY,
+ URL, README, ICON, ROLE, PERMS,
+ Optional.of(FURL), FEATURES, APPS);
}
@Test
diff --git a/core/api/src/test/java/org/onosproject/app/DefaultApplicationDescriptionTest.java b/core/api/src/test/java/org/onosproject/app/DefaultApplicationDescriptionTest.java
index 0e93c1f..e01d4d8 100644
--- a/core/api/src/test/java/org/onosproject/app/DefaultApplicationDescriptionTest.java
+++ b/core/api/src/test/java/org/onosproject/app/DefaultApplicationDescriptionTest.java
@@ -40,6 +40,10 @@
public static final Version VER = Version.version(1, 2, "a", null);
public static final String DESC = "Awesome application from Circus, Inc.";
public static final String ORIGIN = "Circus";
+ public static final String CATEGORY = "other";
+ public static final String URL = "http://www.onosproject.org";
+ public static final String README = "Awesome application from Circus, Inc.";
+ public static final byte[] ICON = new byte[] {};
public static final ApplicationRole ROLE = ApplicationRole.ADMIN;
public static final Set<Permission> PERMS = ImmutableSet.of(
new Permission(AppPermission.class.getName(), "FLOWRULE_WRITE"),
@@ -52,17 +56,20 @@
public void basics() {
ApplicationDescription app =
new DefaultApplicationDescription(APP_NAME, VER, DESC, ORIGIN,
+ CATEGORY, URL, README, ICON,
ROLE, PERMS, FURL, FEATURES, APPS);
assertEquals("incorrect id", APP_NAME, app.name());
assertEquals("incorrect version", VER, app.version());
assertEquals("incorrect description", DESC, app.description());
assertEquals("incorrect origin", ORIGIN, app.origin());
- assertEquals("incorect role", ROLE, app.role());
+ assertEquals("incorrect category", CATEGORY, app.category());
+ assertEquals("incorrect URL", URL, app.url());
+ assertEquals("incorrect readme", README, app.readme());
+ assertEquals("incorrect role", ROLE, app.role());
assertEquals("incorrect permissions", PERMS, app.permissions());
assertEquals("incorrect features repo", FURL, app.featuresRepo().get());
assertEquals("incorrect features", FEATURES, app.features());
assertEquals("incorrect apps", APPS, app.requiredApps());
assertTrue("incorrect toString", app.toString().contains(APP_NAME));
}
-
}
\ No newline at end of file
diff --git a/core/api/src/test/java/org/onosproject/core/DefaultApplicationTest.java b/core/api/src/test/java/org/onosproject/core/DefaultApplicationTest.java
index 77b3812..6cb0d0c 100644
--- a/core/api/src/test/java/org/onosproject/core/DefaultApplicationTest.java
+++ b/core/api/src/test/java/org/onosproject/core/DefaultApplicationTest.java
@@ -33,12 +33,17 @@
@Test
public void basics() {
- Application app = new DefaultApplication(APP_ID, VER, DESC, ORIGIN, ROLE,
+ Application app = new DefaultApplication(APP_ID, VER, DESC, ORIGIN,
+ CATEGORY, URL, README, ICON, ROLE,
PERMS, Optional.of(FURL), FEATURES, APPS);
assertEquals("incorrect id", APP_ID, app.id());
assertEquals("incorrect version", VER, app.version());
assertEquals("incorrect description", DESC, app.description());
assertEquals("incorrect origin", ORIGIN, app.origin());
+ assertEquals("incorrect category", CATEGORY, app.category());
+ assertEquals("incorrect URL", URL, app.url());
+ assertEquals("incorrect readme", README, app.readme());
+ assertEquals("incorrect icon", ICON, app.icon());
assertEquals("incorrect role", ROLE, app.role());
assertEquals("incorrect permissions", PERMS, app.permissions());
assertEquals("incorrect features repo", FURL, app.featuresRepo().get());
@@ -49,16 +54,19 @@
@Test
public void testEquality() {
- Application a1 = new DefaultApplication(APP_ID, VER, DESC, ORIGIN, ROLE,
+ Application a1 = new DefaultApplication(APP_ID, VER, DESC, ORIGIN,
+ CATEGORY, URL, README, ICON, ROLE,
PERMS, Optional.of(FURL), FEATURES, APPS);
- Application a2 = new DefaultApplication(APP_ID, VER, DESC, ORIGIN, ROLE,
+ Application a2 = new DefaultApplication(APP_ID, VER, DESC, ORIGIN,
+ CATEGORY, URL, README, ICON, ROLE,
PERMS, Optional.of(FURL), FEATURES, APPS);
- Application a3 = new DefaultApplication(APP_ID, VER, DESC, ORIGIN, ROLE,
+ Application a3 = new DefaultApplication(APP_ID, VER, DESC, ORIGIN,
+ CATEGORY, URL, README, ICON, ROLE,
PERMS, Optional.empty(), FEATURES, APPS);
- Application a4 = new DefaultApplication(APP_ID, VER, DESC, ORIGIN + "asd", ROLE,
+ Application a4 = new DefaultApplication(APP_ID, VER, DESC, ORIGIN + "asd",
+ CATEGORY, URL, README, ICON, ROLE,
PERMS, Optional.of(FURL), FEATURES, APPS);
new EqualsTester().addEqualityGroup(a1, a2)
.addEqualityGroup(a3).addEqualityGroup(a4).testEquals();
}
-
}
\ No newline at end of file