Home | History | Annotate | Download | only in testapp
      1 package android.databinding.testapp;
      2 
      3 import android.databinding.testapp.databinding.ConditionalBindingBinding;
      4 import android.databinding.testapp.vo.NotBindableVo;
      5 
      6 import android.test.UiThreadTest;
      7 
      8 public class ConditionalBindingTest extends BaseDataBinderTest<ConditionalBindingBinding>{
      9 
     10     public ConditionalBindingTest() {
     11         super(ConditionalBindingBinding.class);
     12     }
     13 
     14     @UiThreadTest
     15     public void test1() {
     16         initBinder();
     17         testCorrectness(true, true);
     18     }
     19 
     20     private void testCorrectness(boolean cond1, boolean cond2) {
     21         NotBindableVo o1 = new NotBindableVo("a");
     22         NotBindableVo o2 = new NotBindableVo("b");
     23         NotBindableVo o3 = new NotBindableVo("c");
     24         mBinder.setObj1(o1);
     25         mBinder.setObj2(o2);
     26         mBinder.setObj3(o3);
     27         mBinder.setCond1(cond1);
     28         mBinder.setCond2(cond2);
     29         mBinder.executePendingBindings();
     30         final String text = mBinder.textView.getText().toString();
     31         assertEquals(cond1 && cond2, "a".equals(text));
     32         assertEquals(cond1 && !cond2, "b".equals(text));
     33         assertEquals(!cond1, "c".equals(text));
     34     }
     35 }
     36