Send crash reports
This commit is contained in:
		
							parent
							
								
									b2a1ba777d
								
							
						
					
					
						commit
						c3b65d286f
					
				| @ -67,6 +67,7 @@ dependencies { | |||||||
|     compile 'com.jakewharton:butterknife:7.0.1' |     compile 'com.jakewharton:butterknife:7.0.1' | ||||||
|     compile 'com.jakewharton.timber:timber:3.1.0' |     compile 'com.jakewharton.timber:timber:3.1.0' | ||||||
|     compile 'uk.co.ribot:easyadapter:1.5.0@aar' |     compile 'uk.co.ribot:easyadapter:1.5.0@aar' | ||||||
|  |     compile 'ch.acra:acra:4.6.2' | ||||||
| 
 | 
 | ||||||
|     compile "com.google.dagger:dagger:$DAGGER_VERSION" |     compile "com.google.dagger:dagger:$DAGGER_VERSION" | ||||||
|     apt "com.google.dagger:dagger-compiler:$DAGGER_VERSION" |     apt "com.google.dagger:dagger-compiler:$DAGGER_VERSION" | ||||||
|  | |||||||
| @ -3,8 +3,19 @@ package eu.kanade.mangafeed; | |||||||
| import android.app.Application; | import android.app.Application; | ||||||
| import android.content.Context; | import android.content.Context; | ||||||
| 
 | 
 | ||||||
|  | import org.acra.ACRA; | ||||||
|  | import org.acra.ReportingInteractionMode; | ||||||
|  | import org.acra.annotation.ReportsCrashes; | ||||||
|  | 
 | ||||||
| import timber.log.Timber; | import timber.log.Timber; | ||||||
| 
 | 
 | ||||||
|  | @ReportsCrashes( | ||||||
|  |         formUri = "http://couch.kanade.eu/acra-manga/_design/acra-storage/_update/report", | ||||||
|  |         reportType = org.acra.sender.HttpSender.Type.JSON, | ||||||
|  |         httpMethod = org.acra.sender.HttpSender.Method.PUT, | ||||||
|  |         formUriBasicAuthLogin="test", | ||||||
|  |         formUriBasicAuthPassword="test" | ||||||
|  | ) | ||||||
| public class App extends Application { | public class App extends Application { | ||||||
| 
 | 
 | ||||||
|     AppComponent mApplicationComponent; |     AppComponent mApplicationComponent; | ||||||
| @ -17,6 +28,8 @@ public class App extends Application { | |||||||
|         mApplicationComponent = DaggerAppComponent.builder() |         mApplicationComponent = DaggerAppComponent.builder() | ||||||
|                 .appModule(new AppModule(this)) |                 .appModule(new AppModule(this)) | ||||||
|                 .build(); |                 .build(); | ||||||
|  | 
 | ||||||
|  |         ACRA.init(this); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     public static App get(Context context) { |     public static App get(Context context) { | ||||||
|  | |||||||
| @ -0,0 +1,31 @@ | |||||||
|  | package eu.kanade.mangafeed; | ||||||
|  | 
 | ||||||
|  | import org.junit.Test; | ||||||
|  | import org.junit.runner.RunWith; | ||||||
|  | import org.robolectric.RobolectricGradleTestRunner; | ||||||
|  | import org.robolectric.RobolectricTestRunner; | ||||||
|  | import org.robolectric.annotation.Config; | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | import static org.robolectric.util.FragmentTestUtil.startFragment; | ||||||
|  | import static org.junit.Assert.assertNotNull; | ||||||
|  | 
 | ||||||
|  | import eu.kanade.mangafeed.BuildConfig; | ||||||
|  | import eu.kanade.mangafeed.ui.fragment.LibraryFragment; | ||||||
|  | import eu.kanade.mangafeed.util.DefaultConfig; | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Created by len on 1/10/15. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | @RunWith(RobolectricGradleTestRunner.class) | ||||||
|  | @Config(constants = BuildConfig.class, sdk = DefaultConfig.EMULATE_SDK) | ||||||
|  | public class LibraryFragmentTest { | ||||||
|  | 
 | ||||||
|  |     @Test | ||||||
|  |     public void mangaList_shouldNotBeEmpty() { | ||||||
|  |         LibraryFragment fragment = LibraryFragment.newInstance(); | ||||||
|  |         startFragment(fragment); | ||||||
|  |         assertNotNull(fragment); | ||||||
|  |     } | ||||||
|  | } | ||||||
							
								
								
									
										40
									
								
								app/src/test/java/eu/kanade/mangafeed/MainActivityTest.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								app/src/test/java/eu/kanade/mangafeed/MainActivityTest.java
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,40 @@ | |||||||
|  | package eu.kanade.mangafeed; | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Created by len on 1/10/15. | ||||||
|  |  */ | ||||||
|  | import android.os.Build; | ||||||
|  | import android.support.v7.widget.Toolbar; | ||||||
|  | 
 | ||||||
|  | import org.junit.Before; | ||||||
|  | import org.junit.Test; | ||||||
|  | import org.junit.runner.RunWith; | ||||||
|  | import org.robolectric.Robolectric; | ||||||
|  | import org.robolectric.RobolectricGradleTestRunner; | ||||||
|  | import org.robolectric.annotation.Config; | ||||||
|  | 
 | ||||||
|  | import eu.kanade.mangafeed.ui.activity.MainActivity; | ||||||
|  | 
 | ||||||
|  | import static junit.framework.Assert.assertNotNull; | ||||||
|  | import static junit.framework.Assert.assertTrue; | ||||||
|  | 
 | ||||||
|  | @Config(constants = BuildConfig.class, sdk = Build.VERSION_CODES.LOLLIPOP) | ||||||
|  | @RunWith(RobolectricGradleTestRunner.class) | ||||||
|  | public class MainActivityTest { | ||||||
|  |     private MainActivity activity; | ||||||
|  | 
 | ||||||
|  |     // @Before => JUnit 4 annotation that specifies this method should run before each test is run | ||||||
|  |     // Useful to do setup for objects that are needed in the test | ||||||
|  |     @Before | ||||||
|  |     public void setup() { | ||||||
|  |         // Convenience method to run MainActivity through the Activity Lifecycle methods: | ||||||
|  |         // onCreate(...) => onStart() => onPostCreate(...) => onResume() | ||||||
|  |         activity = Robolectric.setupActivity(MainActivity.class); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Test | ||||||
|  |     public void validate() { | ||||||
|  |         Toolbar toolbar = (Toolbar)activity.findViewById(R.id.toolbar); | ||||||
|  |         assertNotNull(toolbar); | ||||||
|  |     } | ||||||
|  | } | ||||||
							
								
								
									
										16
									
								
								app/src/test/java/eu/kanade/mangafeed/UseModule.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								app/src/test/java/eu/kanade/mangafeed/UseModule.java
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,16 @@ | |||||||
|  | package eu.kanade.mangafeed; | ||||||
|  | 
 | ||||||
|  | import java.lang.annotation.ElementType; | ||||||
|  | import java.lang.annotation.Retention; | ||||||
|  | import java.lang.annotation.RetentionPolicy; | ||||||
|  | import java.lang.annotation.Target; | ||||||
|  | 
 | ||||||
|  | /** | ||||||
|  |  * Created by len on 1/10/15. | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | @Target(ElementType.TYPE) | ||||||
|  | @Retention(RetentionPolicy.RUNTIME) | ||||||
|  | public @interface UseModule { | ||||||
|  |     Class value(); | ||||||
|  | } | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 inorichi
						inorichi