diff --git a/app/src/main/java/org/gnucash/android/ui/transaction/TransactionFormFragment.java b/app/src/main/java/org/gnucash/android/ui/transaction/TransactionFormFragment.java index ba36be527..0408d663c 100644 --- a/app/src/main/java/org/gnucash/android/ui/transaction/TransactionFormFragment.java +++ b/app/src/main/java/org/gnucash/android/ui/transaction/TransactionFormFragment.java @@ -742,8 +742,14 @@ public boolean onOptionsItemSelected(MenuItem item) { } else if (mAmountEditText.getText().length() == 0) { Toast.makeText(getActivity(), R.string.toast_transanction_amount_required, Toast.LENGTH_SHORT).show(); - } else - saveNewTransaction(); + } else if (mUseDoubleEntry && mDoubleAccountSpinner.getCount() == 0){ + //TODO: Or automatically create an imbalance account + Toast.makeText(getActivity(), + "Create & specify a transfer account OR disable double-entry in settings to save the transaction", + Toast.LENGTH_LONG).show(); + } else { + saveNewTransaction(); + } return true; default: diff --git a/integration-tests/src/main/java/org/gnucash/android/test/ui/TransactionsActivityTest.java b/integration-tests/src/main/java/org/gnucash/android/test/ui/TransactionsActivityTest.java index 34cadf8ec..5ad713caf 100644 --- a/integration-tests/src/main/java/org/gnucash/android/test/ui/TransactionsActivityTest.java +++ b/integration-tests/src/main/java/org/gnucash/android/test/ui/TransactionsActivityTest.java @@ -188,7 +188,9 @@ private void validateEditTransactionFields(Transaction transaction){ actualValue = timeView.getText().toString();// mSolo.getText(7).getText().toString(); assertEquals(expectedValue, actualValue); } - + + //TODO: Add test for only one account but with double-entry enabled + public void testAddTransaction(){ setDoubleEntryEnabled(true); mSolo.waitForText(TRANSACTION_NAME);