summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukas Fleischer <lfleischer@archlinux.org>2016-09-29 22:04:54 +0200
committerLukas Fleischer <lfleischer@archlinux.org>2016-09-29 22:07:53 +0200
commitbc3a4f348d8d73821a80a8033c48e7e1eb020e5c (patch)
tree592fad5f77bc8af2b5d6f3c2a34677e919feab7d
parenteb367d97e28d157036c1bf4f1ee65b0d17d756ea (diff)
t2200: Check that only non-voters get reminders
Add a test to make sure that Trusted Users, who already voted on a proposal, do not receive any reminders. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
-rw-r--r--test/setup.sh3
-rwxr-xr-xtest/t2200-tuvotereminder.sh28
2 files changed, 31 insertions, 0 deletions
diff --git a/test/setup.sh b/test/setup.sh
index cd42479..dc9cff2 100644
--- a/test/setup.sh
+++ b/test/setup.sh
@@ -115,6 +115,9 @@ echo "INSERT INTO Users (ID, UserName, Passwd, Email, AccountTypeID) VALUES (3,
echo "INSERT INTO Users (ID, UserName, Passwd, Email, AccountTypeID) VALUES (4, 'user2', '!', 'user2@localhost', 1);" | sqlite3 aur.db
echo "INSERT INTO Users (ID, UserName, Passwd, Email, AccountTypeID) VALUES (5, 'user3', '!', 'user3@localhost', 1);" | sqlite3 aur.db
echo "INSERT INTO Users (ID, UserName, Passwd, Email, AccountTypeID) VALUES (6, 'user4', '!', 'user4@localhost', 1);" | sqlite3 aur.db
+echo "INSERT INTO Users (ID, UserName, Passwd, Email, AccountTypeID) VALUES (7, 'tu2', '!', 'tu2@localhost', 2);" | sqlite3 aur.db
+echo "INSERT INTO Users (ID, UserName, Passwd, Email, AccountTypeID) VALUES (8, 'tu3', '!', 'tu3@localhost', 2);" | sqlite3 aur.db
+echo "INSERT INTO Users (ID, UserName, Passwd, Email, AccountTypeID) VALUES (9, 'tu4', '!', 'tu4@localhost', 2);" | sqlite3 aur.db
echo "INSERT INTO SSHPubKeys (UserID, Fingerprint, PubKey) VALUES (1, '$AUTH_FINGERPRINT_USER', '$AUTH_KEYTYPE_USER $AUTH_KEYTEXT_USER');" | sqlite3 aur.db
echo "INSERT INTO SSHPubKeys (UserID, Fingerprint, PubKey) VALUES (2, '$AUTH_FINGERPRINT_TU', '$AUTH_KEYTYPE_TU $AUTH_KEYTEXT_TU');" | sqlite3 aur.db
diff --git a/test/t2200-tuvotereminder.sh b/test/t2200-tuvotereminder.sh
index 8477c92..c82ce87 100755
--- a/test/t2200-tuvotereminder.sh
+++ b/test/t2200-tuvotereminder.sh
@@ -22,4 +22,32 @@ test_expect_success 'Test Trusted User vote reminders.' '
test_must_fail grep -q "Proposal 4" sendmail.out
'
+test_expect_success 'Check that only TUs who did not vote receive reminders.' '
+ cat <<-EOD | sqlite3 aur.db &&
+ INSERT INTO TU_Votes (VoteID, UserID) VALUES (1, 2);
+ INSERT INTO TU_Votes (VoteID, UserID) VALUES (2, 2);
+ INSERT INTO TU_Votes (VoteID, UserID) VALUES (3, 2);
+ INSERT INTO TU_Votes (VoteID, UserID) VALUES (4, 2);
+ INSERT INTO TU_Votes (VoteID, UserID) VALUES (1, 7);
+ INSERT INTO TU_Votes (VoteID, UserID) VALUES (3, 7);
+ INSERT INTO TU_Votes (VoteID, UserID) VALUES (2, 8);
+ INSERT INTO TU_Votes (VoteID, UserID) VALUES (4, 8);
+ INSERT INTO TU_Votes (VoteID, UserID) VALUES (1, 9);
+ EOD
+ >sendmail.out &&
+ "$TUVOTEREMINDER" &&
+ cat <<-EOD >expected &&
+ Subject: TU Vote Reminder: Proposal 2
+ To: tu2@localhost
+ Subject: TU Vote Reminder: Proposal 2
+ To: tu4@localhost
+ Subject: TU Vote Reminder: Proposal 3
+ To: tu3@localhost
+ Subject: TU Vote Reminder: Proposal 3
+ To: tu4@localhost
+ EOD
+ grep "^\(Subject\|To\)" sendmail.out >sendmail.parts &&
+ test_cmp sendmail.parts expected
+'
+
test_done