diff --git a/briar-android/src/main/java/org/briarproject/briar/android/test/TestDataActivity.java b/briar-android/src/main/java/org/briarproject/briar/android/test/TestDataActivity.java index 375a9a4a495ae91a6469f364e9a4774f450e8140..fad48f249df13cae41dc012aa74f0099bdc98090 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/test/TestDataActivity.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/test/TestDataActivity.java @@ -23,8 +23,20 @@ public class TestDataActivity extends BriarActivity { @Inject TestDataCreator testDataCreator; - private TextView[] textViews = new TextView[5]; - private SeekBar[] seekBars = new SeekBar[5]; + private TextView contactsTextView; + private SeekBar contactsSeekBar; + + private TextView messagesTextView; + private SeekBar messagesSeekBar; + + private TextView blogPostsTextView; + private SeekBar blogPostsSeekBar; + + private TextView forumsTextView; + private SeekBar forumsSeekBar; + + private TextView forumPostsTextView; + private SeekBar forumPostsSeekBar; @Override public void onCreate(Bundle bundle) { @@ -37,45 +49,111 @@ public class TestDataActivity extends BriarActivity { } setContentView(R.layout.activity_test_data); - textViews[0] = findViewById(R.id.textViewContactsSb); - textViews[1] = findViewById(R.id.textViewMessagesSb); - textViews[2] = findViewById(R.id.TextViewBlogPostsSb); - textViews[3] = findViewById(R.id.TextViewForumsSb); - textViews[4] = findViewById(R.id.TextViewForumMessagesSb); - seekBars[0] = findViewById(R.id.seekBarContacts); - seekBars[1] = findViewById(R.id.seekBarMessages); - seekBars[2] = findViewById(R.id.seekBarBlogPosts); - seekBars[3] = findViewById(R.id.seekBarForums); - seekBars[4] = findViewById(R.id.seekBarForumMessages); - - for (int i = 0; i < 5; i++) { - final TextView textView = textViews[i]; - seekBars[i].setOnSeekBarChangeListener( - new OnSeekBarChangeListener() { - @Override - public void onProgressChanged(SeekBar seekBar, - int progress, boolean fromUser) { - textView.setText(String.valueOf(progress)); - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - } - }); - } + contactsTextView = findViewById(R.id.textViewContactsSb); + messagesTextView = findViewById(R.id.textViewMessagesSb); + blogPostsTextView = findViewById(R.id.TextViewBlogPostsSb); + forumsTextView = findViewById(R.id.TextViewForumsSb); + forumPostsTextView = findViewById(R.id.TextViewForumMessagesSb); + contactsSeekBar = findViewById(R.id.seekBarContacts); + messagesSeekBar = findViewById(R.id.seekBarMessages); + blogPostsSeekBar = findViewById(R.id.seekBarBlogPosts); + forumsSeekBar = findViewById(R.id.seekBarForums); + forumPostsSeekBar = findViewById(R.id.seekBarForumMessages); + + contactsSeekBar + .setOnSeekBarChangeListener(new OnSeekBarChangeListener() { + @Override + public void onProgressChanged(SeekBar seekBar, + int progress, boolean fromUser) { + contactsTextView.setText(String.valueOf(progress + 1)); + } + + @Override + public void onStartTrackingTouch(SeekBar seekBar) { + } + + @Override + public void onStopTrackingTouch(SeekBar seekBar) { + } + }); + + messagesSeekBar + .setOnSeekBarChangeListener(new OnSeekBarChangeListener() { + @Override + public void onProgressChanged(SeekBar seekBar, + int progress, boolean fromUser) { + messagesTextView.setText(String.valueOf(progress)); + } + + @Override + public void onStartTrackingTouch(SeekBar seekBar) { + } + + @Override + public void onStopTrackingTouch(SeekBar seekBar) { + } + }); + + blogPostsSeekBar + .setOnSeekBarChangeListener(new OnSeekBarChangeListener() { + @Override + public void onProgressChanged(SeekBar seekBar, + int progress, boolean fromUser) { + blogPostsTextView.setText(String.valueOf(progress)); + } + + @Override + public void onStartTrackingTouch(SeekBar seekBar) { + } + + @Override + public void onStopTrackingTouch(SeekBar seekBar) { + } + }); + + forumsSeekBar + .setOnSeekBarChangeListener(new OnSeekBarChangeListener() { + @Override + public void onProgressChanged(SeekBar seekBar, + int progress, boolean fromUser) { + forumsTextView.setText(String.valueOf(progress)); + forumPostsSeekBar.setEnabled(progress > 0); + } + + @Override + public void onStartTrackingTouch(SeekBar seekBar) { + } + + @Override + public void onStopTrackingTouch(SeekBar seekBar) { + } + }); + + forumPostsSeekBar + .setOnSeekBarChangeListener(new OnSeekBarChangeListener() { + @Override + public void onProgressChanged(SeekBar seekBar, + int progress, boolean fromUser) { + forumPostsTextView.setText(String.valueOf(progress)); + } + + @Override + public void onStartTrackingTouch(SeekBar seekBar) { + } + + @Override + public void onStopTrackingTouch(SeekBar seekBar) { + } + }); findViewById(R.id.buttonCreateTestData).setOnClickListener( v -> createTestData()); } private void createTestData() { - testDataCreator.createTestData(seekBars[0].getProgress(), - seekBars[1].getProgress(), seekBars[2].getProgress(), - seekBars[3].getProgress(), seekBars[4].getProgress()); + testDataCreator.createTestData(contactsSeekBar.getProgress() + 1, + messagesSeekBar.getProgress(), blogPostsSeekBar.getProgress(), + forumsSeekBar.getProgress(), forumPostsSeekBar.getProgress()); Intent intent = new Intent(this, NavDrawerActivity.class); intent.addFlags(FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent); diff --git a/briar-android/src/main/res/layout/activity_test_data.xml b/briar-android/src/main/res/layout/activity_test_data.xml index c0d6c68334499744fd3270823fb61995c331c6b3..18ce6ac856c32ea84b2de5c7faad380ee886890e 100644 --- a/briar-android/src/main/res/layout/activity_test_data.xml +++ b/briar-android/src/main/res/layout/activity_test_data.xml @@ -28,7 +28,7 @@ android:id="@+id/seekBarContacts" android:layout_width="0dp" android:layout_height="wrap_content" - android:max="50" + android:max="49" android:progress="20" app:layout_constraintEnd_toStartOf="@+id/textViewContactsSb" app:layout_constraintStart_toStartOf="parent" diff --git a/briar-api/src/main/java/org/briarproject/briar/api/test/TestDataCreator.java b/briar-api/src/main/java/org/briarproject/briar/api/test/TestDataCreator.java index 41ccb64341268564cbb30d0a20ff586554414541..fc210e5833baf22f27ba3330476c64fa4c8deca2 100644 --- a/briar-api/src/main/java/org/briarproject/briar/api/test/TestDataCreator.java +++ b/briar-api/src/main/java/org/briarproject/briar/api/test/TestDataCreator.java @@ -8,7 +8,7 @@ public interface TestDataCreator { /** * Create fake test data on the DatabaseExecutor * - * @param numContacts Number of contacts to create. + * @param numContacts Number of contacts to create. Must be >= 1 * @param numPrivateMsgs Number of private messages to create for each * contact. * @param numBlogPosts Number of blog posts to create. diff --git a/briar-core/src/main/java/org/briarproject/briar/test/TestDataCreatorImpl.java b/briar-core/src/main/java/org/briarproject/briar/test/TestDataCreatorImpl.java index a4f6ceb332c17a81980740206884598d55230a33..c89d05e1750d6636117259a17b50db55db1d0b21 100644 --- a/briar-core/src/main/java/org/briarproject/briar/test/TestDataCreatorImpl.java +++ b/briar-core/src/main/java/org/briarproject/briar/test/TestDataCreatorImpl.java @@ -115,6 +115,9 @@ public class TestDataCreatorImpl implements TestDataCreator { public void createTestData(int numContacts, int numPrivateMsgs, int numBlogPosts, int numForums, int numForumPosts) { + if (numContacts == 0) + throw new IllegalArgumentException( + "Number of contacts must be >= 1"); ioExecutor.execute(() -> { try { createTestDataOnIoExecutor(numContacts, numPrivateMsgs,