Beispiel #1
0
    def test_022_ChangePasswordSubmit(self):
        """Test that the change Password works correctly"""
        ts = now()

        prr = RegisteredUsers.models.PasswordResetRequest(user=self.user,
                                                          expiry=date.today() +
                                                          timedelta(days=1))
        prr.save()

        self.client.force_login(user=self.user)
        r = self.client.post(reverse('Dashboard:PasswordReset'),
                             data={
                                 'uuid': str(prr.uuid),
                                 'newPassword': '******',
                                 'confirmPassword': '******'
                             })
        self.assertTemplateUsed(r, "dashboard/pages/PasswordChange.html")
        self.assertTrue('confirmation' in r.context[-1])

        # Check that the PasswordResetRequest instance is deleted
        with self.assertRaises(ObjectDoesNotExist):
            RegisteredUsers.models.PasswordResetRequest.objects.get(
                uuid=prr.uuid)
        self.assertEqual(authenticate(username='******', password='******'),
                         self.user)

        # Check the Password change is recorded in the stats
        self.assertAlmostEqual(PageVisit.most_recent(
            document='Dashboard:PasswordReset', user=self.user).timestamp,
                               ts,
                               delta=timedelta(milliseconds=500))
Beispiel #2
0
 def test_012_privacy(self):
     ts = now()
     r = self.client.get(reverse('Privacy'))
     self.assertEqual(r.status_code, 200)
     self.assertEqual(r.resolver_match.func.__name__, views.privacy.__name__)
     self.assertEqual(r.templates[0].name, 'SuffolkCycleRide/pages/privacy.html')
     self.assertAlmostEqual(PageVisit.most_recent('Privacy').timestamp, ts, delta=timedelta(milliseconds=500))
Beispiel #3
0
 def test_010_ContactUsGet(self):
     ts = now()
     r = self.client.get(reverse('ContactUs'))
     self.assertEqual(r.status_code, 200)
     self.assertEqual(r.resolver_match.func.__name__, views.ContactUs.as_view().__name__)
     self.assertEqual(r.templates[0].name, 'base/SingleForm.html')
     self.assertAlmostEqual(PageVisit.most_recent('ContactUs').timestamp, ts, delta=timedelta(milliseconds=100))
 def test_011_SignInPost(self):
     """Test that Posting valid details to the SignIn page results in a correctly logged in user"""
     ts = now()
     r = self.client.post(reverse('User:SignIn'), data={'username': '******', 'password': '******'})
     self.assertEqual(r.resolver_match.func.__name__, views.SignIn.as_view().__name__)
     self.assertTrue(self.client.session['_auth_user_id'], self.chester.pk)
     self.assertRedirects(r, reverse('Dashboard:Home'))
     self.assertAlmostEqual(PageVisit.most_recent('User:SignIn').timestamp, ts, delta=timedelta(milliseconds=200))
 def test_010_SignOutNotSignedIn(self):
     """Sign Out when no-one is signed in - should not result in an error"""
     ts = now()
     self.assertFalse('_auth_user_id' in self.client.session)
     r = self.client.get(reverse('User:SignOut'))
     self.assertEqual(r.resolver_match.func.__name__, views.SignOut.__name__)
     self.assertRedirects(r, reverse('Home'))
     self.assertFalse('_auth_user_id' in self.client.session)
     self.assertTrue(PageVisit.most_recent(document='User:SignOut', user=None) is None)
 def test_011_SignOutOk(self):
     """Sign Out when user is signed in - must result in correct logout"""
     ts = now()
     self.assertTrue(self.client.login(username='******', password='******'))
     self.assertTrue(self.client.session['_auth_user_id'], self.chester.pk)
     response = self.client.get(reverse('User:SignOut'))
     self.assertRedirects(response, reverse('Home'))
     self.assertFalse('_auth_user_id' in self.client.session)
     self.assertAlmostEqual(PageVisit.most_recent('User:SignOut').timestamp, ts, delta=timedelta(milliseconds=200))
Beispiel #7
0
 def test_010_GetInvolvedGet(self):
     ts = now()
     r = self.client.get(reverse('GetInvolved'))
     self.assertEqual(r.status_code, 200)
     self.assertEqual(r.resolver_match.func.__name__, views.GetInvolved.as_view().__name__)
     self.assertEqual(r.templates[0].name, 'base/VerticalForm.html')
     # Issue 19 - Temporarily Disable Newsletter Capability
     # self.assertIsInstance(r.context[-1]['forms'][0]['form'], newsletter.forms.NewsletterSignUpForm)
     self.assertIsInstance(r.context[-1]['forms'][0]['form'], RegisteredUsers.forms.NewUserForm)
     self.assertAlmostEqual(PageVisit.most_recent('GetInvolved').timestamp, ts, delta=timedelta(milliseconds=100))
Beispiel #8
0
    def test_001_TestBasicAccess(self):
        ts = now()
        r = self.client.get( reverse('TheEvent'))
        self.assertEqual(r.status_code, 200)
        self.assertEqual(r.resolver_match.func, views.the_event)
        self.assertEqual(r.templates[0].name, 'SuffolkCycleRide/pages/theevent.html')
        self.assertAlmostEqual(PageVisit.most_recent('TheEvent').timestamp, ts, delta=timedelta(milliseconds=100))

        # Confirm that no legs are passed to the template
        self.assertInContext(response=r, attr_name = 'event.legs', expected=[])
 def test_010_SignOutNotSignedIn(self):
     """Sign Out when no-one is signed in - should not result in an error"""
     ts = now()
     self.assertFalse('_auth_user_id' in self.client.session)
     r = self.client.get(reverse('User:SignOut'))
     self.assertEqual(r.resolver_match.func.__name__,
                      views.SignOut.__name__)
     self.assertRedirects(r, reverse('Home'))
     self.assertFalse('_auth_user_id' in self.client.session)
     self.assertTrue(
         PageVisit.most_recent(document='User:SignOut', user=None) is None)
 def test_011_SignOutOk(self):
     """Sign Out when user is signed in - must result in correct logout"""
     ts = now()
     self.assertTrue(
         self.client.login(username='******',
                           password='******'))
     self.assertTrue(self.client.session['_auth_user_id'], self.chester.pk)
     response = self.client.get(reverse('User:SignOut'))
     self.assertRedirects(response, reverse('Home'))
     self.assertFalse('_auth_user_id' in self.client.session)
     self.assertAlmostEqual(PageVisit.most_recent('User:SignOut').timestamp,
                            ts,
                            delta=timedelta(milliseconds=200))
Beispiel #11
0
    def test_BasicAccess(self):
        """Prove that access is available to the FundMe page - even when not logged in"""
        ts = now()
        r = self.client.get( reverse('FundMe', kwargs={'username':self.user.username}))
        self.assertEqual(r.status_code, 200)
        self.assertEqual(r.resolver_match.func.__name__, views.fundme.__name__)
        self.assertEqual(r.templates[0].name, 'SuffolkCycleRide/pages/fundme.html')
        self.assertAlmostEqual(PageVisit.most_recent('FundMe', user=self.user).timestamp, ts, delta=timedelta(milliseconds=100))

        self.assertInContext(response=r, attr_name='cyclist', expected=self.cyclist)
        self.assertNotInContext(response=r, attr_name='mockup')

        # Prove that there is no site menu accessible on this page
        self.assertHTMLNotMatchSelector(r.content, 'ul.chevronbar')
 def test_011_SignInPost(self):
     """Test that Posting valid details to the SignIn page results in a correctly logged in user"""
     ts = now()
     r = self.client.post(reverse('User:SignIn'),
                          data={
                              'username': '******',
                              'password': '******'
                          })
     self.assertEqual(r.resolver_match.func.__name__,
                      views.SignIn.as_view().__name__)
     self.assertTrue(self.client.session['_auth_user_id'], self.chester.pk)
     self.assertRedirects(r, reverse('Dashboard:Home'))
     self.assertAlmostEqual(PageVisit.most_recent('User:SignIn').timestamp,
                            ts,
                            delta=timedelta(milliseconds=200))
Beispiel #13
0
    def test_002_TestEventList(self):
        self.create_legs()
        ts = now()
        r = self.client.get( reverse('TheEvent'))
        self.assertEqual(r.status_code, 200)
        self.assertEqual(r.resolver_match.func, views.the_event)
        self.assertEqual(r.templates[0].name, 'SuffolkCycleRide/pages/theevent.html')
        self.assertAlmostEqual(PageVisit.most_recent('TheEvent').timestamp, ts, delta=timedelta(milliseconds=100))

        # Test that the legs appear in the right order
        self.assertInContext(response=r, attr_name = 'event.legs', expected=self.legs)

        # Test the distance and start/end location appear
        st = BeautifulSoup(r.content, 'html5lib')
        summary = st.select('div.summary')[0].select('p')
        self.assertIn(self.legs[0].start, unicode(summary[0].text))
        self.assertIn(self.legs[-1].end, unicode(summary[0].text))
    def test_012_MyDetailsMainSubmit(self):
        """Test that the Details Page gets Posted Correctly - just change the email address for now"""
        ts = now()
        self.client.force_login(user=self.user)
        r = self.client.post(reverse('Dashboard:MyDetails'),
                             data={'email': '*****@*****.**',
                                   'submit': u'Save'})
        self.assertEqual(r.status_code, 200)
        self.assertEqual(r.resolver_match.func.__name__, views.MyDetails.__name__)
        self.assertTemplateUsed(r, "dashboard/pages/MyDetails.html")
        self.assertTrue('confirmation' in r.context[-1])

        # Test that the db has changed
        self.user.refresh_from_db()
        self.assertEqual(self.user.email, '*****@*****.**')

        # Test that the Page Visit has been recorded
        self.assertAlmostEqual(PageVisit.most_recent(document='Details Changed').timestamp, ts,
                               delta=timedelta(milliseconds=500))
    def test_022_ChangePasswordSubmit(self):
        """Test that the change Password works correctly"""
        ts = now()

        prr = RegisteredUsers.models.PasswordResetRequest(user=self.user, expiry=date.today() + timedelta(days=1))
        prr.save()

        self.client.force_login(user=self.user)
        r = self.client.post(reverse('Dashboard:PasswordReset'),
                             data={'uuid': str(prr.uuid), 'newPassword': '******', 'confirmPassword': '******'})
        self.assertTemplateUsed(r, "dashboard/pages/PasswordChange.html")
        self.assertTrue('confirmation' in r.context[-1])

        # Check that the PasswordResetRequest instance is deleted
        with self.assertRaises(ObjectDoesNotExist):
            RegisteredUsers.models.PasswordResetRequest.objects.get(uuid=prr.uuid)
        self.assertEqual(authenticate(username='******', password='******'), self.user)

        # Check the Password change is recorded in the stats
        self.assertAlmostEqual(PageVisit.most_recent(document='Dashboard:PasswordReset', user=self.user).timestamp, ts,
                               delta=timedelta(milliseconds=500))
Beispiel #16
0
    def test_012_MyDetailsMainSubmit(self):
        """Test that the Details Page gets Posted Correctly - just change the email address for now"""
        ts = now()
        self.client.force_login(user=self.user)
        r = self.client.post(reverse('Dashboard:MyDetails'),
                             data={
                                 'email': '*****@*****.**',
                                 'submit': u'Save'
                             })
        self.assertEqual(r.status_code, 200)
        self.assertEqual(r.resolver_match.func.__name__,
                         views.MyDetails.__name__)
        self.assertTemplateUsed(r, "dashboard/pages/MyDetails.html")
        self.assertTrue('confirmation' in r.context[-1])

        # Test that the db has changed
        self.user.refresh_from_db()
        self.assertEqual(self.user.email, '*****@*****.**')

        # Test that the Page Visit has been recorded
        self.assertAlmostEqual(
            PageVisit.most_recent(document='Details Changed').timestamp,
            ts,
            delta=timedelta(milliseconds=500))
Beispiel #17
0
 def test_004_basic_get_PageVisitStats(self):
     """Check that the Sponsorship Main page fetch is correctly record as a Visit"""
     ts = now()
     p = self.client.get(reverse('Sponsorship:Main'))
     self.assertAlmostEqual(
                 PageVisit.most_recent('Sponsorship:Main').timestamp, ts, delta=timedelta(milliseconds=50))
Beispiel #18
0
 def test_002_InterestPageGet_template(self):
     ts = now()
     p = self.client.get(reverse('Sponsorship:Interest', kwargs={'opportunity_slug':self.opp1.slug}))
     self.assertTemplateUsed(p, 'Sponsors/communicate.html')
     self.assertAlmostEqual( PageVisit.most_recent('Sponsorship:Interest').timestamp, ts, delta=timedelta(milliseconds=100) )
 def test_001_012_PageVisit(self):
     ts = now()
     p = self.client.get(reverse('Blog:Home'))
     self.assertAlmostEqual(PageVisit.most_recent('Blog:Home').timestamp, ts, delta=timedelta(milliseconds=60))
Beispiel #20
0
 def test_001_012_PageVisit(self):
     ts = now()
     p = self.client.get(reverse('Blog:Home'))
     self.assertAlmostEqual(PageVisit.most_recent('Blog:Home').timestamp,
                            ts,
                            delta=timedelta(milliseconds=60))