@@ -19,8 +19,6 @@ import static org.assertj.core.api.Assertions.*;
|
||||
import static org.mockito.ArgumentMatchers.*;
|
||||
import static org.mockito.Mockito.*;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
@@ -33,7 +31,6 @@ import org.junit.jupiter.api.Test;
|
||||
import org.mockito.ArgumentCaptor;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.junit.jupiter.MockitoSettings;
|
||||
|
||||
import org.springframework.data.ldap.repository.support.LdapRepositoryFactory;
|
||||
import org.springframework.data.ldap.repository.support.UnitTestPerson;
|
||||
import org.springframework.ldap.core.LdapOperations;
|
||||
@@ -92,14 +89,14 @@ class LdapRepositoryUnitTests {
|
||||
PersonDto walter = repository.findByLastName("White", PersonDto.class);
|
||||
|
||||
assertThat(walter).isNotNull();
|
||||
assertThat(walter.getLastName()).isEqualTo("White");
|
||||
assertThat(walter.lastName()).isEqualTo("White");
|
||||
|
||||
ArgumentCaptor<LdapQuery> captor = ArgumentCaptor.forClass(LdapQuery.class);
|
||||
|
||||
verify(ldapOperations).findOne(captor.capture(), any());
|
||||
|
||||
LdapQuery query = captor.getValue();
|
||||
assertThat(query.attributes()).isNullOrEmpty();
|
||||
assertThat(query.attributes()).contains("lastName");
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -135,9 +132,6 @@ class LdapRepositoryUnitTests {
|
||||
String getLastName();
|
||||
}
|
||||
|
||||
@Data
|
||||
static class PersonDto {
|
||||
|
||||
String lastName;
|
||||
record PersonDto(String lastName) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,16 +16,22 @@
|
||||
package org.springframework.data.ldap.repository.cdi;
|
||||
|
||||
import jakarta.inject.Inject;
|
||||
import lombok.Getter;
|
||||
|
||||
import org.springframework.ldap.core.LdapTemplate;
|
||||
|
||||
/**
|
||||
* @author Mark Paluch
|
||||
*/
|
||||
@Getter
|
||||
class RepositoryClient {
|
||||
|
||||
@Inject SampleRepository sampleRepository;
|
||||
@Inject LdapTemplate ldapTemplate;
|
||||
|
||||
public SampleRepository getSampleRepository() {
|
||||
return sampleRepository;
|
||||
}
|
||||
|
||||
public LdapTemplate getLdapTemplate() {
|
||||
return ldapTemplate;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,8 +18,6 @@ package org.springframework.data.ldap.repository.support;
|
||||
import static org.assertj.core.api.Assertions.*;
|
||||
import static org.mockito.Mockito.*;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
@@ -33,7 +31,6 @@ import org.junit.jupiter.api.Test;
|
||||
import org.mockito.ArgumentCaptor;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.junit.jupiter.MockitoSettings;
|
||||
|
||||
import org.springframework.dao.IncorrectResultSizeDataAccessException;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.PageRequest;
|
||||
@@ -114,7 +111,7 @@ class QuerydslLdapPredicateExecutorUnitTests {
|
||||
assertThat(interfaceProjection.getLastName()).isEqualTo("White");
|
||||
|
||||
PersonDto dto = repository.findBy(QPerson.person.fullName.eq("Walter"), it -> it.as(PersonDto.class).firstValue());
|
||||
assertThat(dto.getLastName()).isEqualTo("White");
|
||||
assertThat(dto.lastName()).isEqualTo("White");
|
||||
|
||||
ArgumentCaptor<LdapQuery> captor = ArgumentCaptor.forClass(LdapQuery.class);
|
||||
|
||||
@@ -137,7 +134,7 @@ class QuerydslLdapPredicateExecutorUnitTests {
|
||||
assertThat(interfaceProjection.getLastName()).isEqualTo("White");
|
||||
|
||||
PersonDto dto = repository.findBy(QPerson.person.fullName.eq("Walter"), it -> it.as(PersonDto.class).oneValue());
|
||||
assertThat(dto.getLastName()).isEqualTo("White");
|
||||
assertThat(dto.lastName()).isEqualTo("White");
|
||||
|
||||
ArgumentCaptor<LdapQuery> captor = ArgumentCaptor.forClass(LdapQuery.class);
|
||||
|
||||
@@ -257,9 +254,7 @@ class QuerydslLdapPredicateExecutorUnitTests {
|
||||
String getLastName();
|
||||
}
|
||||
|
||||
@Data
|
||||
static class PersonDto {
|
||||
record PersonDto(String lastName) {
|
||||
|
||||
String lastName;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,10 +16,6 @@
|
||||
|
||||
package org.springframework.data.ldap.repository.support;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import javax.naming.Name;
|
||||
@@ -33,32 +29,37 @@ import org.springframework.ldap.odm.annotations.Transient;
|
||||
/**
|
||||
* @author Mattias Hellborg Arthursson
|
||||
*/
|
||||
@Entry(objectClasses = {"inetOrgPerson", "organizationalPerson", "person", "top"})
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Entry(objectClasses = { "inetOrgPerson", "organizationalPerson", "person", "top" })
|
||||
|
||||
public class UnitTestPerson {
|
||||
@Id
|
||||
private Name dn;
|
||||
@Id private Name dn;
|
||||
|
||||
@Attribute(name = "cn")
|
||||
@DnAttribute("cn")
|
||||
private String fullName;
|
||||
@Attribute(name = "cn")
|
||||
@DnAttribute("cn") private String fullName;
|
||||
|
||||
@Attribute(name = "sn")
|
||||
private String lastName;
|
||||
@Attribute(name = "sn") private String lastName;
|
||||
|
||||
@Attribute(name = "description")
|
||||
private List<String> description;
|
||||
@Attribute(name = "description") private List<String> description;
|
||||
|
||||
@Transient
|
||||
@DnAttribute("c")
|
||||
private String country;
|
||||
@Transient
|
||||
@DnAttribute("c") private String country;
|
||||
|
||||
@Transient
|
||||
@DnAttribute("ou")
|
||||
private String company;
|
||||
@Transient
|
||||
@DnAttribute("ou") private String company;
|
||||
|
||||
// This should be automatically found
|
||||
private String telephoneNumber;
|
||||
// This should be automatically found
|
||||
private String telephoneNumber;
|
||||
|
||||
public UnitTestPerson() {}
|
||||
|
||||
public UnitTestPerson(Name dn, String fullName, String lastName, List<String> description, String country,
|
||||
String company, String telephoneNumber) {
|
||||
this.dn = dn;
|
||||
this.fullName = fullName;
|
||||
this.lastName = lastName;
|
||||
this.description = description;
|
||||
this.country = country;
|
||||
this.company = company;
|
||||
this.telephoneNumber = telephoneNumber;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user