From 3d4944d6653608e4ba0759eb0f5eef190e3f9b9a Mon Sep 17 00:00:00 2001 From: Soichiro Kashima Date: Wed, 2 Dec 2015 06:43:35 +0900 Subject: [PATCH] Add tests for ObservableGridView. --- .../test/HeaderGridViewActivityTest.java | 14 ++++++++++++++ .../observablescrollview/ObservableGridView.java | 4 ++++ 2 files changed, 18 insertions(+) diff --git a/library/src/androidTest/java/com/github/ksoichiro/android/observablescrollview/test/HeaderGridViewActivityTest.java b/library/src/androidTest/java/com/github/ksoichiro/android/observablescrollview/test/HeaderGridViewActivityTest.java index 7b22009e..3ba7db6a 100644 --- a/library/src/androidTest/java/com/github/ksoichiro/android/observablescrollview/test/HeaderGridViewActivityTest.java +++ b/library/src/androidTest/java/com/github/ksoichiro/android/observablescrollview/test/HeaderGridViewActivityTest.java @@ -98,6 +98,20 @@ public void run() { activity.headerView.setClickable(true); scrollable.addHeaderView(activity.headerView); + + assertEquals(100/* items */ + 2/* header */ + 2/* footer */, hvgAdapter.getCount()); + assertEquals(1, hvgAdapter.getHeadersCount()); + assertEquals(2, hvgAdapter.getNumColumns()); + // If the header is added by addHeader(View), + // HeaderViewGridAdapter doesn't contain any associated data. + // headerData does NOT mean the view. + // If we want to get the view, we should use getView(). + assertNull(hvgAdapter.getItem(0)); + assertNull(hvgAdapter.getItem(1)); + + assertEquals(1, hvgAdapter.getFootersCount()); + assertNull(hvgAdapter.getItem(100/* items */ + 2/* header */ + 2/* footer */ - 1 - 1)); + assertNull(hvgAdapter.getItem(100/* items */ + 2/* header */ + 2/* footer */ - 1)); } }); // Scroll to bottom and try removing re-adding the footer view. diff --git a/library/src/main/java/com/github/ksoichiro/android/observablescrollview/ObservableGridView.java b/library/src/main/java/com/github/ksoichiro/android/observablescrollview/ObservableGridView.java index 6ea47e25..8a90016d 100644 --- a/library/src/main/java/com/github/ksoichiro/android/observablescrollview/ObservableGridView.java +++ b/library/src/main/java/com/github/ksoichiro/android/observablescrollview/ObservableGridView.java @@ -652,6 +652,10 @@ public HeaderViewGridAdapter(ArrayList headerViewInfos, ArrayList && areAllListInfosSelectable(mFooterViewInfos); } + public int getNumColumns() { + return mNumColumns; + } + public void setNumColumns(int numColumns) { if (numColumns < 1) { return;