diff --git a/sqlalchemy_utils/__init__.py b/sqlalchemy_utils/__init__.py index 5110d16..f57977a 100644 --- a/sqlalchemy_utils/__init__.py +++ b/sqlalchemy_utils/__init__.py @@ -11,6 +11,7 @@ from .types import ( instrumented_list, InstrumentedList, IPAddressType, + Password, PasswordType, PhoneNumber, PhoneNumberType, diff --git a/sqlalchemy_utils/types/__init__.py b/sqlalchemy_utils/types/__init__.py index 49f6325..ada5c5a 100644 --- a/sqlalchemy_utils/types/__init__.py +++ b/sqlalchemy_utils/types/__init__.py @@ -10,7 +10,7 @@ from .number_range import ( NumberRangeRawType, NumberRangeType, ) -from .password import PasswordType +from .password import Password, PasswordType from .phone_number import PhoneNumber, PhoneNumberType from .scalar_list import ScalarListException, ScalarListType @@ -23,6 +23,7 @@ __all__ = ( NumberRangeException, NumberRangeRawType, NumberRangeType, + Password, PasswordType, PhoneNumber, PhoneNumberType, diff --git a/tests/test_password.py b/tests/test_password.py index 7dee13f..191b9c2 100644 --- a/tests/test_password.py +++ b/tests/test_password.py @@ -2,7 +2,7 @@ from pytest import mark import sqlalchemy as sa from tests import TestCase from sqlalchemy_utils.types import password -from sqlalchemy_utils import coercion_listener +from sqlalchemy_utils import Password, PasswordType, coercion_listener @mark.xfail('password.passlib is None') @@ -12,7 +12,7 @@ class TestPasswordType(TestCase): class User(self.Base): __tablename__ = 'user' id = sa.Column(sa.Integer, primary_key=True) - password = sa.Column(password.PasswordType( + password = sa.Column(PasswordType( schemes=[ 'pbkdf2_sha512', 'md5_crypt' @@ -63,7 +63,7 @@ class TestPasswordType(TestCase): from passlib.hash import md5_crypt obj = self.User() - obj.password = password.Password(md5_crypt.encrypt('b')) + obj.password = Password(md5_crypt.encrypt('b')) assert obj.password.raw.startswith('$1$') assert obj.password == 'b'