From 262d585301e6859a41ac7fe2ee3b3a7b5e73f280 Mon Sep 17 00:00:00 2001 From: Andrzej Kozlowski Date: Thu, 13 Aug 2015 10:16:32 +0200 Subject: [PATCH 01/10] add frameworks: unit testing, retrofit, roboguice --- app/app.iml | 13 +++++++- app/build.gradle | 8 +++++ app/src/main/AndroidManifest.xml | 7 +++-- .../akozlowski/doomvision/MainActivity.java | 30 +++---------------- .../doomvision/MainActivityFragment.java | 8 ++--- .../doomvision/service/ApiService.java | 20 +++++++++++++ app/src/main/res/layout/fragment_main.xml | 30 +++++++++++++++++++ app/src/main/res/values/strings.xml | 2 ++ 8 files changed, 84 insertions(+), 34 deletions(-) create mode 100644 app/src/main/java/com/akozlowski/doomvision/service/ApiService.java diff --git a/app/app.iml b/app/app.iml index d8186b9..a8a4932 100644 --- a/app/app.iml +++ b/app/app.iml @@ -82,11 +82,22 @@ + - + + + + + + + + + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 6d6c95d..dbb31ab 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -22,4 +22,12 @@ android { dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:22.2.1' + compile 'org.roboguice:roboguice:3.+' + provided 'org.roboguice:roboblender:3.+' + compile 'com.squareup.retrofit:retrofit:1.9.0' + testCompile 'junit:junit:4.12' + testCompile 'org.mockito:mockito-core:1.9.5' + androidTestCompile 'org.mockito:mockito-core:1.9.5' + androidTestCompile 'com.google.dexmaker:dexmaker:1.1' + androidTestCompile 'com.google.dexmaker:dexmaker-mockito:1.1' } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index ed9d7cb..28f08de 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,15 +1,16 @@ + package="com.akozlowski.doomvision"> + + android:theme="@style/AppTheme"> + android:label="@string/app_name"> diff --git a/app/src/main/java/com/akozlowski/doomvision/MainActivity.java b/app/src/main/java/com/akozlowski/doomvision/MainActivity.java index d8d413b..207bcca 100644 --- a/app/src/main/java/com/akozlowski/doomvision/MainActivity.java +++ b/app/src/main/java/com/akozlowski/doomvision/MainActivity.java @@ -1,39 +1,17 @@ package com.akozlowski.doomvision; -import android.support.v7.app.ActionBarActivity; import android.os.Bundle; -import android.view.Menu; -import android.view.MenuItem; +import roboguice.activity.RoboActivity; +import roboguice.inject.ContentView; -public class MainActivity extends ActionBarActivity { +@ContentView(R.layout.activity_main) +public class MainActivity extends RoboActivity { @Override protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_main); - } - - @Override - public boolean onCreateOptionsMenu(Menu menu) { - // Inflate the menu; this adds items to the action bar if it is present. - getMenuInflater().inflate(R.menu.menu_main, menu); - return true; } - @Override - public boolean onOptionsItemSelected(MenuItem item) { - // Handle action bar item clicks here. The action bar will - // automatically handle clicks on the Home/Up button, so long - // as you specify a parent activity in AndroidManifest.xml. - int id = item.getItemId(); - - //noinspection SimplifiableIfStatement - if (id == R.id.action_settings) { - return true; - } - return super.onOptionsItemSelected(item); - } } diff --git a/app/src/main/java/com/akozlowski/doomvision/MainActivityFragment.java b/app/src/main/java/com/akozlowski/doomvision/MainActivityFragment.java index 5df94f0..93d28ee 100644 --- a/app/src/main/java/com/akozlowski/doomvision/MainActivityFragment.java +++ b/app/src/main/java/com/akozlowski/doomvision/MainActivityFragment.java @@ -1,23 +1,23 @@ package com.akozlowski.doomvision; -import android.support.v4.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import roboguice.fragment.provided.RoboFragment; + /** * A placeholder fragment containing a simple view. */ -public class MainActivityFragment extends Fragment { +public class MainActivityFragment extends RoboFragment { public MainActivityFragment() { } @Override - public View onCreateView(LayoutInflater inflater, ViewGroup container, - Bundle savedInstanceState) { + public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.fragment_main, container, false); } } diff --git a/app/src/main/java/com/akozlowski/doomvision/service/ApiService.java b/app/src/main/java/com/akozlowski/doomvision/service/ApiService.java new file mode 100644 index 0000000..5cc26ce --- /dev/null +++ b/app/src/main/java/com/akozlowski/doomvision/service/ApiService.java @@ -0,0 +1,20 @@ +package com.akozlowski.doomvision.service; + +import android.content.Intent; + +import roboguice.service.RoboIntentService; + +/** + * Created by akozlowski on 13/08/15. + */ +public class ApiService extends RoboIntentService { + + public ApiService(String name) { + super(name); + } + + @Override + protected void onHandleIntent(Intent intent) { + + } +} diff --git a/app/src/main/res/layout/fragment_main.xml b/app/src/main/res/layout/fragment_main.xml index 6f07f14..b4b4f41 100644 --- a/app/src/main/res/layout/fragment_main.xml +++ b/app/src/main/res/layout/fragment_main.xml @@ -8,8 +8,38 @@ android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivityFragment"> + + + + +