Fixed tests that modify BasicData (#1530)

This commit is contained in:
Roland Praml
2018-11-03 16:38:26 +13:00
committed by Rob Bygrave
parent 662ffdd070
commit 61eedb4e9a
17 changed files with 92 additions and 10 deletions
@@ -4,6 +4,7 @@ import io.ebean.Ebean;
import io.ebean.EbeanServer;
import org.tests.model.basic.Customer;
import org.tests.model.basic.Order;
import org.tests.model.basic.ResetBasicData;
import org.junit.Test;
import static org.assertj.core.api.Assertions.assertThat;
@@ -80,6 +81,8 @@ public class ExpressionPathTest {
@Test
public void test_dirty() throws Exception {
ResetBasicData.reset();
BeanType<Customer> customerBeanType = beanType(Customer.class);
BeanType<Order> orderBeanType = beanType(Order.class);
@@ -113,6 +116,10 @@ public class ExpressionPathTest {
order = server.find(Order.class, order.getId());
assertThat(order.getCustomer().getName()).isEqualTo("baz");
// cleanup
server.delete(Order.class, order.getId());
server.delete(Customer.class, customer.getId());
}
}
@@ -63,5 +63,7 @@ public class TunedQueryWithNullFetchedBeanTest extends BaseTestCase {
// assert only one query executed
List<String> loggedSql = LoggedSqlCollector.stop();
Assert.assertEquals(1, loggedSql.size());
Ebean.delete(newCustomer);
}
}
@@ -33,5 +33,8 @@ public class TestLazyLoadEmptyOneToMany extends BaseTestCase {
int sz = contacts.size();
Assert.assertTrue(sz == 0);
// cleanup
Ebean.delete(c1);
}
}
@@ -4,6 +4,7 @@ import io.ebean.BaseTestCase;
import io.ebean.BeanState;
import io.ebean.Ebean;
import org.tests.model.basic.Customer;
import org.tests.model.basic.ResetBasicData;
import org.junit.Assert;
import org.junit.Test;
@@ -12,6 +13,8 @@ public class TestTransient extends BaseTestCase {
@Test
public void testTransient() {
ResetBasicData.reset();
Customer cnew = new Customer();
cnew.setName("testTrans");
@@ -58,5 +61,8 @@ public class TestTransient extends BaseTestCase {
int rows = Ebean.createUpdate(Customer.class, updateStmt).set("id", custId).execute();
Assert.assertTrue("changed name back", 1 == rows);
// cleanup
Ebean.delete(Customer.class, custId);
}
}
@@ -33,5 +33,7 @@ public class TestBatchSaveWithGetBeanId extends BaseTestCase {
// insert occurs and the bean has an Id value
Object beanId = server.getBeanId(model);
assertNotNull(beanId);
Ebean.delete(Customer.class, beanId);
}
}
@@ -4,6 +4,7 @@ import io.ebean.BaseTestCase;
import io.ebean.Ebean;
import org.tests.model.basic.Contact;
import org.tests.model.basic.Customer;
import org.tests.model.basic.ResetBasicData;
import org.junit.Assert;
import org.junit.Test;
@@ -14,6 +15,8 @@ public class TestBasicNavOnEmpty extends BaseTestCase {
@Test
public void test() {
ResetBasicData.reset();
Customer c = new Customer();
c.setName("HelloRob");
@@ -23,6 +26,9 @@ public class TestBasicNavOnEmpty extends BaseTestCase {
List<Contact> contacts = c.getContacts();
Assert.assertEquals(0, contacts.size());
// cleanup
Ebean.delete(c);
}
}
@@ -26,5 +26,8 @@ public class TestEmptyManyLazyLoad extends BaseTestCase {
Order o2 = Ebean.find(Order.class, o.getId());
o2.getDetails().size();
// cleanup
Ebean.delete(o2);
}
}
@@ -4,6 +4,7 @@ import io.ebean.BaseTestCase;
import io.ebean.Ebean;
import io.ebean.FetchConfig;
import org.tests.model.basic.Customer;
import org.tests.model.basic.ResetBasicData;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
@@ -14,6 +15,8 @@ public class TestSecondQueryNoRows extends BaseTestCase {
@Test
public void test() {
ResetBasicData.reset();
Customer cnew = new Customer();
cnew.setName("testSecQueryNoRows");
@@ -27,5 +30,7 @@ public class TestSecondQueryNoRows extends BaseTestCase {
assertNotNull(c);
assertEquals(0, c.getContacts().size());
Ebean.delete(c);
}
}
@@ -4,6 +4,7 @@ import io.ebean.BaseTestCase;
import io.ebean.Ebean;
import org.tests.model.basic.Customer;
import org.tests.model.basic.Order;
import org.tests.model.basic.ResetBasicData;
import org.junit.Test;
import static org.junit.Assert.assertSame;
@@ -14,6 +15,8 @@ public class TestCacheInterceptSaveWhenLazyLoaded extends BaseTestCase {
@Test
public void test() {
ResetBasicData.reset();
Customer customer = new Customer();
customer.setName("daCustomer");
Ebean.save(customer);
@@ -45,12 +48,12 @@ public class TestCacheInterceptSaveWhenLazyLoaded extends BaseTestCase {
assertSame(foundOrder, order1);
assertTrue(Ebean.getBeanState(foundOrder).isDirty());
Ebean.delete(order1);
Ebean.delete(customer);
} finally {
Ebean.endTransaction();
}
// cleanup
Ebean.delete(order);
Ebean.delete(customer);
}
}
@@ -43,6 +43,9 @@ public class TestDeleteByIdWithPersistenceContext extends BaseTestCase {
}
// cleanup
Ebean.delete(Product.class, 100);
Ebean.delete(Product.class, 101);
}
private Product createProduct(Integer id, String name) {
@@ -4,6 +4,8 @@ import io.ebean.Ebean;
import io.ebean.EbeanServer;
import org.tests.model.basic.Order.Status;
import static org.assertj.core.api.Assertions.assertThat;
import java.sql.Date;
import java.util.ArrayList;
import java.util.List;
@@ -17,6 +19,25 @@ public class ResetBasicData {
public static synchronized void reset() {
if (runOnce) {
int cnt1 = server.find(Customer.class).findCount();
int cnt2 = server.find(Order.class).findCount();
int cnt3 = server.find(Country.class).findCount();
int cnt4 = server.find(Product.class).findCount();
if (cnt1 == 4 && cnt2 == 5 && cnt3 == 2 && cnt4 == 4) {
// OK, test data not modified
} else {
StringBuilder sb = new StringBuilder();
sb.append("Customers:");
server.find(Customer.class).findEach(c -> sb.append(' ').append(c.getId()));
sb.append(", Orders:");
server.find(Order.class).findEach(c -> sb.append(' ').append(c.getId()));
sb.append(", Countries:");
server.find(Country.class).findEach(c -> sb.append(' ').append(c.getCode()));
sb.append(", Products:");
server.find(Product.class).findEach(c -> sb.append(' ').append(c.getId()));
System.err.println("WARNING: basic test data was modified. Current content:");
System.err.println(sb.toString());
}
return;
}
@@ -194,7 +194,7 @@ public class TestQueryFindPagedList extends BaseTestCase {
ResetBasicData.reset();
PagedList<Order> pagedList = Ebean.find(Order.class).setMaxRows(6).findPagedList();
PagedList<Order> pagedList = Ebean.find(Order.class).setMaxRows(3).findPagedList();
LoggedSqlCollector.start();
@@ -3,6 +3,7 @@ package org.tests.repository;
import io.ebean.BaseTestCase;
import org.junit.Test;
import org.tests.model.basic.Customer;
import org.tests.model.basic.ResetBasicData;
import java.util.ArrayList;
import java.util.List;
@@ -15,6 +16,8 @@ public class TestBeanRepository extends BaseTestCase {
@Test
public void test() {
ResetBasicData.reset();
CustomerRepository repository = new CustomerRepository(server());
Customer customer = new Customer();
@@ -48,6 +51,8 @@ public class TestBeanRepository extends BaseTestCase {
@Test
public void findByName() {
ResetBasicData.reset();
CustomerRepository repository = new CustomerRepository(server());
Customer blah = new Customer();
@@ -1,7 +1,7 @@
package org.tests.text.csv;
import io.ebean.BaseTestCase;
import io.ebean.Ebean;
import io.ebean.TransactionalTestCase;
import io.ebean.text.csv.CsvReader;
import org.tests.model.basic.Customer;
import org.tests.model.basic.ResetBasicData;
@@ -12,7 +12,7 @@ import java.io.FileReader;
import java.net.URL;
import java.util.Locale;
public class TestCsvReader extends BaseTestCase {
public class TestCsvReader extends TransactionalTestCase {
@Test
public void test() {
@@ -1,26 +1,26 @@
package org.tests.text.csv;
import io.ebean.BaseTestCase;
import io.ebean.Ebean;
import io.ebean.EbeanServer;
import io.ebean.TransactionalTestCase;
import io.ebean.text.csv.CsvReader;
import io.ebean.text.csv.DefaultCsvCallback;
import org.tests.model.basic.Customer;
import org.tests.model.basic.ResetBasicData;
import org.junit.Test;
import static org.assertj.core.api.Assertions.assertThat;
import java.io.File;
import java.io.FileReader;
import java.net.URL;
import java.util.Locale;
public class TestCsvReaderWithCallback extends BaseTestCase {
public class TestCsvReaderWithCallback extends TransactionalTestCase {
@Test
public void test() throws Throwable {
ResetBasicData.reset();
URL resource = TestCsvReaderWithCallback.class.getResource("/test1.csv");
File f = new File(resource.getFile());
@@ -43,6 +43,8 @@ public class TestCsvReaderWithCallback extends BaseTestCase {
// processor.addReference("billingAddress.country.code");
csvReader.addProperty("billingAddress.country.code");
int before = Ebean.find(Customer.class).findCount();
csvReader.process(reader, new DefaultCsvCallback<Customer>() {
@Override
@@ -50,10 +52,14 @@ public class TestCsvReaderWithCallback extends BaseTestCase {
server.save(cust.getBillingAddress(), transaction);
server.save(cust, transaction);
}
});
int after = Ebean.find(Customer.class).findCount();
assertThat(after).isEqualTo(before + 9);
}
}
@@ -36,5 +36,8 @@ public class TestTextJsonInsertUpdate extends BaseTestCase {
Customer c2 = jsonContext.toBean(Customer.class, j2);
Ebean.update(c2);
// cleanup
Ebean.delete(Customer.class, c0.getId());
}
}
@@ -46,6 +46,9 @@ public class TestUpdatePartial extends BaseTestCase {
Ebean.save(c3);
checkDbStatusValue(c.getId(), "N");
// cleanup
Ebean.delete(Customer.class, c.getId());
}
private void checkDbStatusValue(Integer custId, String dbStatus) {
@@ -71,5 +74,9 @@ public class TestUpdatePartial extends BaseTestCase {
Ebean.save(customerWithoutChanges);
assertThat(customerWithoutChanges.getUpdtime()).isEqualToIgnoringMillis(customer.getUpdtime());
// cleanup
Ebean.delete(customerWithoutChanges);
}
}