Search in sources :

Example 11 with Account

use of net.nemerosa.ontrack.model.security.Account in project ontrack by nemerosa.

the class SecurityServiceIT method getCurrentAccount.

@Test
public void getCurrentAccount() throws Exception {
    Account account = asUser().call(securityService::getCurrentAccount);
    assertNotNull(account);
}
Also used : Account(net.nemerosa.ontrack.model.security.Account) Test(org.junit.Test)

Example 12 with Account

use of net.nemerosa.ontrack.model.security.Account in project ontrack by nemerosa.

the class BuildFilterServiceIT method saveFilter_predefined.

@Test
public void saveFilter_predefined() throws Exception {
    // Branch
    Branch branch = doCreateBranch();
    // Account for the tests
    Account account = doCreateAccount();
    // Creates a predefined filter for this account
    Ack filterCreated = asAccount(account).call(() -> buildFilterService.saveFilter(branch.getId(), false, "MyFilter", PromotionLevelBuildFilterProvider.class.getName(), JsonUtils.object().end()));
    assertFalse("A predefined filter cannot be saved", filterCreated.isSuccess());
}
Also used : Account(net.nemerosa.ontrack.model.security.Account) Branch(net.nemerosa.ontrack.model.structure.Branch) Ack(net.nemerosa.ontrack.model.Ack) Test(org.junit.Test)

Example 13 with Account

use of net.nemerosa.ontrack.model.security.Account in project ontrack by nemerosa.

the class BuildFilterServiceIT method copyToBranch.

@Test
public void copyToBranch() throws Exception {
    // Source branch
    Branch sourceBranch = doCreateBranch();
    // Target branch
    Branch targetBranch = doCreateBranch();
    // Account for the tests
    Account account = doCreateAccount();
    // Creates a filter for this account
    Ack filterCreated = asAccount(account).call(() -> buildFilterService.saveFilter(sourceBranch.getId(), false, "MyFilter", StandardBuildFilterProvider.class.getName(), JsonUtils.object().with("count", 1).end()));
    assertTrue(filterCreated.isSuccess());
    // Checks the filter is created
    Collection<BuildFilterResource<?>> filters = asAccount(account).with(sourceBranch.projectId(), ProjectView.class).call(() -> buildFilterService.getBuildFilters(sourceBranch.getId()));
    assertEquals(1, filters.size());
    BuildFilterResource<?> filter = filters.iterator().next();
    assertEquals("MyFilter", filter.getName());
    assertEquals(StandardBuildFilterProvider.class.getName(), filter.getType());
    // Copy of the branch
    asUser().with(sourceBranch.projectId(), ProjectView.class).with(targetBranch.projectId(), BranchEdit.class).call(() -> copyService.copy(targetBranch, new BranchCopyRequest(sourceBranch.getId(), Collections.emptyList())));
    // Gets the filter on the new branch
    filters = asAccount(account).withView(targetBranch).call(() -> buildFilterService.getBuildFilters(targetBranch.getId()));
    assertEquals(1, filters.size());
    filter = filters.iterator().next();
    assertEquals("MyFilter", filter.getName());
    assertEquals(StandardBuildFilterProvider.class.getName(), filter.getType());
}
Also used : Account(net.nemerosa.ontrack.model.security.Account) Branch(net.nemerosa.ontrack.model.structure.Branch) BuildFilterResource(net.nemerosa.ontrack.model.buildfilter.BuildFilterResource) BranchCopyRequest(net.nemerosa.ontrack.model.structure.BranchCopyRequest) Ack(net.nemerosa.ontrack.model.Ack) ProjectView(net.nemerosa.ontrack.model.security.ProjectView) BranchEdit(net.nemerosa.ontrack.model.security.BranchEdit) Test(org.junit.Test)

Example 14 with Account

use of net.nemerosa.ontrack.model.security.Account in project ontrack by nemerosa.

the class BuildFilterServiceIT method delete_unshared_filter.

@Test
public void delete_unshared_filter() throws Exception {
    // Branch
    Branch branch = doCreateBranch();
    // Account for the tests
    Account account = doCreateAccount();
    // Creates a filter for this account
    Ack ack = asAccount(account).call(() -> buildFilterService.saveFilter(branch.getId(), false, "MyFilter", NamedBuildFilterProvider.class.getName(), objectMapper.valueToTree(NamedBuildFilterData.of("1"))));
    assertTrue("Account filter saved", ack.isSuccess());
    // The filter is present
    Collection<BuildFilterResource<?>> filters = asAccount(account).withView(branch).call(() -> buildFilterService.getBuildFilters(branch.getId()));
    assertEquals(1, filters.size());
    BuildFilterResource<?> filter = filters.iterator().next();
    assertEquals("MyFilter", filter.getName());
    assertFalse(filter.isShared());
    // Deletes the filter
    asAccount(account).call(() -> buildFilterService.deleteFilter(branch.getId(), "MyFilter"));
    // The filter is no longer there
    filters = asAccount(account).withView(branch).call(() -> buildFilterService.getBuildFilters(branch.getId()));
    assertEquals(0, filters.size());
}
Also used : Account(net.nemerosa.ontrack.model.security.Account) Branch(net.nemerosa.ontrack.model.structure.Branch) BuildFilterResource(net.nemerosa.ontrack.model.buildfilter.BuildFilterResource) Ack(net.nemerosa.ontrack.model.Ack) Test(org.junit.Test)

Aggregations

Account (net.nemerosa.ontrack.model.security.Account)14 Test (org.junit.Test)10 Branch (net.nemerosa.ontrack.model.structure.Branch)7 Ack (net.nemerosa.ontrack.model.Ack)6 BuildFilterResource (net.nemerosa.ontrack.model.buildfilter.BuildFilterResource)4 Function (java.util.function.Function)2 BranchFilterMgt (net.nemerosa.ontrack.model.security.BranchFilterMgt)2 ProjectView (net.nemerosa.ontrack.model.security.ProjectView)2 SecurityService (net.nemerosa.ontrack.model.security.SecurityService)2 Project (net.nemerosa.ontrack.model.structure.Project)2 Autowired (org.springframework.beans.factory.annotation.Autowired)2 AccessDeniedException (org.springframework.security.access.AccessDeniedException)2 Transactional (org.springframework.transaction.annotation.Transactional)2 JsonNode (com.fasterxml.jackson.databind.JsonNode)1 LocalDate (java.time.LocalDate)1 Collection (java.util.Collection)1 List (java.util.List)1 Map (java.util.Map)1 Optional (java.util.Optional)1 OptionalInt (java.util.OptionalInt)1