From da4ed73ec6ab6e3a0da25dfc4fc98b7fb291adfe Mon Sep 17 00:00:00 2001 From: Mads Marquart Date: Wed, 28 Aug 2019 22:59:22 +0200 Subject: [PATCH] Remove models.py --- fbchat/__init__.py | 23 +++++++++++++++++++++-- fbchat/_client.py | 21 ++++++++++++++++++++- fbchat/models.py | 27 --------------------------- tests/conftest.py | 2 +- tests/test_base.py | 3 +-- tests/test_fetch.py | 2 +- tests/test_message_management.py | 2 +- tests/test_plans.py | 2 +- tests/test_polls.py | 2 +- tests/test_search.py | 2 +- tests/test_send.py | 2 +- tests/test_thread_interraction.py | 8 +------- tests/utils.py | 3 +-- 13 files changed, 51 insertions(+), 48 deletions(-) delete mode 100644 fbchat/models.py diff --git a/fbchat/__init__.py b/fbchat/__init__.py index 3c4df84..440dfa8 100644 --- a/fbchat/__init__.py +++ b/fbchat/__init__.py @@ -9,8 +9,27 @@ import logging as _logging # Set default logging handler to avoid "No handler found" warnings. _logging.getLogger(__name__).addHandler(_logging.NullHandler()) -# These imports are far too general, but they're needed for backwards compatbility. -from .models import * +# The order of these is somewhat significant, e.g. User has to be imported after Thread! +from . import _core, _util +from ._exception import FBchatException, FBchatFacebookError, FBchatUserError +from ._thread import ThreadType, ThreadLocation, ThreadColor, Thread +from ._user import TypingStatus, User, ActiveStatus +from ._group import Group, Room +from ._page import Page +from ._message import EmojiSize, MessageReaction, Mention, Message +from ._attachment import Attachment, UnsentMessage, ShareAttachment +from ._sticker import Sticker +from ._location import LocationAttachment, LiveLocationAttachment +from ._file import FileAttachment, AudioAttachment, ImageAttachment, VideoAttachment +from ._quick_reply import ( + QuickReply, + QuickReplyText, + QuickReplyLocation, + QuickReplyPhoneNumber, + QuickReplyEmail, +) +from ._poll import Poll, PollOption +from ._plan import GuestStatus, Plan from ._client import Client diff --git a/fbchat/_client.py b/fbchat/_client.py index 8a09377..0ce3621 100644 --- a/fbchat/_client.py +++ b/fbchat/_client.py @@ -5,7 +5,26 @@ from collections import OrderedDict from ._core import log from . import _util, _graphql, _state -from .models import * + +from ._exception import FBchatException, FBchatFacebookError, FBchatUserError +from ._thread import ThreadType, ThreadLocation, ThreadColor +from ._user import TypingStatus, User, ActiveStatus +from ._group import Group +from ._page import Page +from ._message import EmojiSize, MessageReaction, Mention, Message +from ._attachment import Attachment +from ._sticker import Sticker +from ._location import LocationAttachment, LiveLocationAttachment +from ._file import ImageAttachment, VideoAttachment +from ._quick_reply import ( + QuickReply, + QuickReplyText, + QuickReplyLocation, + QuickReplyPhoneNumber, + QuickReplyEmail, +) +from ._poll import Poll, PollOption +from ._plan import Plan ACONTEXT = { diff --git a/fbchat/models.py b/fbchat/models.py deleted file mode 100644 index 69bfd84..0000000 --- a/fbchat/models.py +++ /dev/null @@ -1,27 +0,0 @@ -"""This file is here to maintain backwards compatability, and to re-export our models -into the global module (see `__init__.py`). - -A common pattern was to use `from fbchat.models import *`, hence we need this while -transitioning to a better code structure. -""" - -from ._core import Enum -from ._exception import FBchatException, FBchatFacebookError, FBchatUserError -from ._thread import ThreadType, ThreadLocation, ThreadColor, Thread -from ._user import TypingStatus, User, ActiveStatus -from ._group import Group, Room -from ._page import Page -from ._message import EmojiSize, MessageReaction, Mention, Message -from ._attachment import Attachment, UnsentMessage, ShareAttachment -from ._sticker import Sticker -from ._location import LocationAttachment, LiveLocationAttachment -from ._file import FileAttachment, AudioAttachment, ImageAttachment, VideoAttachment -from ._quick_reply import ( - QuickReply, - QuickReplyText, - QuickReplyLocation, - QuickReplyPhoneNumber, - QuickReplyEmail, -) -from ._poll import Poll, PollOption -from ._plan import GuestStatus, Plan diff --git a/tests/conftest.py b/tests/conftest.py index 07d598b..53c4773 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -3,7 +3,7 @@ import json from utils import * from contextlib import contextmanager -from fbchat.models import ThreadType, Message, Mention +from fbchat import ThreadType, Message, Mention @pytest.fixture(scope="session") diff --git a/tests/test_base.py b/tests/test_base.py index 16ab01c..25aa94b 100644 --- a/tests/test_base.py +++ b/tests/test_base.py @@ -3,8 +3,7 @@ import py_compile from glob import glob from os import path, environ -from fbchat import Client -from fbchat.models import FBchatUserError, Message +from fbchat import FBchatUserError, Message, Client @pytest.mark.offline diff --git a/tests/test_fetch.py b/tests/test_fetch.py index 8515c3f..451d2b1 100644 --- a/tests/test_fetch.py +++ b/tests/test_fetch.py @@ -1,7 +1,7 @@ import pytest from os import path -from fbchat.models import ThreadType, Message, Mention, EmojiSize, Sticker +from fbchat import ThreadType, Message, Mention, EmojiSize, Sticker from utils import subset, STICKER_LIST, EMOJI_LIST diff --git a/tests/test_message_management.py b/tests/test_message_management.py index adde421..7a9a2a0 100644 --- a/tests/test_message_management.py +++ b/tests/test_message_management.py @@ -1,6 +1,6 @@ import pytest -from fbchat.models import Message, MessageReaction +from fbchat import Message, MessageReaction from utils import subset diff --git a/tests/test_plans.py b/tests/test_plans.py index 5388e6c..49815b6 100644 --- a/tests/test_plans.py +++ b/tests/test_plans.py @@ -1,6 +1,6 @@ import pytest -from fbchat.models import Plan, FBchatFacebookError, ThreadType +from fbchat import Plan, FBchatFacebookError, ThreadType from utils import random_hex, subset from time import time diff --git a/tests/test_polls.py b/tests/test_polls.py index daa6f1c..6fd05fd 100644 --- a/tests/test_polls.py +++ b/tests/test_polls.py @@ -1,6 +1,6 @@ import pytest -from fbchat.models import Poll, PollOption, ThreadType +from fbchat import Poll, PollOption, ThreadType from utils import random_hex, subset diff --git a/tests/test_search.py b/tests/test_search.py index 07cc88e..fabd5cb 100644 --- a/tests/test_search.py +++ b/tests/test_search.py @@ -1,4 +1,4 @@ -from fbchat.models import ThreadType +from fbchat import ThreadType def test_search_for(client1): diff --git a/tests/test_send.py b/tests/test_send.py index c45be33..e92192f 100644 --- a/tests/test_send.py +++ b/tests/test_send.py @@ -1,7 +1,7 @@ import pytest from os import path -from fbchat.models import FBchatFacebookError, Message, Mention +from fbchat import FBchatFacebookError, Message, Mention from utils import subset, STICKER_LIST, EMOJI_LIST, TEXT_LIST diff --git a/tests/test_thread_interraction.py b/tests/test_thread_interraction.py index b809c6d..6e426a3 100644 --- a/tests/test_thread_interraction.py +++ b/tests/test_thread_interraction.py @@ -1,12 +1,6 @@ import pytest -from fbchat.models import ( - Message, - ThreadType, - FBchatFacebookError, - TypingStatus, - ThreadColor, -) +from fbchat import Message, ThreadType, FBchatFacebookError, TypingStatus, ThreadColor from utils import random_hex, subset from os import path diff --git a/tests/utils.py b/tests/utils.py index 21bed11..440001c 100644 --- a/tests/utils.py +++ b/tests/utils.py @@ -5,8 +5,7 @@ import pytest from os import environ from random import randrange from contextlib import contextmanager -from fbchat import Client -from fbchat.models import ThreadType, EmojiSize, FBchatFacebookError, Sticker +from fbchat import ThreadType, EmojiSize, FBchatFacebookError, Sticker, Client log = logging.getLogger("fbchat.tests").addHandler(logging.NullHandler())