diff --git a/tests/__init__.py b/tests/__init__.py index 8fdebd6..5e7b6c9 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -1,6 +1,4 @@ from __future__ import absolute_import -from nose.tools import * -from mock import * import talon diff --git a/tests/html_quotations_test.py b/tests/html_quotations_test.py index 541d358..bdf8c6b 100644 --- a/tests/html_quotations_test.py +++ b/tests/html_quotations_test.py @@ -2,13 +2,11 @@ from __future__ import absolute_import -# noinspection PyUnresolvedReferences -import re - +from .fixtures import REPLY_QUOTATIONS_SHARE_BLOCK, OLK_SRC_BODY_SECTION, REPLY_SEPARATED_BY_HR +from nose.tools import eq_, ok_, assert_false, assert_true from talon import quotations, utils as u -from . import * -from .fixtures import * -from lxml import html +from mock import Mock, patch +import re RE_WHITESPACE = re.compile("\s") RE_DOUBLE_WHITESPACE = re.compile("\s") diff --git a/tests/quotations_test.py b/tests/quotations_test.py index e5ed041..2db8306 100644 --- a/tests/quotations_test.py +++ b/tests/quotations_test.py @@ -1,10 +1,10 @@ # -*- coding: utf-8 -*- from __future__ import absolute_import -from . import * -from . fixtures import * +from mock import Mock, patch from talon import quotations +from nose.tools import eq_ @patch.object(quotations, 'extract_from_html') diff --git a/tests/signature/bruteforce_test.py b/tests/signature/bruteforce_test.py index 382615b..f429396 100644 --- a/tests/signature/bruteforce_test.py +++ b/tests/signature/bruteforce_test.py @@ -1,9 +1,10 @@ # -*- coding: utf-8 -*- from __future__ import absolute_import -from .. import * +from nose.tools import eq_ from talon.signature import bruteforce +from mock import patch, Mock def test_empty_body(): diff --git a/tests/signature/extraction_test.py b/tests/signature/extraction_test.py index b942674..5805a8a 100644 --- a/tests/signature/extraction_test.py +++ b/tests/signature/extraction_test.py @@ -2,14 +2,14 @@ from __future__ import absolute_import -import os - -from six.moves import range - from talon.signature import bruteforce, extraction, extract from talon.signature import extraction as e from talon.signature.learning import dataset -from .. import * +from nose.tools import eq_ +from .. import STRIPPED, UNICODE_MSG +from six.moves import range +from mock import patch +import os def test_message_shorter_SIGNATURE_MAX_LINES(): diff --git a/tests/signature/learning/dataset_test.py b/tests/signature/learning/dataset_test.py index 8e15275..e1186ed 100644 --- a/tests/signature/learning/dataset_test.py +++ b/tests/signature/learning/dataset_test.py @@ -1,14 +1,13 @@ # -*- coding: utf-8 -*- from __future__ import absolute_import -from ... import * -import os - -from numpy import genfromtxt - -from talon.signature.learning import dataset as d +from ... import EML_MSG_FILENAME, MSG_FILENAME_WITH_BODY_SUFFIX, TMP_DIR, EMAILS_DIR from talon.signature.learning.featurespace import features +from talon.signature.learning import dataset as d +from nose.tools import eq_, assert_false, ok_ +from numpy import genfromtxt +import os def test_is_sender_filename(): diff --git a/tests/signature/learning/featurespace_test.py b/tests/signature/learning/featurespace_test.py index dd9f110..4f88d90 100644 --- a/tests/signature/learning/featurespace_test.py +++ b/tests/signature/learning/featurespace_test.py @@ -1,9 +1,10 @@ # -*- coding: utf-8 -*- from __future__ import absolute_import -from ... import * from talon.signature.learning import featurespace as fs +from nose.tools import eq_, assert_false, ok_ +from mock import patch def test_apply_features(): diff --git a/tests/signature/learning/helpers_test.py b/tests/signature/learning/helpers_test.py index d9e7b86..ef9794e 100644 --- a/tests/signature/learning/helpers_test.py +++ b/tests/signature/learning/helpers_test.py @@ -1,13 +1,13 @@ # -*- coding: utf-8 -*- from __future__ import absolute_import -from ... import * - -import regex as re from talon.signature.learning import helpers as h -from talon.signature.learning.helpers import * +from talon.signature.learning.helpers import RE_RELAX_PHONE, RE_NAME +from nose.tools import eq_, ok_, assert_false, assert_in +from mock import patch, Mock from six.moves import range +import re # First testing regex constants. VALID = ''' diff --git a/tests/text_quotations_test.py b/tests/text_quotations_test.py index 89a7974..f431c1e 100644 --- a/tests/text_quotations_test.py +++ b/tests/text_quotations_test.py @@ -1,16 +1,15 @@ # -*- coding: utf-8 -*- from __future__ import absolute_import -from . import * -from . fixtures import * -import os - -import email.iterators +from .fixtures import STANDARD_REPLIES from talon import quotations -import six from six.moves import range -from six import StringIO +from nose.tools import eq_ +from mock import patch +import email.iterators +import six +import os @patch.object(quotations, 'MAX_LINES_COUNT', 1) @@ -35,6 +34,7 @@ On 11-Apr-2011, at 6:54 PM, Roman Tkachenko wrote: eq_("Test reply", quotations.extract_from_plain(msg_body)) + def test_pattern_on_date_polymail(): msg_body = """Test reply @@ -190,14 +190,17 @@ Test""" eq_('Test reply', quotations.extract_from_plain( msg_body.format(six.text_type(original_message_indicator)))) + def test_english_original_message(): _check_pattern_original_message('Original Message') _check_pattern_original_message('Reply Message') + def test_german_original_message(): _check_pattern_original_message(u'Ursprüngliche Nachricht') _check_pattern_original_message('Antwort Nachricht') + def test_danish_original_message(): _check_pattern_original_message('Oprindelig meddelelse') @@ -296,6 +299,7 @@ On 04/19/2011 07:10 AM, Roman Tkachenko wrote: > Hello""" eq_("Hi", quotations.extract_from_plain(msg_body)) + def test_with_indent(): msg_body = """YOLO salvia cillum kogi typewriter mumblecore cardigan skateboard Austin. @@ -303,7 +307,8 @@ def test_with_indent(): Brunch mumblecore pug Marfa tofu, irure taxidermy hoodie readymade pariatur. """ - eq_("YOLO salvia cillum kogi typewriter mumblecore cardigan skateboard Austin.", quotations.extract_from_plain(msg_body)) + eq_("YOLO salvia cillum kogi typewriter mumblecore cardigan skateboard Austin.", + quotations.extract_from_plain(msg_body)) def test_short_quotation_with_newline(): @@ -343,6 +348,7 @@ Subject: The manager has commented on your Loop Blah-blah-blah """)) + def test_german_from_block(): eq_('Allo! Follow up MIME!', quotations.extract_from_plain( """Allo! Follow up MIME! @@ -355,6 +361,7 @@ Betreff: The manager has commented on your Loop Blah-blah-blah """)) + def test_french_multiline_from_block(): eq_('Lorem ipsum', quotations.extract_from_plain( u"""Lorem ipsum @@ -367,6 +374,7 @@ Objet : Follow Up Blah-blah-blah """)) + def test_french_from_block(): eq_('Lorem ipsum', quotations.extract_from_plain( u"""Lorem ipsum @@ -375,6 +383,7 @@ Le 23 janv. 2015 à 22:03, Brendan xxx het volgende g Small batch beard laboris tempor, non listicle hella Tumblr heirloom. """)) + def test_vietnamese_from_block(): eq_('Hello', quotations.extract_from_plain( u"""Hello @@ -442,6 +457,7 @@ Vào 14:24 8 tháng 6, 2017, Hùng Nguyễn đã viết: > Xin chào """)) + def test_quotation_marker_false_positive(): msg_body = """Visit us now for assistance... >>> >>> http://www.domain.com <<< diff --git a/tests/utils_test.py b/tests/utils_test.py index 7ba4b52..2468b6e 100644 --- a/tests/utils_test.py +++ b/tests/utils_test.py @@ -2,12 +2,13 @@ from __future__ import absolute_import + +from nose.tools import eq_, ok_, assert_false +from talon import utils as u +from mock import patch, Mock import cchardet import six -from talon import utils as u -from . import * - def test_get_delimiter(): eq_('\r\n', u.get_delimiter('abc\r\n123'))