Summary Table

Categories Total Count
PII 0
URL 0
DNS 0
EKL 0
IP 0
PORT 0
VsID 0
CF 0
AI 0
VPD 0
PL 0
Other 0

File Content

/*
* ChangeLogRepositoryTest.java
* Copyright (c) 2017 Veterans Affairs.
*/
package gov.va.oneconsult.seoc.api.repository;

import static org.assertj.core.api.Assertions.assertThat;

import java.util.Date;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
import org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManager;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

import gov.va.oneconsult.seoc.api.model.ChangeLog;
import gov.va.oneconsult.seoc.api.model.Event;
import gov.va.oneconsult.seoc.api.model.User;
import gov.va.oneconsult.seoc.api.util.Constants;

/**
*
* @author AbleVets
*
*/
@RunWith(SpringJUnit4ClassRunner.class)
@DataJpaTest
public class ChangeLogRepositoryTest
{
@Autowired
private EventRepository eventRepository;

@Autowired
private ChangeLogRepository changeLogRepository;

@Autowired
private UserRepository userRepository;

@Autowired
private TestEntityManager entityManager;

private Event saveEvent;

private User systemUser;

/**
* Description:SetUp method run before each test case
*/
@Before
public void setUp()
{
saveEvent = eventRepository.findByAction(Constants.EVENT_ACTION_SAVE);
systemUser = userRepository.findByUserName(Constants.EVENT_DEFAULT_USER_NAME);
}

/**
* Description:TearDown to be run after each test case.
*/
@After
public void tearDown()
{

}

/**
* Description: save changelog record
*/
@Test
public void save_changeLogRecord()
{

Iterable<ChangeLog> allRecords = changeLogRepository.findAll();

assertThat(allRecords).isEmpty();

ChangeLog newRecord = new ChangeLog();
Date now = new Date();

newRecord.setComments("Test Comments");
newRecord.setEvent(saveEvent);
newRecord.setSeocId(1);
newRecord.setSeocKey(2);
newRecord.setUser(systemUser);
newRecord.setEventDate(now);

ChangeLog savedRecord = changeLogRepository.save(newRecord);

assertThat(savedRecord.getId()).isGreaterThan(0);
assertThat(savedRecord.getComments()).isEqualTo("Test Comments");
assertThat(savedRecord.getSeocId()).isEqualTo(1);
assertThat(savedRecord.getSeocKey()).isEqualTo(2);
assertThat(savedRecord.getEventDate()).isEqualTo(now);
assertThat(savedRecord.getEvent()).isEqualTo(saveEvent);
assertThat(savedRecord.getUser()).isSameAs(systemUser);

entityManager.detach(savedRecord);
}
}