2016-03-27 30 views
1

Android JUnit Test, sorunu çözemiyor (boolean) istanttahat? build.gradle içinde

dependencies {  
    testCompile 'junit:junit:4.12' 
    testCompile 'org.mockito:mockito-core:1.10.19' 
} 

Kod

LVActivity yılında
import com.myapp.LVActivity; 
import org.junit.Test; 
import static org.junit.Assert.*; 

public class DeviceUnitTest { 
    @Test 
    public void check_that_is_correct_device_name_isTrue() { 
     assertThat(LVActivity.isCorrectDevice("MySpecialDevice"), is(true)); 
    } 
} 

:

private final static String correctName = "MySpecialDevice"; 
public static boolean isCorrectDevice(String deviceName) { 
    return deviceName.equals(correctName); 
} 

hata buradadır:

is(true) 

Hata:

Cannot resolve method is(boolean) 

Basit bir yerel birim testi yapmaya çalışıyorum.

import static org.junit.Assert.*; 

assertTrue(LVActivity.isCorrectDevice("MySpecialDevice")); 

Bu bir boolean kontrol etmek için daha doğal bir ifadesidir:

Ben http://developer.android.com/training/testing/unit-testing/local-unit-tests.html

+0

'Matchers' sınıfından' is' yöntemini kullanın. – kryger

+0

Bu soru zamanımı kurtardı ... –

cevap

6

olarak sadece, öyle değil mi bu öğretici takip ediyorum.

Ama assertThat ile is eşleyici kullanmanız gerekiyorsa, bu içe gerekir: Sen Matchers.is` `statik ithalat ihtiyaç ya da tam istediğiniz söylemek çağrı hak edeceğiz

import static org.hamcrest.CoreMatchers.*; 
+0

Tamam, ikisi de işe yarıyor! Yardımın için teşekkürler. – Adz