Android ApplicationTestCase using a MockContext

后端 未结 2 1015
無奈伤痛
無奈伤痛 2020-12-19 05:35

I\'m new to Android testing and I\'m trying to create an ApplicationTestCase using a MockContext (well actually I\'m trying to use a Renaming Mock Context). But I keep getti

2条回答
  •  时光说笑
    2020-12-19 06:25

    I've used AndroidTestCase to mock a simple context.

    class ExampleTest extends AndroidTestCase
        public void setUp() {
          Context c = new DelegatedMockContext(getContext())
        }
    
        class DelegatedMockContext extends MockContext {
    
        private Context mDelegatedContext;
            private static final String PREFIX = "test.";
    
            public DelegatedMockContext(Context context) {
                 mDelegatedContext = context;
            }
    
            @Override
            public String getPackageName(){
                return PREFIX;
            }
    
            @Override
            public SharedPreferences getSharedPreferences(String name, int mode) {
                return mDelegatedContext.getSharedPreferences(name, mode);
            }
        }
    } 
    

    Its just a bog standard Context, but will get you going

提交回复
热议问题