Example #1
0
    def test_success(self):
        site = mommy.make_one(Site)
        user = mommy.make_one(MainUser)
        ndb.put_multi([site, user])
        create_login = CreateLogin(user, site, 'hook')
        create_login.execute()
        login = create_login.result
        self.assertIsNotNone(login)
        self.assertEqual(LOGIN_CALL, login.status)
        self.assertEqual('hook', login.hook)
        db_login = Login.query().get()
        self.assertEqual(db_login.key, login.key)


        def neighbor(cls):
            DestinationsSearch.arc_class = cls
            search = DestinationsSearch(login)
            search.execute()
            self.assertEqual(1, len(search.result), cls)
            return search.result[0]

        n_user = neighbor(LoginUser)
        self.assertEqual(n_user.key, user.key)

        n_site = neighbor(LoginSite)
        self.assertEqual(n_site.key, site.key)

        login_status = neighbor(LoginStatusArc)
        self.assertEqual(LOGIN_CALL, login_status.label)
Example #2
0
    def test_success(self):
        site = mommy.make_one(Site)
        user = mommy.make_one(MainUser)
        ndb.put_multi([site, user])
        create_login = CreateLogin(user, site, 'hook')
        create_login.execute()
        login = create_login.result
        self.assertIsNotNone(login)
        self.assertEqual(LOGIN_CALL, login.status)
        self.assertEqual('hook', login.hook)
        db_login = Login.query().get()
        self.assertEqual(db_login.key, login.key)

        def neighbor(cls):
            DestinationsSearch.arc_class = cls
            search = DestinationsSearch(login)
            search.execute()
            self.assertEqual(1, len(search.result), cls)
            return search.result[0]

        n_user = neighbor(LoginUser)
        self.assertEqual(n_user.key, user.key)

        n_site = neighbor(LoginSite)
        self.assertEqual(n_site.key, site.key)

        login_status = neighbor(LoginStatusArc)
        self.assertEqual(LOGIN_CALL, login_status.label)
Example #3
0
 def test_spam(self):
     site = mommy.make_one(Site, domain='www.pswd.com')
     user = mommy.make_one(MainUser)
     ndb.put_multi([site, user])
     create_login = CreateLogin(user, site, 'hook')
     create_login.execute()
     # time.sleep(3)  # giving time because eventual consistency
     validate_cmd = ValidateLoginCall(site.key.id(), site.token, 'http://www.pswd.com/pswdless',
         user.key.id())
     self.assertRaises(CommandExecutionException, validate_cmd.execute)
     self.assertDictEqual({'spam': 'Spam not allowed'}, validate_cmd.errors)
Example #4
0
 def test_spam(self):
     site = mommy.make_one(Site, domain='www.pswd.com')
     user = mommy.make_one(MainUser)
     ndb.put_multi([site, user])
     create_login = CreateLogin(user, site, 'hook')
     create_login.execute()
     # time.sleep(3)  # giving time because eventual consistency
     validate_cmd = ValidateLoginCall(site.key.id(), site.token,
                                      'http://www.pswd.com/pswdless',
                                      user.key.id())
     self.assertRaises(CommandExecutionException, validate_cmd.execute)
     self.assertDictEqual({'spam': 'Spam not allowed'}, validate_cmd.errors)
Example #5
0
 def _assert_succes_with_status(self, status):
     site = mommy.make_one(Site, domain='www.pswd.com')
     user = mommy.make_one(MainUser)
     ndb.put_multi([site, user])
     create_login = CreateLogin(user, site, 'hook')
     create_login.execute()
     lg = Login.query().get()
     lg.status = status
     lg.put()
     validate_cmd = ValidateLoginCall(site.key.id(), site.token, 'http://www.pswd.com/pswdless',
         user.key.id())
     validate_cmd.execute()
     self.assertDictEqual({}, validate_cmd.errors)
Example #6
0
 def _assert_succes_with_status(self, status):
     site = mommy.make_one(Site, domain='www.pswd.com')
     user = mommy.make_one(MainUser)
     ndb.put_multi([site, user])
     create_login = CreateLogin(user, site, 'hook')
     create_login.execute()
     lg = Login.query().get()
     lg.status = status
     lg.put()
     validate_cmd = ValidateLoginCall(site.key.id(), site.token,
                                      'http://www.pswd.com/pswdless',
                                      user.key.id())
     validate_cmd.execute()
     self.assertDictEqual({}, validate_cmd.errors)
Example #7
0
    def test_success_after_one_hour(self):
        site = mommy.make_one(Site, domain='www.pswd.com')
        user = mommy.make_one(MainUser)
        ndb.put_multi([site, user])
        create_login = CreateLogin(user, site, 'hook')

        create_login.execute()
        lg = Login.query().get()
        lg.creation = datetime.now() - timedelta(hours=1, minutes=1)
        lg.put()

        validate_cmd = ValidateLoginCall(site.key.id(), site.token, 'http://www.pswd.com/pswdless',
            user.key.id())
        validate_cmd.execute()
        self.assertDictEqual({}, validate_cmd.errors)
Example #8
0
    def test_success_after_one_hour(self):
        site = mommy.make_one(Site, domain='www.pswd.com')
        user = mommy.make_one(MainUser)
        ndb.put_multi([site, user])
        create_login = CreateLogin(user, site, 'hook')

        create_login.execute()
        lg = Login.query().get()
        lg.creation = datetime.now() - timedelta(hours=1, minutes=1)
        lg.put()

        validate_cmd = ValidateLoginCall(site.key.id(), site.token,
                                         'http://www.pswd.com/pswdless',
                                         user.key.id())
        validate_cmd.execute()
        self.assertDictEqual({}, validate_cmd.errors)