小编Hen*_*dra的帖子

Codility 钉板

尝试了解 Codility NailingPlanks 的解决方案。

\n\n

问题链接:\n https://app.codility.com/programmers/lessons/14-binary_search_algorithm/nailing_planks/

\n\n
\n

给定两个由 N 个整数组成的非空数组 A 和 B。\n 这些数组代表 N 个木板。更准确地说,A[K] 是第 K\xe2\x88\x92 个木板的起点,\n B[K] 是终点。

\n\n

接下来,给出一个由 M 个整数组成的非空数组 C。该数组代表 M 个钉子。更准确地说,C[I] 是您可以敲入第 I\xe2\x88\x92 个钉子的位置。

\n\n

如果存在钉子 C[I]\n 使得 A[K] \xe2\x89\xa4 C[I] \xe2\x89\ ,我们说木板 (A[K], B[K]) 被钉住xa4 B[K]。

\n\n

目标是找到必须使用的最少钉子数量,直到钉完所有木板。换句话说,您应该找到一个值 J,使得仅使用前 J 个钉子后即可钉好所有木板。更准确地说,对于每个木板 (A[K], B[K]) 使得 0 \xe2\x89\xa4 K\n < N,应该存在一个钉子 C[I] 使得 I < J 且 A[K ] \xe2\x89\xa4 C[I] \xe2\x89\xa4\n B[K]。

\n
\n\n

解决方案链接:\n https://github.com/ZRonchy/Codility/blob/master/Lesson12/NailingPlanks.java

\n\n
import java.util.Arrays;\n\nclass Solution {\n …
Run Code Online (Sandbox Code Playgroud)

java algorithm binary-search

6
推荐指数
1
解决办法
5241
查看次数

如何模拟 Spring Boot Session 和 SecurityContext 进行测试

这是 Spring Boot 项目。它使用SecurityContext。

它的大多数 Rest 控制器和服务取决于其登录用户的角色,以用于验证目的。所以在测试过程中,我需要一个用户登录。

请告知我针对 Spring boot 的单元测试代码示例,涉及登录用户进程。

@RunWith(PowerMockRunner.class)
@PrepareForTest({SecurityContextHolder.class,AuthenticationManager.class,UserRepository.class,UserCreationRequestRepository.class,        PasswordEncoder.class,AuthorityRepository.class,CacheManager.class,POMasterCompanyRepository.class,BranchRepository.class})
public class BOAuthControllerTest {

@Autowired
private WebApplicationContext context;

@Mock
private AuthenticationManager authenticationManager;

@Mock
private UserRepository userRepository;
@Mock
private UserCreationRequestRepository userCreationRequestRepository;
@Mock
private PasswordEncoder passwordEncoder;
@Mock
private AuthorityRepository authorityRepository;
@Mock
private CacheManager cacheManager;
@Mock
private POMasterCompanyRepository poMasterCompanyRepository;
@Mock
private BranchRepository branchRepository;
private UserService userService;

private MockMvc mockMvc;

@Before
public void setup() {

    userService = new UserService(userRepository, passwordEncoder, authorityRepository, cacheManager, userCreationRequestRepository,
            poMasterCompanyRepository,branchRepository);

    UsernamePasswordAuthenticationToken authenticationToken =
            new UsernamePasswordAuthenticationToken("admin","admin");
    Authentication …
Run Code Online (Sandbox Code Playgroud)

junit unit-testing mockito spring-boot

0
推荐指数
1
解决办法
6443
查看次数