fixed tests
This commit is contained in:
@@ -19,51 +19,53 @@ import static org.springframework.data.mongodb.core.query.Criteria.where;
|
||||
*/
|
||||
public class CustomerInfoUpdateService {
|
||||
|
||||
private Logger logger = LoggerFactory.getLogger(getClass());
|
||||
private Logger logger = LoggerFactory.getLogger(getClass());
|
||||
|
||||
private QuerySideCustomerRepository querySideCustomerRepository;
|
||||
private MongoTemplate mongoTemplate;
|
||||
private QuerySideCustomerRepository querySideCustomerRepository;
|
||||
private MongoTemplate mongoTemplate;
|
||||
|
||||
public CustomerInfoUpdateService(QuerySideCustomerRepository querySideCustomerRepository, MongoTemplate mongoTemplate) {
|
||||
this.querySideCustomerRepository = querySideCustomerRepository;
|
||||
this.mongoTemplate = mongoTemplate;
|
||||
public CustomerInfoUpdateService(QuerySideCustomerRepository querySideCustomerRepository, MongoTemplate mongoTemplate) {
|
||||
this.querySideCustomerRepository = querySideCustomerRepository;
|
||||
this.mongoTemplate = mongoTemplate;
|
||||
}
|
||||
|
||||
public void create(String id, CustomerInfo customerInfo) {
|
||||
try {
|
||||
querySideCustomerRepository.save(new QuerySideCustomer(id,
|
||||
customerInfo.getName(),
|
||||
customerInfo.getEmail(),
|
||||
customerInfo.getPassword(),
|
||||
customerInfo.getSsn(),
|
||||
customerInfo.getPhoneNumber(),
|
||||
customerInfo.getAddress(),
|
||||
Collections.<String, ToAccountInfo>emptyMap()
|
||||
)
|
||||
);
|
||||
logger.info("Saved in mongo");
|
||||
} catch (DuplicateKeyException t) {
|
||||
logger.warn("When saving ", t);
|
||||
} catch (Throwable t) {
|
||||
logger.error("Error during saving: ", t);
|
||||
throw new RuntimeException(t);
|
||||
}
|
||||
}
|
||||
|
||||
public void create(String id, CustomerInfo customerInfo) {
|
||||
try {
|
||||
querySideCustomerRepository.save(new QuerySideCustomer(id,
|
||||
customerInfo.getName(),
|
||||
customerInfo.getEmail(),
|
||||
customerInfo.getPassword(),
|
||||
customerInfo.getSsn(),
|
||||
customerInfo.getPhoneNumber(),
|
||||
customerInfo.getAddress(),
|
||||
Collections.<String, ToAccountInfo>emptyMap()
|
||||
)
|
||||
);
|
||||
logger.info("Saved in mongo");
|
||||
} catch (DuplicateKeyException t) {
|
||||
logger.warn("When saving ", t);
|
||||
} catch (Throwable t) {
|
||||
logger.error("Error during saving: ", t);
|
||||
throw new RuntimeException(t);
|
||||
}
|
||||
public void addToAccount(String id, ToAccountInfo accountInfo) {
|
||||
QuerySideCustomer customer = querySideCustomerRepository.findOne(id);
|
||||
if (customer != null) {
|
||||
customer.getToAccounts().put(accountInfo.getId(), accountInfo);
|
||||
querySideCustomerRepository.save(customer);
|
||||
}
|
||||
}
|
||||
|
||||
public void addToAccount(String id, ToAccountInfo accountInfo) {
|
||||
QuerySideCustomer customer = querySideCustomerRepository.findOne(id);
|
||||
customer.getToAccounts().put(accountInfo.getId(), accountInfo);
|
||||
querySideCustomerRepository.save(customer);
|
||||
}
|
||||
|
||||
public void deleteFromToAccount(String accountId) {
|
||||
mongoTemplate.find(new Query(where("toAccounts."+accountId).exists(true)),
|
||||
QuerySideCustomer.class).stream()
|
||||
.forEach(querySideCustomer ->
|
||||
public void deleteFromToAccount(String accountId) {
|
||||
mongoTemplate.find(new Query(where("toAccounts." + accountId).exists(true)),
|
||||
QuerySideCustomer.class).stream()
|
||||
.forEach(querySideCustomer ->
|
||||
mongoTemplate.upsert(new Query(where("id").is(querySideCustomer.getId())),
|
||||
new Update().
|
||||
unset("toAccounts."+accountId),
|
||||
unset("toAccounts." + accountId),
|
||||
QuerySideCustomer.class)
|
||||
);
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -133,14 +133,14 @@ public abstract class AbstractRestAPITest {
|
||||
});
|
||||
|
||||
final DeleteAccountResponse deleteAccountResponse = getAuthenticatedRestTemplate().deleteEntity(baseUrl("/customers/"+customerId+"/accounts/"+accountId),
|
||||
DeleteAccountResponse.class);
|
||||
DeleteAccountResponse.class, email, password);
|
||||
|
||||
eventually(
|
||||
new Producer<GetAccountsResponse>() {
|
||||
@Override
|
||||
public CompletableFuture<GetAccountsResponse> produce() {
|
||||
return CompletableFuture.completedFuture(getAuthenticatedRestTemplate().getForEntity(baseUrl("/customers/"+customerId+"/accounts"),
|
||||
GetAccountsResponse.class));
|
||||
GetAccountsResponse.class, email, password));
|
||||
}
|
||||
},
|
||||
new Verifier<GetAccountsResponse>() {
|
||||
|
||||
@@ -31,11 +31,13 @@ public class AuthenticatedRestTemplate {
|
||||
);
|
||||
}
|
||||
|
||||
public <T> T deleteEntity(String url, Class<T> clazz) {
|
||||
public <T> T deleteEntity(String url, Class<T> clazz, String email, String password) {
|
||||
return BasicAuthUtils.doBasicAuthenticatedRequest(restTemplate,
|
||||
url,
|
||||
HttpMethod.DELETE,
|
||||
clazz
|
||||
clazz,
|
||||
email,
|
||||
password
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user