Search in sources :

Example 1 with CoffeeNetApp

use of rocks.coffeenet.autoconfigure.discovery.service.CoffeeNetApp in project coffeenet-starter by coffeenet.

the class CoffeeNetNavigationDataExtractorTest method extractAppsNoProfile.

@Test
public void extractAppsNoProfile() {
    Map<String, List<CoffeeNetApp>> apps = new HashMap<>();
    CoffeeNetApp coffeeNetApp = new CoffeeNetApp("Coffee App", "coffeeapp.coffeenet", emptySet());
    apps.put("apps", singletonList(coffeeNetApp));
    sut.registerService(CoffeeNetNavigationDataExtractor.CoffeeNetServices.APP_SERVICE, coffeeNetAppServiceMock);
    when(coffeeNetAppServiceMock.getApps(any())).thenReturn(apps);
    // user
    sut.registerService(CoffeeNetNavigationDataExtractor.CoffeeNetServices.USER_SERVICE, coffeeNetCurrentUserServiceMock);
    List<GrantedAuthority> authorities = singletonList(new SimpleGrantedAuthority("ROLE_COFFEENET-ADMIN"));
    Optional<CoffeeNetUserDetails> user = of(new HumanCoffeeNetUser("username", "email", authorities));
    when(coffeeNetCurrentUserServiceMock.get()).thenReturn(user);
    Optional<Map<String, List<CoffeeNetApp>>> extractedApps = sut.extractApps();
    Map<String, List<CoffeeNetApp>> coffeeNetApps = extractedApps.get();
    assertThat(coffeeNetApps).hasSize(1);
    assertThat(coffeeNetApps.get("apps")).hasSize(1);
    assertThat(coffeeNetApps.get("apps").get(0)).isSameAs(coffeeNetApp);
    assertThat(coffeeNetApps.get("profile")).isNull();
}
Also used : HashMap(java.util.HashMap) HumanCoffeeNetUser(rocks.coffeenet.autoconfigure.security.service.HumanCoffeeNetUser) SimpleGrantedAuthority(org.springframework.security.core.authority.SimpleGrantedAuthority) GrantedAuthority(org.springframework.security.core.GrantedAuthority) CoffeeNetUserDetails(rocks.coffeenet.autoconfigure.security.service.CoffeeNetUserDetails) CoffeeNetApp(rocks.coffeenet.autoconfigure.discovery.service.CoffeeNetApp) SimpleGrantedAuthority(org.springframework.security.core.authority.SimpleGrantedAuthority) Collections.emptyList(java.util.Collections.emptyList) Collections.singletonList(java.util.Collections.singletonList) List(java.util.List) HashMap(java.util.HashMap) Map(java.util.Map) Test(org.junit.Test)

Example 2 with CoffeeNetApp

use of rocks.coffeenet.autoconfigure.discovery.service.CoffeeNetApp in project coffeenet-starter by coffeenet.

the class CoffeeNetNavigationDataExtractorTest method orderingIsCaseInsensitive.

@Test
public void orderingIsCaseInsensitive() {
    Map<String, List<CoffeeNetApp>> apps = new HashMap<>();
    CoffeeNetApp coffeeNetApp = new CoffeeNetApp("x App a", "", emptySet());
    apps.put("cna1", singletonList(coffeeNetApp));
    CoffeeNetApp coffeeNetApp2 = new CoffeeNetApp("X App b", "", emptySet());
    apps.put("cna2", singletonList(coffeeNetApp2));
    CoffeeNetApp coffeeNetApp3 = new CoffeeNetApp("app a", "", emptySet());
    apps.put("cna3", singletonList(coffeeNetApp3));
    CoffeeNetApp coffeeNetApp4 = new CoffeeNetApp("App b", "", emptySet());
    apps.put("cna4", singletonList(coffeeNetApp4));
    sut.registerService(CoffeeNetNavigationDataExtractor.CoffeeNetServices.APP_SERVICE, coffeeNetAppServiceMock);
    when(coffeeNetAppServiceMock.getApps(any())).thenReturn(apps);
    // user
    sut.registerService(CoffeeNetNavigationDataExtractor.CoffeeNetServices.USER_SERVICE, coffeeNetCurrentUserServiceMock);
    when(coffeeNetCurrentUserServiceMock.get()).thenReturn(Optional.empty());
    Optional<Map<String, List<CoffeeNetApp>>> extractedApps = sut.extractApps();
    Map<String, List<CoffeeNetApp>> coffeeNetApps = extractedApps.get();
    assertThat(coffeeNetApps).hasSize(1);
    assertThat(coffeeNetApps.get("apps")).hasSize(4);
    assertThat(coffeeNetApps.get("apps").get(0)).isSameAs(coffeeNetApp3);
    assertThat(coffeeNetApps.get("apps").get(1)).isSameAs(coffeeNetApp4);
    assertThat(coffeeNetApps.get("apps").get(2)).isSameAs(coffeeNetApp);
    assertThat(coffeeNetApps.get("apps").get(3)).isSameAs(coffeeNetApp2);
}
Also used : HashMap(java.util.HashMap) Collections.emptyList(java.util.Collections.emptyList) Collections.singletonList(java.util.Collections.singletonList) List(java.util.List) CoffeeNetApp(rocks.coffeenet.autoconfigure.discovery.service.CoffeeNetApp) HashMap(java.util.HashMap) Map(java.util.Map) Test(org.junit.Test)

Example 3 with CoffeeNetApp

use of rocks.coffeenet.autoconfigure.discovery.service.CoffeeNetApp in project coffeenet-starter by coffeenet.

the class CoffeeNetNavigationDataExtractorTest method extractApps.

@Test
public void extractApps() {
    Map<String, List<CoffeeNetApp>> apps = new HashMap<>();
    CoffeeNetApp coffeeNetApp = new CoffeeNetApp("Coffee App", "coffeeapp.coffeenet", emptySet());
    apps.put("cna1", singletonList(coffeeNetApp));
    CoffeeNetApp profileApp = new CoffeeNetApp("Profile", "profile.coffeenet", emptySet());
    apps.put("profile", singletonList(profileApp));
    sut.registerService(CoffeeNetNavigationDataExtractor.CoffeeNetServices.APP_SERVICE, coffeeNetAppServiceMock);
    when(coffeeNetAppServiceMock.getApps(any())).thenReturn(apps);
    // user
    sut.registerService(CoffeeNetNavigationDataExtractor.CoffeeNetServices.USER_SERVICE, coffeeNetCurrentUserServiceMock);
    List<GrantedAuthority> authorities = singletonList(new SimpleGrantedAuthority("ROLE_COFFEENET-ADMIN"));
    Optional<CoffeeNetUserDetails> user = of(new HumanCoffeeNetUser("username", "email", authorities));
    when(coffeeNetCurrentUserServiceMock.get()).thenReturn(user);
    Optional<Map<String, List<CoffeeNetApp>>> extractedApps = sut.extractApps();
    Map<String, List<CoffeeNetApp>> coffeeNetApps = extractedApps.get();
    assertThat(coffeeNetApps).hasSize(2);
    assertThat(coffeeNetApps.get("apps")).hasSize(1);
    assertThat(coffeeNetApps.get("apps").get(0)).isSameAs(coffeeNetApp);
    assertThat(coffeeNetApps.get("profile")).hasSize(1);
    assertThat(coffeeNetApps.get("profile").get(0)).isSameAs(profileApp);
}
Also used : HashMap(java.util.HashMap) HumanCoffeeNetUser(rocks.coffeenet.autoconfigure.security.service.HumanCoffeeNetUser) SimpleGrantedAuthority(org.springframework.security.core.authority.SimpleGrantedAuthority) GrantedAuthority(org.springframework.security.core.GrantedAuthority) CoffeeNetUserDetails(rocks.coffeenet.autoconfigure.security.service.CoffeeNetUserDetails) CoffeeNetApp(rocks.coffeenet.autoconfigure.discovery.service.CoffeeNetApp) SimpleGrantedAuthority(org.springframework.security.core.authority.SimpleGrantedAuthority) Collections.emptyList(java.util.Collections.emptyList) Collections.singletonList(java.util.Collections.singletonList) List(java.util.List) HashMap(java.util.HashMap) Map(java.util.Map) Test(org.junit.Test)

Example 4 with CoffeeNetApp

use of rocks.coffeenet.autoconfigure.discovery.service.CoffeeNetApp in project coffeenet-starter by coffeenet.

the class CoffeeNetNavigationServiceImplTest method getNoVersion.

@Test
public void getNoVersion() {
    Optional<CurrentCoffeeNetUser> coffeeNetWebUser = Optional.of(new CurrentCoffeeNetUser("username", "email"));
    when(dataExtractorMock.extractUser()).thenReturn(coffeeNetWebUser);
    Optional<CoffeeNetNavigationAppInformation> coffeeNetNavigationAppInformation = Optional.empty();
    when(dataExtractorMock.extractAppInformation()).thenReturn(coffeeNetNavigationAppInformation);
    Map<String, List<CoffeeNetApp>> apps = new HashMap<>();
    CoffeeNetApp coffeeNetApp = new CoffeeNetApp("Coffee App", "coffeeapp.coffeenet", emptySet());
    apps.put("apps", singletonList(coffeeNetApp));
    CoffeeNetApp profileApp = new CoffeeNetApp("Profile", "profile.coffeenet", emptySet());
    apps.put("profile", singletonList(profileApp));
    when(dataExtractorMock.extractApps()).thenReturn(Optional.of(apps));
    when(dataExtractorMock.extractLogoutPath()).thenReturn("/logout");
    CoffeeNetNavigationInformation coffeeNetNavigationInformation = sut.get();
    assertThat(coffeeNetNavigationInformation.getLogoutPath()).isEqualTo("/logout");
    assertThat(coffeeNetNavigationInformation.getCurrentCoffeeNetUser().getUsername()).isSameAs("username");
    assertThat(coffeeNetNavigationInformation.getCurrentCoffeeNetUser().getEmail()).isSameAs("email");
    Assertions.assertThat(coffeeNetNavigationInformation.getProfileApp()).isSameAs(profileApp);
    Assertions.assertThat(coffeeNetNavigationInformation.getCoffeeNetApps()).hasSize(1);
    Assertions.assertThat(coffeeNetNavigationInformation.getCoffeeNetApps().get(0)).isSameAs(coffeeNetApp);
    assertThat(coffeeNetNavigationInformation.getCoffeeNetNavigationAppInformation()).isNull();
}
Also used : HashMap(java.util.HashMap) Collections.singletonList(java.util.Collections.singletonList) List(java.util.List) CoffeeNetApp(rocks.coffeenet.autoconfigure.discovery.service.CoffeeNetApp) Test(org.junit.Test)

Example 5 with CoffeeNetApp

use of rocks.coffeenet.autoconfigure.discovery.service.CoffeeNetApp in project coffeenet-starter by coffeenet.

the class CoffeeNetNavigationServiceImplTest method getNoProfileApp.

@Test
public void getNoProfileApp() {
    Optional<CoffeeNetNavigationAppInformation> coffeeNetNavigationAppInformation = Optional.of(new CoffeeNetNavigationAppInformation("groupId", "artifactId", "0.1.0", "parent-groupId", "parent-artifactId", "0.2.0"));
    when(dataExtractorMock.extractAppInformation()).thenReturn(coffeeNetNavigationAppInformation);
    Optional<CurrentCoffeeNetUser> coffeeNetWebUser = Optional.of(new CurrentCoffeeNetUser("username", "email"));
    when(dataExtractorMock.extractUser()).thenReturn(coffeeNetWebUser);
    Map<String, List<CoffeeNetApp>> apps = new HashMap<>();
    CoffeeNetApp coffeeNetApp = new CoffeeNetApp("Coffee App", "coffeeapp.coffeenet", emptySet());
    apps.put("apps", singletonList(coffeeNetApp));
    when(dataExtractorMock.extractApps()).thenReturn(Optional.of(apps));
    when(dataExtractorMock.extractLogoutPath()).thenReturn("/logout");
    CoffeeNetNavigationInformation coffeeNetNavigationInformation = sut.get();
    assertThat(coffeeNetNavigationInformation.getLogoutPath()).isEqualTo("/logout");
    assertThat(coffeeNetNavigationInformation.getCurrentCoffeeNetUser().getUsername()).isSameAs("username");
    assertThat(coffeeNetNavigationInformation.getCurrentCoffeeNetUser().getEmail()).isSameAs("email");
    Assertions.assertThat(coffeeNetNavigationInformation.getProfileApp()).isNull();
    Assertions.assertThat(coffeeNetNavigationInformation.getCoffeeNetApps()).hasSize(1);
    Assertions.assertThat(coffeeNetNavigationInformation.getCoffeeNetApps().get(0)).isSameAs(coffeeNetApp);
    assertThat(coffeeNetNavigationInformation.getCoffeeNetNavigationAppInformation()).isSameAs(coffeeNetNavigationAppInformation.get());
}
Also used : HashMap(java.util.HashMap) Collections.singletonList(java.util.Collections.singletonList) List(java.util.List) CoffeeNetApp(rocks.coffeenet.autoconfigure.discovery.service.CoffeeNetApp) Test(org.junit.Test)

Aggregations

CoffeeNetApp (rocks.coffeenet.autoconfigure.discovery.service.CoffeeNetApp)12 List (java.util.List)11 Collections.singletonList (java.util.Collections.singletonList)10 HashMap (java.util.HashMap)10 Test (org.junit.Test)10 Map (java.util.Map)6 Collections.emptyList (java.util.Collections.emptyList)5 CoffeeNetUserDetails (rocks.coffeenet.autoconfigure.security.service.CoffeeNetUserDetails)3 GrantedAuthority (org.springframework.security.core.GrantedAuthority)2 SimpleGrantedAuthority (org.springframework.security.core.authority.SimpleGrantedAuthority)2 HumanCoffeeNetUser (rocks.coffeenet.autoconfigure.security.service.HumanCoffeeNetUser)2 CASE_INSENSITIVE_ORDER (java.lang.String.CASE_INSENSITIVE_ORDER)1 Collections (java.util.Collections)1 Comparator (java.util.Comparator)1 EnumMap (java.util.EnumMap)1 Optional (java.util.Optional)1 Collectors.toList (java.util.stream.Collectors.toList)1 BuildProperties (org.springframework.boot.info.BuildProperties)1 AppQuery (rocks.coffeenet.autoconfigure.discovery.service.AppQuery)1 Builder (rocks.coffeenet.autoconfigure.discovery.service.AppQuery.Builder)1