Skip to content
Snippets Groups Projects
TestAttribute.java 2.34 KiB
Newer Older
  • Learn to ignore specific revisions
  • 汤伟's avatar
    汤伟 committed
    package com.ic.er;
    
    
    import com.ic.er.Exception.ERException;
    
    汤伟's avatar
    汤伟 committed
    import com.ic.er.entity.AttributeDO;
    
    汤伟's avatar
    汤伟 committed
    import com.ic.er.common.DataType;
    import org.junit.Assert;
    import org.junit.Before;
    import org.junit.Test;
    
    import java.util.List;
    
    public class TestAttribute {
    
        private View testView;
        private Entity testEntity;
    
        @Before
    
    汤伟's avatar
    汤伟 committed
        public void init() throws Exception {
    
            ER.connectDB(true);
    
    汤伟's avatar
    汤伟 committed
            testView = ER.createView("testView", "wt22");
            testEntity = testView.addEntity("teacher");
        }
    
        @Test
        public void addAttributeTest() {
    
    汤伟's avatar
    汤伟 committed
            Attribute a1 = testEntity.addAttribute("teacher_id", DataType.VARCHAR, 1);
            Attribute a2 = testEntity.addAttribute("name", DataType.VARCHAR, 0);
    
    汤伟's avatar
    汤伟 committed
            Attribute a3 = testEntity.addAttribute("age", DataType.INT, 0);
    
    汤伟's avatar
    汤伟 committed
            System.out.printf("a1 ID: %d\n", a1.getID());
            System.out.printf("a2 ID: %d\n", a2.getID());
            System.out.printf("a3 ID: %d\n", a3.getID());
        }
    
    汤伟's avatar
    汤伟 committed
        @Test
        public void updateTest() {
    
    汤伟's avatar
    汤伟 committed
            Attribute a1 = testEntity.addAttribute("teacher_id", DataType.VARCHAR, 1);
    
    汤伟's avatar
    汤伟 committed
            String newName = "new_teacher_id";
    
    汤伟's avatar
    汤伟 committed
            a1.updateInfo(newName, null, null);
    
            a1.updateLayoutInfo(1.0, 2.0, 3.0, 4.0);
    
    汤伟's avatar
    汤伟 committed
    
            List<Attribute> attributeList = Attribute.queryByAttribute(new AttributeDO(a1.getID()));
            Assert.assertEquals(attributeList.size(), 1);
            Assert.assertEquals(attributeList.get(0).getName(), newName);
    
            Assert.assertEquals(attributeList.get(0).getLayoutInfo().getLayoutX(), Double.valueOf(1.0));
            Assert.assertEquals(attributeList.get(0).getLayoutInfo().getLayoutY(), Double.valueOf(2.0));
            Assert.assertEquals(attributeList.get(0).getLayoutInfo().getHeight(), Double.valueOf(3.0));
            Assert.assertEquals(attributeList.get(0).getLayoutInfo().getWidth(), Double.valueOf(4.0));
    
    汤伟's avatar
    汤伟 committed
        }
    
    汤伟's avatar
    汤伟 committed
        @Test
    
        public void selectByIDTest() {
    
    汤伟's avatar
    汤伟 committed
            Attribute a1 = testEntity.addAttribute("teacher_id", DataType.VARCHAR, 1);
    
            Attribute attribute = Attribute.queryByID(a1.getID());
            Assert.assertNotNull(attribute);
    
    汤伟's avatar
    汤伟 committed
        }
    
    
        @Test(expected = ERException.class)
        public void deleteByIDTest() {
    
    汤伟's avatar
    汤伟 committed
            Attribute a1 = testEntity.addAttribute("teacher_id", DataType.VARCHAR, 1);
    
    汤伟's avatar
    汤伟 committed
    
            // delete
            a1.deleteDB();
    
            Attribute attribute = Attribute.queryByID(a1.getID());
            Assert.assertNull(attribute);
        }
    }