package org.nutz.dao.test.normal; import static org.junit.Assert.*; import org.junit.Before; import org.junit.Test; import org.nutz.dao.DaoException; import org.nutz.dao.test.DaoCase; import org.nutz.dao.test.meta.ErrorAnnId; import org.nutz.dao.test.meta.ErrorAnnName; public class PkTest extends DaoCase { @Before public void before() { dao.create(Dog.class, true); // Insert 8 records for (int i = 0; i < 8; i++) { Dog dog = new Dog(); dog.setMasterId(32); dog.setId(i + 1); dog.setName("dog_" + i); dog.setAge((i + 10) / 2); dao.insert(dog); } } @Test public void test_fetch_by_pks() { Dog dog = dao.fetchx(Dog.class, 32, 3); assertEquals("dog_2", dog.getName()); } @Test public void test_delete_by_pks() { assertEquals(8, dao.count(Dog.class)); dao.deletex(Dog.class, 32, 5); assertEquals(7, dao.count(Dog.class)); } /** * Issue 91 */ @Test public void test_delete_by_object() { assertEquals(8, dao.count(Dog.class)); Dog dog = dao.fetch(Dog.class); dao.delete(dog); assertEquals(7, dao.count(Dog.class)); } /** * Issue 91 */ @Test public void test_fetch_by_object() { Dog dog = dao.fetch(Dog.class); Dog dog2 = dao.fetch(dog); assertEquals(dog.getAge(), dog2.getAge()); } @Test public void test_update() { Dog dog = dao.fetchx(Dog.class, 32, 3); dog.setName("XiaoBai"); dao.update(dog); dog = dao.fetchx(Dog.class, 32, 3); assertEquals("XiaoBai", dog.getName()); } //github issue 296 @Test(expected=DaoException.class) public void test_error_ann_id() { dao.getEntity(ErrorAnnId.class); } @Test(expected=DaoException.class) public void test_error_ann_name() { dao.getEntity(ErrorAnnName.class); } }