// Path: app/src/main/java/net/kb/test/bean/Bean.java
// public class Bean {
//     int    id;
//     int    uid;
//     String name;
// 
//     public Bean() {
//     }
// 
//     public Bean(int uid, String name) {
//         this.uid = uid;
//         this.name = name;
//     }
// 
//     public int getId() {
//         return id;
//     }
// 
//     public void setId(int id) {
//         this.id = id;
//     }
// 
//     public int getUid() {
//         return uid;
//     }
// 
//     public void setUid(int uid) {
//         this.uid = uid;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// }
// 
// Path: app/src/main/java/net/kb/test/bean/BeanV2.java
// public class BeanV2 {
// 
//     private static final int TYPE_AD = 1;
// 
//     @Id
//     int id;
// 
//     int    uid;
//     String name;
// 
//     public BeanV2() {
//     }
// 
//     public BeanV2(int uid, String name) {
//         this.uid = uid;
//         this.name = name;
//     }
// 
//     public int getId() {
//         return id;
//     }
// 
//     public void setId(int id) {
//         this.id = id;
//     }
// 
//     public int getUid() {
//         return uid;
//     }
// 
//     public void setUid(int uid) {
//         this.uid = uid;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// }
// 
// Path: app/src/main/java/net/kb/test/bean/BeanV3.java
// public class BeanV3 {
// 
//     @Id
//     int id;
// 
//     int     uid;
//     String  name;
//     boolean isPeople;
// 
//     public BeanV3() {}
// 
//     public BeanV3(int uid, String name, boolean isPeople) {
//         this.uid = uid;
//         this.name = name;
//         this.isPeople = isPeople;
//     }
// 
//     public int getId() {
//         return id;
//     }
// 
//     public void setId(int id) {
//         this.id = id;
//     }
// 
//     public int getUid() {
//         return uid;
//     }
// 
//     public void setUid(int uid) {
//         this.uid = uid;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public boolean isPeople() {
//         return isPeople;
//     }
// 
//     public void setPeople(boolean people) {
//         isPeople = people;
//     }
// }
// 
// Path: library/src/main/java/net/kb/test/library/testCase/AFinalCase.java
// public class AFinalCase extends KBCase {
// 
//     @Rule
//     public ExternalResource afinalRule = new ExternalResource() {
//         @Override
//         protected void after() {
//             FinalDbUtils.clear();
//         }
//     };
// }


import android.content.Context;
import net.kb.test.bean.Bean;
import net.kb.test.bean.BeanV2;
import net.kb.test.bean.BeanV3;
import net.kb.test.library.testCase.AFinalCase;
import net.tsz.afinal.FinalDb;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import java.util.List;
import java.util.Random;

    @Test
    public void testUpdateByWhere() {
        saveBean(1, "kk");

        Bean bean = new Bean(1, "kk update");

        finalDb.update(bean, "uid=1");

        Bean beanUpdate = finalDb.findAll(Bean.class).get(0);

        Assert.assertEquals("kk update", beanUpdate.getName());
    }

    private void saveBean(String name) {
        saveBean(new Random().nextInt(99999), name);
    }

    private void saveBean(int uid, String name) {
        Bean bean = new Bean(uid, name);

        finalDb.save(bean);
    }

    @Test
    public void testStaticField() {
        BeanV2 bean = new BeanV2(1, "name");

        finalDb.save(bean);

// Path: app/src/main/java/net/kb/test/bean/Bean.java
// public class Bean {
//     int    id;
//     int    uid;
//     String name;
// 
//     public Bean() {
//     }
// 
//     public Bean(int uid, String name) {
//         this.uid = uid;
//         this.name = name;
//     }
// 
//     public int getId() {
//         return id;
//     }
// 
//     public void setId(int id) {
//         this.id = id;
//     }
// 
//     public int getUid() {
//         return uid;
//     }
// 
//     public void setUid(int uid) {
//         this.uid = uid;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// }
// 
// Path: app/src/main/java/net/kb/test/bean/BeanV2.java
// public class BeanV2 {
// 
//     private static final int TYPE_AD = 1;
// 
//     @Id
//     int id;
// 
//     int    uid;
//     String name;
// 
//     public BeanV2() {
//     }
// 
//     public BeanV2(int uid, String name) {
//         this.uid = uid;
//         this.name = name;
//     }
// 
//     public int getId() {
//         return id;
//     }
// 
//     public void setId(int id) {
//         this.id = id;
//     }
// 
//     public int getUid() {
//         return uid;
//     }
// 
//     public void setUid(int uid) {
//         this.uid = uid;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// }
// 
// Path: app/src/main/java/net/kb/test/bean/BeanV3.java
// public class BeanV3 {
// 
//     @Id
//     int id;
// 
//     int     uid;
//     String  name;
//     boolean isPeople;
// 
//     public BeanV3() {}
// 
//     public BeanV3(int uid, String name, boolean isPeople) {
//         this.uid = uid;
//         this.name = name;
//         this.isPeople = isPeople;
//     }
// 
//     public int getId() {
//         return id;
//     }
// 
//     public void setId(int id) {
//         this.id = id;
//     }
// 
//     public int getUid() {
//         return uid;
//     }
// 
//     public void setUid(int uid) {
//         this.uid = uid;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public boolean isPeople() {
//         return isPeople;
//     }
// 
//     public void setPeople(boolean people) {
//         isPeople = people;
//     }
// }
// 
// Path: library/src/main/java/net/kb/test/library/testCase/AFinalCase.java
// public class AFinalCase extends KBCase {
// 
//     @Rule
//     public ExternalResource afinalRule = new ExternalResource() {
//         @Override
//         protected void after() {
//             FinalDbUtils.clear();
//         }
//     };
// }


// Path: app/src/test/java/net/kb/test/afinal/AfinalTest.java
import android.content.Context;
import net.kb.test.bean.Bean;
import net.kb.test.bean.BeanV2;
import net.kb.test.bean.BeanV3;
import net.kb.test.library.testCase.AFinalCase;
import net.tsz.afinal.FinalDb;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import java.util.List;
import java.util.Random;


    @Test
    public void testUpdateByWhere() {
        saveBean(1, "kk");

        Bean bean = new Bean(1, "kk update");

        finalDb.update(bean, "uid=1");

        Bean beanUpdate = finalDb.findAll(Bean.class).get(0);

        Assert.assertEquals("kk update", beanUpdate.getName());
    }

    private void saveBean(String name) {
        saveBean(new Random().nextInt(99999), name);
    }

    private void saveBean(int uid, String name) {
        Bean bean = new Bean(uid, name);

        finalDb.save(bean);
    }

    @Test
    public void testStaticField() {
        BeanV2 bean = new BeanV2(1, "name");

        finalDb.save(bean);

        BeanV2 beanV2 = finalDb.findAll(BeanV2.class).get(0);