use of io.vertigo.dynamo.store.data.domain.car.Car in project vertigo by KleeGroup.
the class AbstractStoreManagerTest method testCrudInsertNoTx.
@Test(expected = NullPointerException.class)
public void testCrudInsertNoTx() {
final Car car = createNewCar();
storeManager.getDataStore().create(car);
}
use of io.vertigo.dynamo.store.data.domain.car.Car in project vertigo by KleeGroup.
the class AbstractStoreManagerTest method testTxNativeInsertCommitCrudSelectRollback.
@Test
public void testTxNativeInsertCommitCrudSelectRollback() {
try (VTransactionWritable transaction = transactionManager.createCurrentTransaction()) {
final Car car = createNewCar();
nativeInsertCar(car);
transaction.commit();
}
try (VTransactionWritable transaction = transactionManager.createCurrentTransaction()) {
// on récupère la liste des voitures
checkCrudCarsCount(1);
}
}
use of io.vertigo.dynamo.store.data.domain.car.Car in project vertigo by KleeGroup.
the class AbstractStoreManagerTest method testGetFamilleLocationCars.
/**
* Test que les listes NN ne reste pas en cache après une mise à jour.
* Ici l'entité en cache est la destination de la navigation : Car
*/
@Test
public void testGetFamilleLocationCars() {
try (VTransactionWritable transaction = transactionManager.createCurrentTransaction()) {
// on crée une famille
final Famille famille = new Famille();
famille.setLibelle("Ma famille");
final Famille createdFamille = storeManager.getDataStore().create(famille);
// on récupère la liste des voitures
final DtList<Car> cars = storeManager.getDataStore().findAll(allCarsUri);
Assert.assertNotNull(cars);
Assert.assertFalse("La liste des cars est vide", cars.isEmpty());
// on associe la liste de voiture à la famille en NN
final List<URI> carUriList = new ArrayList<>();
for (final Car car : cars) {
carUriList.add(new URI(dtDefinitionCar, car.getId()));
}
familleDAO.updateNN(createdFamille.getVoituresLocationDtListURI(), carUriList);
// On garde le résultat de l'association NN
final DtList<Car> firstResult = createdFamille.getVoituresLocationList();
Assert.assertEquals("Test tailles du nombre de voiture dans une NN", cars.size(), firstResult.size());
// On met à jour l'association en retirant le premier élément
carUriList.remove(0);
familleDAO.updateNN(createdFamille.getVoituresLocationDtListURI(), carUriList);
// on garde le résultat en lazy : il doit avoir le meme nombre de voiture qu'au début
final DtList<Car> lazyResult = createdFamille.getVoituresLocationList();
Assert.assertEquals("Test tailles du nombre de voiture pour une NN", firstResult.size(), lazyResult.size());
// on recharge la famille et on recharge la liste issus de l'association NN : il doit avoir une voiture de moins qu'au début
final DtDefinition dtFamille = DtObjectUtil.findDtDefinition(Famille.class);
final Famille famille2 = storeManager.getDataStore().readOne(new URI<Famille>(dtFamille, createdFamille.getFamId()));
final DtList<Car> secondResult = famille2.getVoituresLocationList();
Assert.assertEquals("Test tailles du nombre de voiture dans une NN", firstResult.size() - 1, secondResult.size());
transaction.commit();
}
}
use of io.vertigo.dynamo.store.data.domain.car.Car in project vertigo by KleeGroup.
the class AbstractStoreManagerTest method testTxCrudInsertCommitCrudSelectRollback.
@Test
public void testTxCrudInsertCommitCrudSelectRollback() {
try (VTransactionWritable transaction = transactionManager.createCurrentTransaction()) {
final Car car = createNewCar();
storeManager.getDataStore().create(car);
transaction.commit();
}
try (VTransactionWritable transaction = transactionManager.createCurrentTransaction()) {
// on récupère la liste des voitures
checkCrudCarsCount(1);
}
}
use of io.vertigo.dynamo.store.data.domain.car.Car in project vertigo by KleeGroup.
the class AbstractStoreManagerTest method testTxNativeInsertCommitNativeSelectRollback.
@Test
public void testTxNativeInsertCommitNativeSelectRollback() {
try (VTransactionWritable transaction = transactionManager.createCurrentTransaction()) {
final Car car = createNewCar();
nativeInsertCar(car);
transaction.commit();
}
try (VTransactionWritable transaction = transactionManager.createCurrentTransaction()) {
// on récupère la liste des voitures
checkNativeCarsCount(1);
}
}
Aggregations