2013-09-06 8 views
1

Après this tutoriel pour la configuration Robolectric dans Eclipse ADT et en utilisant la version 2.1.1 de Sonatypequalificatifs Robolectric question de la dépendance Robolectric

Je reçois la trace de la pile suivante lors du test de base qui est décrit dans le tutoriel:

java.lang.RuntimeException: really, more than 64 qualifiers?!? 
at org.robolectric.res.ResBunch.pick(ResBunch.java:45) 
at org.robolectric.res.ResBunch.getValue(ResBunch.java:40) 
at org.robolectric.res.XResourceLoader.getValue(XResourceLoader.java:54) 
at org.robolectric.res.PackageResourceLoader.getValue(PackageResourceLoader.java:5) 
at org.robolectric.shadows.ShadowAssetManager.getAndResolve(ShadowAssetManager.java:263) 
at org.robolectric.shadows.ShadowAssetManager.getAndResolve(ShadowAssetManager.java:259) 
at org.robolectric.shadows.ShadowAssetManager.getResourceText(ShadowAssetManager.java:62) 
at android.content.res.AssetManager.getResourceText(AssetManager.java) 
at android.content.res.Resources.getText(Resources.java:225) 
at android.content.res.Resources.getString(Resources.java:313) 
at android.text.format.DateUtils.getDayOfWeekString(DateUtils.java:325) 
at android.text.format.DateFormat.format(DateFormat.java:473) 
at android.text.format.DateFormat.format(DateFormat.java:422) 
at com.test.project.HomeScreenActivity.setCheckinDate(HomeScreenActivity.java:505) 
at com.test.project.HomeScreenActivity.onCreate(HomeScreenActivity.java:148) 
at android.app.Activity.performCreate(Activity.java:5008) 
at org.fest.reflect.method.Invoker.invoke(Invoker.java:112) 
at org.robolectric.util.ActivityController$1.run(ActivityController.java:119) 
at org.robolectric.shadows.ShadowLooper.runPaused(ShadowLooper.java:256) 
at org.robolectric.util.ActivityController.create(ActivityController.java:114) 
at org.robolectric.util.ActivityController.create(ActivityController.java:126) 
at com.test.project.HomeScreenActivityTest.setUp(HomeScreenActivityTest.java:18) 
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) 
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) 
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) 
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:27) 
at org.robolectric.RobolectricTestRunner$2.evaluate(RobolectricTestRunner.java:241) 
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) 
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) 
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) 
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) 
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) 
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) 
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) 
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) 
at org.robolectric.RobolectricTestRunner$1.evaluate(RobolectricTestRunner.java:177) 
at org.junit.runners.ParentRunner.run(ParentRunner.java:300) 
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) 
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) 
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) 
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) 
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) 
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) 

Et la sortie de la console ressemble à:

DEBUG: Loading resources for com.test.project from .\res... 
DEBUG: Loading resources for com.squareup.timessquare from .\..\android-times-square\library\res... 
DEBUG: Loading resources for android from jar:C:\Users\me\.m2\repository\org\robolectric\android-res\4.1.2_r1_rc\android-res-4.1.2_r1_rc-real.jar!/res... 
INFO: no id mapping found for android:drawable/scrollbar_handle_horizontal; assigning ID #0x1140002 
INFO: no id mapping found for android:drawable/scrollbar_handle_vertical; assigning ID #0x1140003 
INFO: no id mapping found for android:color/highlighted_text_light; assigning ID #0x1140004 
INFO: no id mapping found for android:color/hint_foreground_light; assigning ID #0x1140005 
INFO: no id mapping found for android:color/link_text_light; assigning ID #0x1140006 
INFO: no id mapping found for android:color/dim_foreground_light_disabled; assigning ID #0x1140007 
INFO: no id mapping found for android:color/dim_foreground_light; assigning ID #0x1140008 
INFO: no id mapping found for android:color/bright_foreground_light; assigning ID #0x1140009 
INFO: no id mapping found for android:layout/text_edit_paste_window; assigning ID #0x114000a 
INFO: no id mapping found for android:layout/text_edit_no_paste_window; assigning ID #0x114000b 
INFO: no id mapping found for android:layout/text_edit_side_paste_window; assigning ID #0x114000c 
INFO: no id mapping found for android:layout/text_edit_side_no_paste_window; assigning ID #0x114000d 
INFO: no id mapping found for android:layout/text_edit_suggestion_item; assigning ID #0x114000e 
INFO: no id mapping found for android:color/bright_foreground_light_disabled; assigning ID #0x114000f 
INFO: no id mapping found for android:color/highlighted_text_dark; assigning ID #0x1140010 
INFO: no id mapping found for android:color/hint_foreground_dark; assigning ID #0x1140011 
INFO: no id mapping found for android:color/link_text_dark; assigning ID #0x1140012 
INFO: no id mapping found for android:color/bright_foreground_dark_disabled; assigning ID #0x1140013 
INFO: no id mapping found for android:color/bright_foreground_dark; assigning ID #0x1140014 
INFO: no id mapping found for android:color/bright_foreground_dark_inverse; assigning ID #0x1140015 
INFO: no id mapping found for android:drawable/spinner_background_holo_light; assigning ID #0x1140016 
INFO: no id mapping found for android:color/dim_foreground_dark_disabled; assigning ID #0x1140017 
INFO: no id mapping found for android:color/dim_foreground_dark; assigning ID #0x1140018 
INFO: no id mapping found for android:color/dim_foreground_dark_inverse_disabled; assigning ID #0x1140019 
INFO: no id mapping found for android:color/dim_foreground_dark_inverse; assigning ID #0x114001a 
INFO: no id mapping found for android:drawable/progress_medium_white; assigning ID #0x114001b 
INFO: no id mapping found for android:drawable/spinner_white_48; assigning ID #0x114001c 
INFO: no id mapping found for android:color/primary_text_light_disable_only; assigning ID #0x114001d 

Il semble que robolectric échoue lors du chargement des ressources de jar: C: \ Utilisateurs \ ahobbs \ .m2 \ dépôt \ org \ robolectric \ android-res \ 4.1.2_r1_rc \ android-res-4.1.2_r1_rc-real.jar!/res ... et je ne suis pas sûr de savoir comment résoudre ce problème.

Voici ma classe de test:

package com.test.project 

import static org.hamcrest.CoreMatchers.equalTo; 
import static org.junit.Assert.assertThat; 

import org.junit.Before; 
import org.junit.Test; 
import org.junit.runner.RunWith; 
import org.robolectric.Robolectric; 

@RunWith(org.robolectric.RobolectricTestRunner.class) 
public class HomeScreenActivityTest { 

    private HomeScreenActivity mActivity; 

    @Before 
    public void setUp() throws Exception { 
     mActivity = Robolectric.buildActivity(HomeScreenActivity.class).create().get(); 
    } 

    @Test 
    public void shouldHaveHappySmiles() throws Exception { 
     String hello = mActivity.getResources().getString(R.string.test); 
     assertThat(hello, equalTo("test")); 
    } 
} 

Comment puis-je corriger ce problème et obtenir mon test simple à exécuter avec Robolectric?

Répondre

Questions connexes