Skip to content

Commit

Permalink
closes #156
Browse files Browse the repository at this point in the history
  • Loading branch information
Justin Robbins | hybris committed Oct 26, 2014
1 parent 457aae3 commit 64b4622
Show file tree
Hide file tree
Showing 47 changed files with 257 additions and 906 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@

import java.util.List;

import javax.persistence.NoResultException;
import javax.persistence.Query;

import org.robbins.flashcards.model.User;
Expand Down Expand Up @@ -55,7 +56,15 @@ public Page<User> findAll(final Pageable page) {
public User findUserByOpenid(final String openid) {
Query query = getEm().createQuery("from User where openid = :openid");
query.setParameter("openid", openid);
return (User) query.getSingleResult();
try
{
return (User) query.getSingleResult();
}
catch (NoResultException e)
{
return null;
}

}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd">

<import resource="applicationContext-repository-jpa-commons.xml" />
<import resource="classpath:applicationContext-repository-jpa-commons.xml" />
<import resource="classpath:infrastructure.xml" />

<bean id="auditorAware" class="org.robbins.flashcards.auditing.AuditingAwareUser" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
import com.google.common.collect.Sets;

@Transactional
@Component
@Component("flashcardRepositoryFacade")
public class DefaultFlashcardRepositoryFacade extends
AbstractCrudRepositoryFacadeImpl<FlashCardDto, FlashCard> implements FlashcardFacade {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
import org.springframework.transaction.annotation.Transactional;

@Transactional
@Component
@Component("tagRepositoryFacade")
public class DefaultTagRepositoryFacade extends AbstractCrudRepositoryFacadeImpl<TagDto, Tag> implements
TagFacade {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
import org.springframework.transaction.annotation.Transactional;

@Transactional
@Component
@Component("userRepositoryFacade")
public class DefaultUserRepositoryFacade extends AbstractCrudRepositoryFacadeImpl<UserDto, User> implements
UserFacade {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@
import com.github.springtestdbunit.annotation.DatabaseSetup;

@Ignore
@ContextConfiguration({ "classpath:applicationContext-service.xml",
"classpath:test-applicationContext-service-springdata.xml" })
@ContextConfiguration({ "classpath:applicationContext-repository-jpa-commons.xml",
"classpath:test-applicationContext-repository-springdata.xml" })
@DatabaseSetup("classpath:test-flashCardsAppRepository.xml")
@Category(IntegrationTest.class)
public class DefaultTagFacadeIT extends BaseIntegrationTest {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.1.xsd">

<import resource="classpath:infrastructure.xml" />
<import resource="classpath:applicationContext-repository-jpa-commons.xml" />
<import resource="classpath:infrastructure.xml" />

<bean id="auditorAware" class="org.robbins.flashcards.auditing.AuditingAwareUser"
scope="request" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,7 @@
import org.robbins.flashcards.exceptions.FlashcardsException;
import org.robbins.flashcards.facade.base.GenericCrudFacade;
import org.robbins.flashcards.presentation.facade.PagingAndSortingFacade;
import org.springframework.transaction.annotation.Transactional;

@Transactional
public abstract class AbstractCrudFacadeImpl<D> implements GenericCrudFacade<D>, PagingAndSortingFacade<D>
{
@Override
Expand Down Expand Up @@ -48,7 +46,7 @@ public D findOne(final Long id) throws FlashcardsException {

@Override
public D findOne(final Long id, final Set<String> fields) throws FlashcardsException {
return getService().findOne(id);
return getService().findOne(id, fields);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,14 @@
import org.robbins.flashcards.dto.FlashCardDto;
import org.robbins.flashcards.dto.TagDto;
import org.robbins.flashcards.exceptions.FlashcardsException;
import org.robbins.flashcards.exceptions.ServiceException;
import org.robbins.flashcards.facade.FlashcardFacade;
import org.robbins.flashcards.presentation.facade.base.AbstractCrudFacadeImpl;
import org.robbins.flashcards.service.FlashCardService;
import org.robbins.flashcards.service.TagService;
import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

@Transactional
@Component
@Component("presentationFlashcardFacade")
public class DefaultFlashcardFacade extends
AbstractCrudFacadeImpl<FlashCardDto> implements FlashcardFacade {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,10 @@
import org.robbins.flashcards.facade.TagFacade;
import org.robbins.flashcards.presentation.facade.base.AbstractCrudFacadeImpl;
import org.robbins.flashcards.service.TagService;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

@Transactional
@Component
@Component("presentationTagFacade")
public class DefaultTagFacade extends AbstractCrudFacadeImpl<TagDto> implements
TagFacade {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,8 @@
import org.robbins.flashcards.presentation.facade.base.AbstractCrudFacadeImpl;
import org.robbins.flashcards.service.UserService;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

@Transactional
@Component
@Component("presentationUserFacade")
public class DefaultUserFacade extends AbstractCrudFacadeImpl<UserDto> implements
UserFacade {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@

import org.robbins.flashcards.dto.UserDto;
import org.robbins.flashcards.facade.UserFacade;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails;
Expand All @@ -25,6 +26,7 @@
public class CustomUserDetailsService implements UserDetailsService {

@Inject
@Qualifier("userRepositoryFacade")
private UserFacade userFacade;

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,14 @@

import javax.inject.Inject;


import org.robbins.flashcards.dto.FlashCardDto;
import org.robbins.flashcards.dto.TagDto;
import org.robbins.flashcards.exceptions.FlashcardsException;
import org.robbins.flashcards.facade.FlashcardFacade;
import org.robbins.flashcards.facade.base.GenericCrudFacade;
import org.robbins.flashcards.service.base.AbstractCrudServiceImpl;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Service;

Expand All @@ -20,6 +22,7 @@ public class FlashCardServiceImpl extends AbstractCrudServiceImpl<FlashCardDto>
implements FlashCardService {

@Inject
@Qualifier("flashcardRepositoryFacade")
private FlashcardFacade facade;

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,15 @@
import org.robbins.flashcards.facade.TagFacade;
import org.robbins.flashcards.facade.base.GenericCrudFacade;
import org.robbins.flashcards.service.base.AbstractCrudServiceImpl;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;

@Service
public class TagServiceImpl extends AbstractCrudServiceImpl<TagDto> implements
TagService {

@Inject
@Qualifier("tagRepositoryFacade")
private TagFacade facade;

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,15 @@
import org.robbins.flashcards.facade.base.GenericCrudFacade;
import org.robbins.flashcards.repository.UserRepository;
import org.robbins.flashcards.service.base.AbstractCrudServiceImpl;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;

@Service
public class UserServiceImpl extends AbstractCrudServiceImpl<UserDto> implements
UserService {

@Inject
@Qualifier("userRepositoryFacade")
private UserFacade facade;

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,13 @@ public D findOne(final Long id) throws FlashcardsException {
return getFacade().findOne(id);
}

@Override
@Override
public D findOne(final Long id, final Set<String> fields) throws FlashcardsException
{
return getFacade().findOne(id, fields);
}

@Override
public void delete(final Long id) {
getFacade().delete(id);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,6 @@ List<D> findAll(Integer page, Integer size, String sort, String direction)

List<D> findAll(Integer page, Integer size, String sort, String direction,
Set<String> fields) throws FlashcardsException;

D findOne(ID id, Set<String> fields) throws FlashcardsException;
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@

<context:component-scan base-package="
org.robbins.flashcards.security,
org.robbins.flashcards.service" />
org.robbins.flashcards.service,
org.robbins.flashcards.presentation.facade" />

</beans>
Original file line number Diff line number Diff line change
Expand Up @@ -78,34 +78,35 @@ public void count() {

@Test
public void findOne() throws FlashcardsException {
when(mockService.findOne(any(Long.class))).thenReturn(mockTag);
Long id = 1L;
when(mockService.findOne(id, null)).thenReturn(mockTag);

TagDto result = tagFacade.findOne(any(Long.class));
TagDto result = tagFacade.findOne(id);

verify(mockService).findOne(any(Long.class));
verify(mockService).findOne(id, null);
assertThat(result, is(TagDto.class));
}

@Test
public void findOne_WithFields() throws FlashcardsException {
TagDto tagDto = new TagDto();
Set<String> fields = new HashSet<String>(Arrays.asList("flashcards"));

when(mockService.findOne(any(Long.class))).thenReturn(mockTag);
when(mockService.findOne(any(Long.class), any(Set.class))).thenReturn(mockTag);

TagDto result = tagFacade.findOne(any(Long.class), fields);
TagDto result = tagFacade.findOne(any(Long.class), any(Set.class));

verify(mockService).findOne(any(Long.class));
verify(mockService).findOne(any(Long.class), any(Set.class));
assertThat(result, is(TagDto.class));
}

@Test
public void findOne_ReturnsNull() throws FlashcardsException {
when(mockService.findOne(any(Long.class))).thenReturn(null);
Long id = 1L;

TagDto result = tagFacade.findOne(any(Long.class));
when(mockService.findOne(id, null)).thenReturn(null);

verify(mockService).findOne(any(Long.class));
TagDto result = tagFacade.findOne(id);

verify(mockService).findOne(id, null);
assertThat(result, is(nullValue()));
}

Expand Down
Loading

0 comments on commit 64b4622

Please sign in to comment.