summaryrefslogtreecommitdiff
path: root/gentoobrowse-api/unittests
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2017-01-03 21:02:24 +0000
committerDan Goodliffe <dan@randomdan.homeip.net>2017-01-03 21:02:24 +0000
commitac9118638a6513d12cd0780f1846ff65a0d698a1 (patch)
tree9676d565290110207eab8970769fd3130e61a90f /gentoobrowse-api/unittests
parentIntroduce to mock mail server (diff)
downloadgentoobrowse-api-ac9118638a6513d12cd0780f1846ff65a0d698a1.tar.bz2
gentoobrowse-api-ac9118638a6513d12cd0780f1846ff65a0d698a1.tar.xz
gentoobrowse-api-ac9118638a6513d12cd0780f1846ff65a0d698a1.zip
Add fields/members/functions for storing a user's signup date and when they last received a mailshot
Diffstat (limited to 'gentoobrowse-api/unittests')
-rw-r--r--gentoobrowse-api/unittests/data.sql2
-rw-r--r--gentoobrowse-api/unittests/fixtures/users.dat4
-rw-r--r--gentoobrowse-api/unittests/testNotifications.cpp6
-rw-r--r--gentoobrowse-api/unittests/testUsers.cpp21
4 files changed, 27 insertions, 6 deletions
diff --git a/gentoobrowse-api/unittests/data.sql b/gentoobrowse-api/unittests/data.sql
index d1b70de..aedf5c6 100644
--- a/gentoobrowse-api/unittests/data.sql
+++ b/gentoobrowse-api/unittests/data.sql
@@ -26,7 +26,7 @@ COPY gentoobrowse.use_global (use, description) FROM '$SCRIPTDIR/fixtures/use_gl
COPY gentoobrowse.use_groups (usegroupid, name) FROM '$SCRIPTDIR/fixtures/use_groups.dat';
COPY gentoobrowse.use_group (usegroupid, use, description) FROM '$SCRIPTDIR/fixtures/use_group.dat';
COPY gentoobrowse.use_local (packageid, use, description) FROM '$SCRIPTDIR/fixtures/use_local.dat';
-COPY gentoobrowse.users (userid, username, userrealname, userpassword, useremail, verifyguid) FROM '$SCRIPTDIR/fixtures/users.dat';
+COPY gentoobrowse.users (userid, username, userrealname, userpassword, useremail, verifyguid, lastmailshot, signedup) FROM '$SCRIPTDIR/fixtures/users.dat';
COPY gentoobrowse.user_ebuild_emails (userid, ebuildid, sentat) FROM '$SCRIPTDIR/fixtures/user_ebuild_emails.dat';
COPY gentoobrowse.user_packages (userid, packageid, trackedsince) FROM '$SCRIPTDIR/fixtures/user_packages.dat';
COPY gentoobrowse.changelog (changeid, repoid, commitid, committime, authorname, authoremail, summary, body, files) FROM '$SCRIPTDIR/fixtures/changelog.dat';
diff --git a/gentoobrowse-api/unittests/fixtures/users.dat b/gentoobrowse-api/unittests/fixtures/users.dat
index a1f60e5..cbc63fb 100644
--- a/gentoobrowse-api/unittests/fixtures/users.dat
+++ b/gentoobrowse-api/unittests/fixtures/users.dat
@@ -1,2 +1,2 @@
-1 randomdan Dan Goodliffe p@55w0rd dan@randomdan.homeip.net \N
-2 unverified Dan Goodliffe p@55w0rd something@randomdan.homeip.net a24eb4fa-8a42-11e6-a04e-c86000a60e12
+1 randomdan Dan Goodliffe p@55w0rd dan@randomdan.homeip.net \N \N 2015-10-01T12:13:14
+2 unverified Dan Goodliffe p@55w0rd something@randomdan.homeip.net a24eb4fa-8a42-11e6-a04e-c86000a60e12 \N 2015-10-01T12:13:14
diff --git a/gentoobrowse-api/unittests/testNotifications.cpp b/gentoobrowse-api/unittests/testNotifications.cpp
index 21a76a5..15d62ea 100644
--- a/gentoobrowse-api/unittests/testNotifications.cpp
+++ b/gentoobrowse-api/unittests/testNotifications.cpp
@@ -41,7 +41,7 @@ commonAssert(Gentoo::EmailPtr e)
BOOST_AUTO_TEST_CASE( testSend )
{
- Gentoo::NewUserPtr u = new Gentoo::NewUser(1, "testuser", "Test User", "noone@randomdan.homeip.net", "some-guid");
+ Gentoo::NewUserPtr u = new Gentoo::NewUser(1, "testuser", "Test User", "noone@randomdan.homeip.net", "2017-10-01T12:34:56", IceUtil::None, "some-guid");
auto e = n->getSignup(u);
BOOST_REQUIRE(e);
ms->sendEmail(e);
@@ -49,7 +49,7 @@ BOOST_AUTO_TEST_CASE( testSend )
BOOST_AUTO_TEST_CASE( testSignup )
{
- Gentoo::NewUserPtr u = new Gentoo::NewUser(1, "testuser", "Test User", "test@user.com", "some-guid");
+ Gentoo::NewUserPtr u = new Gentoo::NewUser(1, "testuser", "Test User", "test@user.com", "2017-10-01T12:34:56", IceUtil::None, "some-guid");
auto e = n->getSignup(u);
BOOST_REQUIRE(e);
BOOST_REQUIRE_EQUAL(e->subject, "Gentoo Browse: Welcome");
@@ -68,7 +68,7 @@ BOOST_AUTO_TEST_CASE( testSignup )
BOOST_AUTO_TEST_CASE( testNews )
{
- Gentoo::UserPtr u = new Gentoo::User(1, "testuser", "Test User", "test@user.com");
+ Gentoo::UserPtr u = new Gentoo::User(1, "testuser", "Test User", "test@user.com", "2017-10-01T12:34:56", IceUtil::None);
Gentoo::NewsContent nc {
{
new Gentoo::Category(1, "app-test", "Test cat1"),
diff --git a/gentoobrowse-api/unittests/testUsers.cpp b/gentoobrowse-api/unittests/testUsers.cpp
index a4567f3..e515b77 100644
--- a/gentoobrowse-api/unittests/testUsers.cpp
+++ b/gentoobrowse-api/unittests/testUsers.cpp
@@ -48,6 +48,8 @@ BOOST_AUTO_TEST_CASE( create )
BOOST_REQUIRE_EQUAL("testuser", user->username);
BOOST_REQUIRE_EQUAL("Test User", user->userrealname);
BOOST_REQUIRE_EQUAL("test@user.com", user->useremail);
+ BOOST_REQUIRE(user->signedup.length() > 19);
+ BOOST_REQUIRE(!user->lastmailshot);
BOOST_REQUIRE_EQUAL(36, user->verifyguid.length());
auto verified = u->verify(user->username, user->verifyguid);
BOOST_REQUIRE(verified);
@@ -60,6 +62,25 @@ BOOST_AUTO_TEST_CASE( get )
BOOST_REQUIRE_EQUAL("testuser", user->username);
BOOST_REQUIRE_EQUAL("Test User", user->userrealname);
BOOST_REQUIRE_EQUAL("test@user.com", user->useremail);
+ BOOST_REQUIRE(user->signedup.length() > 19);
+ BOOST_REQUIRE(!user->lastmailshot);
+}
+
+BOOST_AUTO_TEST_CASE( sendmailshot )
+{
+ auto user = u->get(3);
+ BOOST_REQUIRE(user);
+ BOOST_REQUIRE(!user->lastmailshot);
+ u->mailshotsent(3);
+ user = u->get(3);
+ BOOST_REQUIRE(user);
+ BOOST_REQUIRE_EQUAL(3, user->userid);
+ BOOST_REQUIRE_EQUAL("testuser", user->username);
+ BOOST_REQUIRE_EQUAL("Test User", user->userrealname);
+ BOOST_REQUIRE_EQUAL("test@user.com", user->useremail);
+ BOOST_REQUIRE(user->signedup.length() > 19);
+ BOOST_REQUIRE(user->lastmailshot);
+ BOOST_REQUIRE(user->lastmailshot->length() > 19);
}
BOOST_AUTO_TEST_CASE( getMissing )