コード例 #1
0
 def test_password_setter(self):
     with self.assertRaises(ValueError):
         u = User(username=self.test_username, password="******" * 5)
     with self.assertRaises(ValueError):
         u = User(username=self.test_username, password="******" * 32)
     u = User(username=self.test_username, password=self.test_user_password)
     self.assertIsNotNone(u._password_hash)
コード例 #2
0
 def test_pushover_getter(self, mocked_PushoverAPI):
     u = User(username=self.test_username, password=self.test_user_password)
     with self.assertRaises(ServiceNotAuth):
         u.pushover
     mocked_PushoverAPI.return_value.validate.return_value = {"status": 1}
     u.pushover = self.test_pushover_key
     self.assertIsNotNone(u._pushover_key)
     self.assertEqual(u.pushover, self.test_pushover_key)
     self.assertEqual(u.pushover, u._pushover_key)
コード例 #3
0
 def test_pushover_setter(self, mocked_PushoverAPI):
     u = User(username=self.test_username, password=self.test_user_password)
     mocked_PushoverAPI.return_value.validate.return_value = {"status": -1}
     with self.assertRaises(InvalidAction):
         u.pushover = self.test_pushover_key
     self.assertIsNone(u._pushover_key)
     mocked_PushoverAPI.return_value.validate.return_value = {"status": 1}
     u.pushover = self.test_pushover_key
     self.assertIsNotNone(u._pushover_key)
     self.assertEqual(u.pushover, self.test_pushover_key)
コード例 #4
0
 def setUp(self):
     self.app = create_app("testing")
     self.app_context = self.app.app_context()
     self.app_context.push()
     db.create_all()
     self.client = self.app.test_client(use_cookies=True)
     self.client_username = "******"
     self.client_user_password = "******"
     self.test_channel_ids = [f"test_channel_id_{i}" for i in range(10)]
     db.session.add(User(self.client_username, self.client_user_password))
     db.session.commit()
コード例 #5
0
ファイル: test_channel.py プロジェクト: deeptube/Tubee
 def setUp(self):
     self.app = create_app("testing")
     self.app_context = self.app.app_context()
     self.app_context.push()
     db.create_all()
     self.client = self.app.test_client(use_cookies=True)
     self.client_username = "******"
     self.client_user_password = "******"
     self.test_channel_id = "UCBR8-60-B28hp2BmDPdntcQ"
     db.session.add(User(self.client_username, self.client_user_password))
     db.session.commit()
コード例 #6
0
    def test_subscribe_to(self, mocked_channel, mocked_is_subscribing,
                          mocked_subscription):
        u = User(username=self.test_username, password=self.test_user_password)

        mocked_channel.query.get.return_value = mock.MagicMock(
            id=self.test_channel_id)
        mocked_is_subscribing.return_value = True
        with self.assertRaises(InvalidAction):
            u.subscribe_to(self.test_channel_id)

        mocked_channel.query.get.return_value = None
        mocked_is_subscribing.return_value = False
        u.subscribe_to(self.test_channel_id)
        mocked_channel.assert_called()
コード例 #7
0
ファイル: test_user.py プロジェクト: tomy0000000/Tubee
    def test_user_login_logout(self):
        db.session.add(User(self.client_username, self.client_password))
        db.session.commit()

        # Test DataRequired validator
        response = self.client.post(
            "/user/login",
            data={
                "username": "",
                "password": ""
            },
            follow_redirects=True,
        )
        self.assertEqual(response.status_code, 200)
        self.assertEqual(
            response.get_data(as_text=True).count("This field is required."),
            2)

        # Test Bad Login
        response = self.client.post(
            "/user/login",
            data={
                "username": self.client_username,
                "password": "******"
            },
            follow_redirects=True,
        )
        self.assertEqual(response.status_code, 200)
        self.assertIn("Login</title>", response.get_data(as_text=True))
        self.assertIn("Invalid username or password.",
                      response.get_data(as_text=True))

        # Test Full Login Topology and redirect to Dashboard
        response = self.client.post(
            "/user/login",
            data={
                "username": self.client_username,
                "password": self.client_password
            },
            follow_redirects=True,
        )
        self.assertEqual(response.status_code, 200)
        self.assertIn("Subscriptions</title>", response.get_data(as_text=True))
        self.assertIn(self.client_username, response.get_data(as_text=True))

        # Test redirect logined user to Dashboard
        response = self.client.get("/user/login", follow_redirects=True)
        self.assertEqual(response.status_code, 200)
        self.assertIn("Subscriptions</title>", response.get_data(as_text=True))
        self.assertIn("You&#39;ve already logined!",
                      response.get_data(as_text=True))

        # Logout and redirect to Login
        response = self.client.get("/user/logout", follow_redirects=True)
        self.assertEqual(response.status_code, 200)
        self.assertIn("Login</title>", response.get_data(as_text=True))
        self.assertIn("You&#39;ve Logged Out", response.get_data(as_text=True))

        # Test Full Login Topology and redirect to pre-defined redirected URL
        response = self.client.get("/user/setting", follow_redirects=True)
        self.assertIn(login_manager.login_message,
                      response.get_data(as_text=True))
        response = self.client.post(
            "/user/login?next=%2Fuser%2Fsetting",
            data={
                "username": self.client_username,
                "password": self.client_password
            },
            follow_redirects=True,
        )
        self.assertEqual(response.status_code, 200)
        self.assertIn("Setting</title>", response.get_data(as_text=True))
        self.assertIn(self.client_username, response.get_data(as_text=True))
コード例 #8
0
 def test_pushover_deleter(self, mocked_PushoverAPI):
     u = User(username=self.test_username, password=self.test_user_password)
     mocked_PushoverAPI.return_value.validate.return_value = {"status": 1}
     u.pushover = self.test_pushover_key
     self.assertIsNotNone(u._pushover_key)
     self.assertEqual(u.pushover, self.test_pushover_key)
コード例 #9
0
 def test_check_password(self):
     u = User(username=self.test_username, password=self.test_user_password)
     self.assertTrue(u.check_password(self.test_user_password))
     self.assertFalse(u.check_password("*"))
コード例 #10
0
 def test_password_getter(self):
     u = User(username=self.test_username, password=self.test_user_password)
     with self.assertRaises(AttributeError):
         u.password
コード例 #11
0
 def test_user_mixins(self):
     u = User(username=self.test_username, password=self.test_user_password)
     self.assertIs(u.is_authenticated, True)
     self.assertIs(u.is_active, True)
     self.assertIs(u.is_anonymous, False)
     self.assertEqual(u.get_id(), self.test_username)