Package org.nutz.dao.test.mapping

Source Code of org.nutz.dao.test.mapping.OneTest

package org.nutz.dao.test.mapping;

import java.util.List;

import org.junit.Test;

import org.nutz.dao.test.DaoCase;
import org.nutz.dao.test.meta.Base;
import org.nutz.dao.test.meta.Country;
import org.nutz.lang.Lang;

import static org.junit.Assert.*;

public class OneTest extends DaoCase {

    @Override
    protected void before() {
        pojos.initData();
    }

    @Override
    protected void after() {}

    @Test
    public void fetch_links() {
        Base b = dao.fetchLinks(dao.fetch(Base.class, "red"), "country");
        assertEquals("China", b.getCountry().getName());
    }

    @Test
    public void fetch_links_as_list() {
        List<Base> b = dao.fetchLinks(Lang.list(dao.fetch(Base.class, "red")), "country");
        assertEquals("China", b.get(0).getCountry().getName());
    }

    @Test
    public void delete_links() {
        Base b = dao.fetchLinks(dao.fetch(Base.class, "red"), "country");
        dao.deleteLinks(b, "country");
        assertEquals(1, dao.count(Country.class));
    }

    @Test
    public void delete_links_as_list() {
        List<Base> b = dao.fetchLinks(Lang.list(dao.fetch(Base.class, "red")), "country");
        dao.deleteLinks(b, "country");
        assertEquals(1, dao.count(Country.class));
    }

    @Test
    public void delete_with() {
        Base b = dao.fetchLinks(dao.fetch(Base.class, "red"), "country");
        dao.deleteWith(b, "country");
        assertEquals(1, dao.count(Country.class));
        assertEquals(1, dao.count(Base.class));
    }

    @Test
    public void delete_with_as_list() {
        List<Base> b = dao.fetchLinks(Lang.list(dao.fetch(Base.class, "red")), "country");
        dao.deleteWith(b, "country");
        assertEquals(1, dao.count(Country.class));
        assertEquals(1, dao.count(Base.class));
    }

    @Test
    public void clear_links() {
        Base b = dao.fetch(Base.class, "red");
        dao.clearLinks(b, "country");
        assertEquals(1, dao.count(Country.class));
    }

    @Test
    public void clear_links_as_list() {
        List<Base> b = dao.fetchLinks(Lang.list(dao.fetch(Base.class, "red")), "country");
        dao.clearLinks(b, "country");
        assertEquals(1, dao.count(Country.class));
    }

    @Test
    public void update_links() {
        Base b = dao.fetchLinks(dao.fetch(Base.class, "red"), "country");
        int lv = b.getLevel();
        b.setLevel(45);
        b.getCountry().setName("ABC");
        dao.updateLinks(b, "country");
        b = dao.fetch(Base.class, "red");
        assertEquals(lv, b.getLevel());
        Country c = dao.fetch(Country.class, b.getCountryId());
        assertEquals("ABC", c.getName());
    }

    @Test
    public void update_links_as_list() {
        List<Base> b = dao.fetchLinks(Lang.list(dao.fetch(Base.class, "red")), "country");
        int lv = b.get(0).getLevel();
        b.get(0).setLevel(45);
        b.get(0).getCountry().setName("ABC");
        dao.updateLinks(b, "country");
        b = Lang.list(dao.fetch(Base.class, "red"));
        assertEquals(lv, b.get(0).getLevel());
        Country c = dao.fetch(Country.class, b.get(0).getCountryId());
        assertEquals("ABC", c.getName());
    }

    @Test
    public void update_with() {
        Base b = dao.fetchLinks(dao.fetch(Base.class, "red"), "country");
        b.setLevel(6);
        b.getCountry().setName("ABC");
        dao.updateWith(b, "country");
        b = dao.fetch(Base.class, b.getName());
        assertEquals(6, b.getLevel());
        Country c = dao.fetch(Country.class, b.getCountryId());
        assertEquals("ABC", c.getName());
    }

    @Test
    public void update_with_as_list() {
        List<Base> b = dao.fetchLinks(Lang.list(dao.fetch(Base.class, "red")), "country");
        b.get(0).setLevel(45);
        b.get(0).getCountry().setName("ABC");
        dao.updateWith(b, "country");
        b = Lang.list(dao.fetch(Base.class, b.get(0).getName()));
        assertEquals(45, b.get(0).getLevel());
        Country c = dao.fetch(Country.class, b.get(0).getCountryId());
        assertEquals("ABC", c.getName());
    }

}
TOP

Related Classes of org.nutz.dao.test.mapping.OneTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.