Example #1
0
 def setUp(self):
     self.person = Personal(LANG)
Example #2
0
class PersonalTestCase(TestCase):
    def setUp(self):
        self.person = Personal(LANG)

    def tearDown(self):
        del self.person

    def test_age(self):
        result = self.person.age(maximum=55)
        self.assertTrue(result <= 55)

    def test_name(self):
        result = self.person.name()
        parent_file = pull('f_names', self.person.lang)
        self.assertIn(result + '\n', parent_file)

        result = self.person.name('m')
        parent_file = pull('m_names', self.person.lang)
        self.assertIn(result + '\n', parent_file)

    def test_telephone(self):
        result = self.person.telephone()
        self.assertTrue(len(result) >= 11)

        mask = '+5 (###)-###-##-##'
        result2 = self.person.telephone(mask=mask)
        head = result2.split(' ')[0]
        self.assertEqual(head, '+5')

    def test_surname(self):
        if self.person.lang == 'ru':
            result = self.person.surname('f')
            parent_file = pull('f_surnames', self.person.lang)
            self.assertIn(result + '\n', parent_file)

            result = self.person.surname('m')
            parent_file = pull('m_surnames', self.person.lang)
            self.assertIn(result + '\n', parent_file)
        else:
            result = self.person.surname()
            parent_file = pull('surnames', self.person.lang)
            self.assertIn(result + '\n', parent_file)

    def test_full_name(self):
        result = self.person.full_name('f')
        _result = result.split(' ')
        self.assertEqual(len(_result), 2)

    def test_username(self):
        result = self.person.username()
        self.assertTrue(re.match(r'^[a-zA-Z0-9_.-]+$', result))

        result = self.person.username('f')
        self.assertTrue(re.match(r'^[a-zA-Z0-9_.-]+$', result))

    def test_twitter(self):
        result = self.person.twitter('f')
        self.assertIsNotNone(result)

        _result = self.person.twitter('m')
        self.assertIsNotNone(_result)

    def test_facebook(self):
        result = self.person.facebook('f')
        self.assertIsNotNone(result)

        _result = self.person.facebook('m')
        self.assertIsNotNone(_result)

    def test_wmid(self):
        result = self.person.wmid()
        self.assertEqual(len(result), 12)

    def test_paypal(self):
        result = self.person.paypal()
        self.assertIsNotNone(result)

    def test_yandex_money(self):
        result = self.person.yandex_money()
        self.assertEqual(len(result), 14)

    def test_password(self):
        plain = self.person.password(length=15)
        self.assertEqual(len(plain), 15)

        md5 = self.person.password(algorithm='md5')
        self.assertEqual(len(md5), 32)

        sha1 = self.person.password(algorithm='sha1')
        self.assertEqual(len(sha1), 40)

        sha256 = self.person.password(algorithm='sha256')
        self.assertEqual(len(sha256), 64)

        sha512 = self.person.password(algorithm='sha512')
        self.assertEqual(len(sha512), 128)

    def test_email(self):
        result = self.person.email()
        self.assertTrue(
            re.match(r"(^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$)",
                     result))

    def test_home_page(self):
        result = self.person.home_page()
        self.assertTrue(
            re.match(
                r'http[s]?://(?:[a-zA-Z]|[0-9]|'
                r'[$-_@.&+]|[!*\(\),]|'
                r'(?:%[0-9a-fA-F][0-9a-fA-F]))+', result))

    def test_subreddit(self):
        result = self.person.subreddit()
        self.assertIn(result, common.SUBREDDITS)

        full_result = self.person.subreddit(full_url=True)
        self.assertTrue(len(full_result) > 20)

        result_nsfw = self.person.subreddit(nsfw=True)
        self.assertIn(result_nsfw, common.SUBREDDITS_NSFW)

        full_result = self.person.subreddit(nsfw=True, full_url=True)
        self.assertTrue(len(full_result) > 20)

    def test_bitcoin(self):
        result = self.person.bitcoin()
        self.assertEqual(len(result), 34)

    def test_cvv(self):
        result = self.person.cvv()
        self.assertTrue((100 <= result) and (result <= 999))

    def test_credit_card_number(self):
        result = self.person.credit_card_number()
        self.assertTrue(re.match(r'[\d]+((-|\s)?[\d]+)+', result))

    def test_expiration_date(self):
        result = self.person.credit_card_expiration_date(mi=16, mx=25)
        year = result.split('/')[1]
        self.assertTrue((int(year) >= 16) and (int(year) <= 25))

    def test_cid(self):
        result = self.person.cid()
        self.assertTrue((1000 <= result) and (result <= 9999))

    def test_gender(self):
        result = self.person.gender() + '\n'
        self.assertIn(result, pull('gender', self.person.lang))

        result_abbr = self.person.gender(abbr=True) + '\n'
        self.assertEqual(len(result_abbr), 2)

    def test_height(self):
        result = self.person.height(from_=1.60, to_=1.90)
        self.assertTrue(result.startswith('1'))
        self.assertIsInstance(result, str)

    def test_weight(self):
        result = self.person.weight(from_=40, to_=60)
        self.assertTrue((result >= 40) and (result <= 60))

    def test_blood_type(self):
        result = self.person.blood_type()
        self.assertIn(result, common.BLOOD_GROUPS)

    def test_sexual_orientation(self):
        result = self.person.sexual_orientation()
        parent_file = pull('sexuality', self.person.lang)
        self.assertIn(result + '\n', parent_file)

    def test_profession(self):
        result = self.person.profession()
        parent_file = pull('professions', self.person.lang)
        self.assertIn(result + '\n', parent_file)

    def test_university(self):
        result = self.person.university()
        parent_file = pull('university', self.person.lang)
        self.assertIn(result + '\n', parent_file)

    def test_qualification(self):
        result = self.person.qualification()
        parent_file = pull('qualifications', self.person.lang)
        self.assertIn(result + '\n', parent_file)

    def test_language(self):
        result = self.person.language()
        parent_file = pull('languages', self.person.lang)
        self.assertIn(result + '\n', parent_file)

    def test_favorite_movie(self):
        result = self.person.favorite_movie()
        parent_file = pull('movies', self.person.lang)
        self.assertIn(result + '\n', parent_file)

    def test_favorite_music_genre(self):
        result = self.person.favorite_music_genre()
        self.assertIn(result, common.FAVORITE_MUSIC_GENRE)

    def test_worldview(self):
        result = self.person.worldview()
        parent_file = pull('worldview', self.person.lang)
        self.assertIn(result + '\n', parent_file)

    def test_views_on(self):
        result = self.person.views_on()
        parent_file = pull('views_on', self.person.lang)
        self.assertIn(result + '\n', parent_file)

    def test_political_views(self):
        result = self.person.political_views()
        parent_file = pull('political_views', self.person.lang)
        self.assertIn(result + '\n', parent_file)

    def test_avatar(self):
        result = self.person.avatar()
        self.assertTrue(len(result) > 20)

    def test_vehicle(self):
        result = self.person.vehicle()
        self.assertIn(result, common.THE_VEHICLES)