13f73e3149732132c02f5d19aab7b5da429794058Yigit Boyarpackage android.databinding.testapp; 23f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar 33f73e3149732132c02f5d19aab7b5da429794058Yigit Boyarimport android.databinding.testapp.databinding.MultiThreadLayoutBinding; 43f73e3149732132c02f5d19aab7b5da429794058Yigit Boyarimport android.test.UiThreadTest; 53f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar 63f73e3149732132c02f5d19aab7b5da429794058Yigit Boyarimport java.util.concurrent.CountDownLatch; 73f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar 83f73e3149732132c02f5d19aab7b5da429794058Yigit Boyarpublic class MultiThreadTest extends BaseDataBinderTest<MultiThreadLayoutBinding> { 93f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar public MultiThreadTest() { 103f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar super(MultiThreadLayoutBinding.class); 113f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar } 123f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar 133f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar public void testSetOnBackgroundThread() throws Throwable { 143f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar initBinder(); 153f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar mBinder.setText("a"); 163f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar assertEquals("a", mBinder.getText()); 173f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar Thread.sleep(500); 183f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar runTestOnUiThread(new Runnable() { 193f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar @Override 203f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar public void run() { 213f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar assertEquals("a", mBinder.myTextView.getText().toString()); 223f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar } 233f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar }); 243f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar mBinder.setText("b"); 253f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar Thread.sleep(500); 263f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar assertEquals("b", mBinder.getText()); 273f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar runTestOnUiThread(new Runnable() { 283f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar @Override 293f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar public void run() { 303f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar assertEquals("b", mBinder.myTextView.getText().toString()); 313f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar } 323f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar }); 333f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar } 343f73e3149732132c02f5d19aab7b5da429794058Yigit Boyar} 35