/*
* Copyright (c) 2011, 2012 Roberto Tyley
*
* This file is part of 'Agit' - an Android Git client.
*
* Agit is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Agit is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see http://www.gnu.org/licenses/ .
*/
package com.madgag.agit;
import static roboguice.RoboGuice.getInjector;
import android.app.Application;
import com.madgag.agit.shadow.ShadowSherlockActivity;
import com.xtremelabs.robolectric.Robolectric;
import com.xtremelabs.robolectric.RobolectricTestRunner;
import org.junit.runners.model.InitializationError;
import roboguice.RoboGuice;
import roboguice.activity.RoboActivity;
import roboguice.inject.RoboInjector;
public class InjectedTestRunner extends RobolectricTestRunner {
public InjectedTestRunner(Class<?> testClass) throws InitializationError {
super(testClass);
addClassOrPackageToInstrument("com.actionbarsherlock.app.SherlockActivity");
}
@Override
public void prepareTest(Object test) {
getInjector(new RoboActivity()).injectMembers(test);
}
@Override
protected void bindShadowClasses() {
super.bindShadowClasses();
Robolectric.bindShadowClass(ShadowSherlockActivity.class);
}
}