### Question:
UserStore { public List<User> findByRole(Role role) { List<User> result = new ArrayList<>(); try (Connection con = CON.getConnect(); PreparedStatement st = con.prepareStatement(QUERIES.getProperty("findUsersByRole"))) { st.setInt(1, ROLE_STORE.findRoleId(role)); try (ResultSet rstSet = st.executeQuery()) { while (rstSet.next()) { result.add(createUserByRstSet(rstSet)); } } } catch (SQLException e) { LOG.error(e.getMessage(), e); } return result; }  boolean add(User user); List<User> findAll(); User findById(int id); User findByLogin(String login); User findByAddress(Address address); List<User> findByRole(Role role); List<User> findByType(MusicType type); boolean delete(int id); boolean update(int id, User user);  }### Answer:
@Test public void findByRole() { this.testStore.add(this.first); this.testStore.add(this.second); this.testStore.add(this.third); assertTrue(this.testStore.findByRole(this.user).containsAll(asList(this.first, this.second))); assertFalse(this.testStore.findByRole(this.user).contains(this.third)); }