From 9387d31cb64305f1bbc7422d2ab4601fb757b1d1 Mon Sep 17 00:00:00 2001 From: Paul Hawke Date: Sun, 9 Jul 2017 17:52:50 -0500 Subject: [PATCH] Improvements based on codacy-bot feedback. --- .../commons/nearby/NearbyListFragment.java | 8 ++- .../nearby/NearbyAdapterFactoryTest.java | 66 ++++++++++--------- 2 files changed, 41 insertions(+), 33 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyListFragment.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyListFragment.java index a8527ab46..ea7ce3478 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyListFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyListFragment.java @@ -27,7 +27,9 @@ public class NearbyListFragment extends Fragment { }.getType(); private static final Type CUR_LAT_LNG_TYPE = new TypeToken() { }.getType(); - private static final Gson gson = new GsonBuilder().registerTypeAdapter(Uri.class, new UriDeserializer()).create(); + private static final Gson gson = new GsonBuilder() + .registerTypeAdapter(Uri.class, new UriDeserializer()) + .create(); private NearbyAdapterFactory adapterFactory; private RecyclerView recyclerView; @@ -39,7 +41,9 @@ public class NearbyListFragment extends Fragment { } @Override - public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { + public View onCreateView(LayoutInflater inflater, + ViewGroup container, + Bundle savedInstanceState) { Timber.d("NearbyListFragment created"); View view = inflater.inflate(R.layout.fragment_nearby, container, false); recyclerView = (RecyclerView) view.findViewById(R.id.listView); diff --git a/app/src/test/java/fr/free/nrw/commons/nearby/NearbyAdapterFactoryTest.java b/app/src/test/java/fr/free/nrw/commons/nearby/NearbyAdapterFactoryTest.java index 20ec2af98..0ef58f873 100644 --- a/app/src/test/java/fr/free/nrw/commons/nearby/NearbyAdapterFactoryTest.java +++ b/app/src/test/java/fr/free/nrw/commons/nearby/NearbyAdapterFactoryTest.java @@ -1,5 +1,6 @@ package fr.free.nrw.commons.nearby; +import android.support.annotation.NonNull; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.TextView; @@ -63,21 +64,23 @@ public class NearbyAdapterFactoryTest { NearbyAdapterFactory testObject = new NearbyAdapterFactory(null); RVRendererAdapter result = testObject.create(Collections.singletonList(PLACE)); - RendererViewHolder viewHolder = result.onCreateViewHolder(new FrameLayout(RuntimeEnvironment.application), result.getItemViewType(0)); - assertNotNull(viewHolder); - result.bindViewHolder(viewHolder, 0); + RendererViewHolder viewHolder = renderComponent(result); assertNotNull(viewHolder.itemView.findViewById(R.id.tvName)); - assertEquals("name", ((TextView) viewHolder.itemView.findViewById(R.id.tvName)).getText().toString()); + assertEquals("name", + ((TextView) viewHolder.itemView.findViewById(R.id.tvName)).getText().toString()); assertNotNull(viewHolder.itemView.findViewById(R.id.tvDesc)); - assertEquals("airport", ((TextView) viewHolder.itemView.findViewById(R.id.tvDesc)).getText().toString()); + assertEquals("airport", + ((TextView) viewHolder.itemView.findViewById(R.id.tvDesc)).getText().toString()); assertNotNull(viewHolder.itemView.findViewById(R.id.distance)); - assertEquals("", ((TextView) viewHolder.itemView.findViewById(R.id.distance)).getText().toString()); + assertEquals("", + ((TextView) viewHolder.itemView.findViewById(R.id.distance)).getText().toString()); assertNotNull(viewHolder.itemView.findViewById(R.id.icon)); - ShadowDrawable shadow = Shadows.shadowOf(((ImageView) viewHolder.itemView.findViewById(R.id.icon)).getDrawable()); + ImageView imageView = (ImageView) viewHolder.itemView.findViewById(R.id.icon); + ShadowDrawable shadow = Shadows.shadowOf(imageView.getDrawable()); assertEquals(R.drawable.round_icon_airport, shadow.getCreatedFromResId()); } @@ -86,36 +89,23 @@ public class NearbyAdapterFactoryTest { NearbyAdapterFactory testObject = new NearbyAdapterFactory(null); RVRendererAdapter result = testObject.create(Collections.singletonList(UNKNOWN_PLACE)); - RendererViewHolder viewHolder = result.onCreateViewHolder(new FrameLayout(RuntimeEnvironment.application), result.getItemViewType(0)); - assertNotNull(viewHolder); - result.bindViewHolder(viewHolder, 0); - - assertNotNull(viewHolder.itemView.findViewById(R.id.tvName)); - assertEquals("name", ((TextView) viewHolder.itemView.findViewById(R.id.tvName)).getText().toString()); + RendererViewHolder viewHolder = renderComponent(result); assertNotNull(viewHolder.itemView.findViewById(R.id.tvDesc)); - assertEquals("no description found", ((TextView) viewHolder.itemView.findViewById(R.id.tvDesc)).getText().toString()); - - assertNotNull(viewHolder.itemView.findViewById(R.id.distance)); - assertEquals("", ((TextView) viewHolder.itemView.findViewById(R.id.distance)).getText().toString()); + assertEquals("no description found", + ((TextView) viewHolder.itemView.findViewById(R.id.tvDesc)).getText().toString()); assertNotNull(viewHolder.itemView.findViewById(R.id.icon)); - ShadowDrawable shadow = Shadows.shadowOf(((ImageView) viewHolder.itemView.findViewById(R.id.icon)).getDrawable()); + ImageView imageView = (ImageView) viewHolder.itemView.findViewById(R.id.icon); + ShadowDrawable shadow = Shadows.shadowOf(imageView.getDrawable()); assertEquals(R.drawable.round_icon_unknown, shadow.getCreatedFromResId()); } @Test public void clickView() { - NearbyAdapterFactory testObject = new NearbyAdapterFactory(new PlaceRenderer.PlaceClickedListener() { - @Override - public void placeClicked(Place place) { - clickedPlace = place; - } - }); + NearbyAdapterFactory testObject = new NearbyAdapterFactory(new MockPlaceClickedListener()); RVRendererAdapter result = testObject.create(Collections.singletonList(PLACE)); - RendererViewHolder viewHolder = result.onCreateViewHolder(new FrameLayout(RuntimeEnvironment.application), result.getItemViewType(0)); - assertNotNull(viewHolder); - result.bindViewHolder(viewHolder, 0); + RendererViewHolder viewHolder = renderComponent(result); viewHolder.itemView.performClick(); @@ -126,10 +116,24 @@ public class NearbyAdapterFactoryTest { public void clickViewHandlesMisconfiguredListener() { NearbyAdapterFactory testObject = new NearbyAdapterFactory(null); RVRendererAdapter result = testObject.create(Collections.singletonList(PLACE)); - RendererViewHolder viewHolder = result.onCreateViewHolder(new FrameLayout(RuntimeEnvironment.application), result.getItemViewType(0)); - assertNotNull(viewHolder); - result.bindViewHolder(viewHolder, 0); - + RendererViewHolder viewHolder = renderComponent(result); viewHolder.itemView.performClick(); } + + @NonNull + private RendererViewHolder renderComponent(RVRendererAdapter result) { + FrameLayout viewGroup = new FrameLayout(RuntimeEnvironment.application); + int itemViewType = result.getItemViewType(0); + RendererViewHolder viewHolder = result.onCreateViewHolder(viewGroup, itemViewType); + assertNotNull(viewHolder); + result.bindViewHolder(viewHolder, 0); + return viewHolder; + } + + private class MockPlaceClickedListener implements PlaceRenderer.PlaceClickedListener { + @Override + public void placeClicked(Place place) { + clickedPlace = place; + } + } } \ No newline at end of file