Простой jUnit тест

188
29 августа 2019, 22:20

Всем привет. Написал мини проект в которой из url достаю json, превращаю в обьекты и заношу в бд. Есть сервис:

  @Service
  public class DataService {
@Autowired
private DataRepository dataRepository;
@Transactional
public Data save(Data data){
    return dataRepository.save(data);
}
@Transactional(readOnly = true)
public List<Data> getAll(){
    return (List<Data>) dataRepository.findAll();
} 
}

Репозиторий

public interface DataRepository extends CrudRepository<Data, Long> {
 }

И сам entity data

@JsonInclude(content= JsonInclude.Include.NON_NULL)
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "idObject")
private Long idObject;
private String dateModified;
private String title;
private String documentType;
private String hash;
private String datePublished;
private String documentOf;
private String format;
private String id;
private String url;
}

Хочу научиться создавать простые тесты. К примеру тест на то, сохранились сущности в бд или нет. То есть для операции save из сервиса.

Как правильно написать? Создал такой тест

@RunWith(SpringRunner.class)

@DataJpaTest public class DataServiceTest {

@Autowired
private DataService dataService;

@Test
public void saveData() {
    Data data = new Data();
    data.setIdObject((long) 1);
    data.setDateModified("2018-09-19T13:12:21.136263+03:00");
    data.setDatePublished("2018-09-19T13:12:21.136232+03:00");
    data.setDocumentOf("tender");
    data.setDocumentType("subContract");
    data.setFormat("text/plain");
    data.setHash("md5:232dba893a22ac722249ad92f8bccf22");
    data.setId("4f6d6dc59d1844bb80143ccc2e727a2f");
    data.setTitle("11.09.2018.xlsx");
    data.setUrl("https://public-docs-sandbox.prozorro.gov.ua/get/3500487074064bd98f1076c21fe69e9a?KeyID=1331dc52&Signature=w%252BTQLJCiU%2FDQXfp%2FxB0VfDNRzImPv7zch3e8H1jfVOZrDJZuam%2FOTVLlvpdUiz9WVLHdUzdMrQJclbl4Vs28CQ%253D%253D");
    dataService.save(data);
    // data added is not null
    assertNotNull(data);

Ошибка, вот лог

java.lang.IllegalStateException: Failed to load ApplicationContext
at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:125)
at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:108)
at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:118)
at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83)
at org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener.prepareTestInstance(SpringBootDependencyInjectionTestExecutionListener.java:44)
at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:246)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:227)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:289)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:291)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:246)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
READ ALSO
Ошибка в dbUnit

Ошибка в dbUnit

При запуске теста в dbUnit выскакивает ошибка orgdbunit

173
Spring properties Java version

Spring properties Java version

Изучаю Spring по туториалу и создал Maven проект и теперь в pomxml лектор написал:

232
Google показывает &lt;title&gt; задом наперед

Google показывает <title> задом наперед

Всем привет, прошу помощи

107
Анимирование свойства &#39;transform&#39; на safari(ios 9-10)

Анимирование свойства 'transform' на safari(ios 9-10)

Делаю сайт со слайдером, где используется transform для анимированного раскрытия карточек: сайт (самый первый слайдер)В safari на ios 9-10 есть проблема:...

130