Title Author Service I MPL Test
Title Author Service I MPL Test
service;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.springframework.boot.test.context.SpringBootTest;
import com.bp.dao.TitleAuthorRepository;
import com.bp.dao.entity.Author;
import com.bp.dao.entity.Publisher;
import com.bp.dao.entity.Title;
import com.bp.dao.entity.TitleAuthor;
import com.bp.model.AuthorDTO;
import com.bp.model.PublisherDTO;
import com.bp.model.TitleAuthorDTO;
import com.bp.model.TitleDTO;
@SpringBootTest
class TitleAuthorServiceImplTest {
@Mock
private TitleAuthorRepository titleAuthorRepository;
@InjectMocks
private TitleAuthorServiceImpl titleAuthorService;
@Test
void testAddNewTitleAuthor() {
// Arrange
TitleAuthorDTO titleAuthorDTO = createSampleTitleAuthorDTO();
TitleAuthor titleAuthorEntity = createSampleTitleAuthor();
when(titleAuthorRepository.save(titleAuthorEntity)).thenReturn(titleAuthorEntity);
// Act
String result = titleAuthorService.addNewTitleAuthor(titleAuthorDTO);
// Assert
assertNotNull(result);
assertEquals("Record Created Successfully", result);
// Verify that the repository method was called with any instance
verify(titleAuthorRepository).save(any());
}
return titleAuthorDTO;
}
return titleAuthorEntity;
}
titleDTO.setPublisher(publisherEntity);
return titleDTO;
}
return authorDTO;
}
titleEntity.setPublisher(publisherEntity);
return titleEntity;
}
return authorEntity;
}
}