Skip to content

Commit ae80568

Browse files
committed
The list adapter was not being updated properly when the test suite was ran
1 parent 380fb39 commit ae80568

File tree

2 files changed

+16
-5
lines changed

2 files changed

+16
-5
lines changed

app/src/main/java/fuzion24/device/vulnerability/test/adapter/RecyclerAdapter.java

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,16 @@
3131
public class RecyclerAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
3232

3333
private static final String TAG = "RecycleAdapter";
34-
final private List<Pair<VulnerabilityTestResult, VulnerabilityDescriptor>> mResults;
34+
private List<Pair<VulnerabilityTestResult, VulnerabilityDescriptor>> mResults;
3535
private Context mContext;
3636

3737
public RecyclerAdapter(Context context, List<VulnerabilityTestResult> itemList) {
3838
this.mContext = context;
39+
this.mResults = buildResultDescriptionMap(context, itemList);
40+
}
41+
42+
43+
private static List<Pair<VulnerabilityTestResult, VulnerabilityDescriptor>> buildResultDescriptionMap(Context context, List<VulnerabilityTestResult> itemList){
3944
List<Pair<VulnerabilityTestResult, VulnerabilityDescriptor>> res = new ArrayList<>();
4045

4146
try {
@@ -61,7 +66,14 @@ public int compare(Pair<VulnerabilityTestResult, VulnerabilityDescriptor> lhs, P
6166
}catch(Exception e){
6267
e.printStackTrace();
6368
}
64-
mResults = res;
69+
return res;
70+
71+
}
72+
73+
74+
public void updateResults(List<VulnerabilityTestResult> itemList){
75+
mResults = buildResultDescriptionMap(mContext, itemList);
76+
notifyDataSetChanged();
6577
}
6678

6779
@Override

app/src/main/java/fuzion24/device/vulnerability/test/ui/MainActivity.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ public boolean onOptionsItemSelected(MenuItem item) {
125125
switch (itemId) {
126126
case R.id.menu_export_results:
127127
case R.id.menu_share_results:
128-
if (testResults == null) {
128+
if (testResults == null || testResults.isEmpty()) {
129129
Snackbar.make(coordinatorLayout, R.string.run_tests, Snackbar.LENGTH_LONG).setAction(R.string.start, new View.OnClickListener() {
130130
@Override
131131
public void onClick(View v) {
@@ -206,7 +206,6 @@ private JSONObject serializeResults(List<VulnerabilityTestResult> results, Devic
206206
return combinedResults;
207207
}
208208

209-
210209
private void runTestsSuit() {
211210
new VulnerabilityTestRunner(MainActivity.this, true, new ResultsCallback() {
212211
@Override
@@ -217,7 +216,7 @@ public void finished(final List<VulnerabilityTestResult> results) {
217216
testResults.addAll(results);
218217

219218
emptyView.setVisibility(View.GONE);
220-
recyclerAdapter.notifyDataSetChanged();
219+
recyclerAdapter.updateResults(results);
221220
}
222221
}).execute();
223222
}

0 commit comments

Comments
 (0)