From 12cf076118570eebbff08c6b3090e0d4798447a1 Mon Sep 17 00:00:00 2001 From: cyfraeviolae Date: Wed, 3 Apr 2024 03:17:55 -0400 Subject: no venv --- .../faker/providers/ssn/uk_UA/__init__.py | 59 --------------------- .../ssn/uk_UA/__pycache__/__init__.cpython-311.pyc | Bin 3895 -> 0 bytes 2 files changed, 59 deletions(-) delete mode 100644 venv/lib/python3.11/site-packages/faker/providers/ssn/uk_UA/__init__.py delete mode 100644 venv/lib/python3.11/site-packages/faker/providers/ssn/uk_UA/__pycache__/__init__.cpython-311.pyc (limited to 'venv/lib/python3.11/site-packages/faker/providers/ssn/uk_UA') diff --git a/venv/lib/python3.11/site-packages/faker/providers/ssn/uk_UA/__init__.py b/venv/lib/python3.11/site-packages/faker/providers/ssn/uk_UA/__init__.py deleted file mode 100644 index e647be2..0000000 --- a/venv/lib/python3.11/site-packages/faker/providers/ssn/uk_UA/__init__.py +++ /dev/null @@ -1,59 +0,0 @@ -import random - -from datetime import date, datetime -from typing import Optional - -from ....typing import SexLiteral -from .. import Provider as SsnProvider - - -def select_gender(gender: SexLiteral) -> int: - """Choose an even number for Female and odd number for Male.""" - gender = 0 if gender.lower() == "f" else 1 - return random.choice(range(gender, 10, 2)) - - -def calculate_day_count(birthday: date) -> int: - """Calculate the day count from reference date '31 December 1899'.""" - ref_date = date(1899, 12, 31) - return (birthday - ref_date).days - - -def calculate_check_sum(val: str) -> int: - """Calculate checksum using INN calculation method.""" - weights = [-1, 5, 7, 9, 4, 6, 10, 5, 7] - checksum = sum(int(v) * w for v, w in zip(val, weights)) - - return checksum % 11 % 10 - - -class Provider(SsnProvider): - def ssn(self, birthday: Optional[str] = None, gender: Optional[SexLiteral] = None) -> str: - """ - Ukrainian "Реєстраційний номер облікової картки платника податків" - also known as "Ідентифікаційний номер фізичної особи". - @params: birthday: "DD-MM-YYYY" format, default random date - @params: gender: "M" or "F" default: random gender - - :sample: - :sample: birthday='22-06-1990', gender='F' - """ - - try: - # generate day of birthday date object - if birthday: - dob = datetime.strptime(birthday, "%d-%m-%Y").date() - else: - dob = self.generator.date_object() - except Exception: - raise ValueError("Birthday format must be DD-MM-YYYY") - - if gender and gender not in ("M", "F"): - raise ValueError('Gender must be "m" or "f" or None') - - day_count = calculate_day_count(dob) - people_num = self.random_number(3, fix_len=True) - gender_ = select_gender(gender) if gender else random.randint(0, 1) - ssn_without_checksum = f"{day_count}{people_num}{gender_}" - checksum = calculate_check_sum(ssn_without_checksum) - return f"{ssn_without_checksum}{checksum}" diff --git a/venv/lib/python3.11/site-packages/faker/providers/ssn/uk_UA/__pycache__/__init__.cpython-311.pyc b/venv/lib/python3.11/site-packages/faker/providers/ssn/uk_UA/__pycache__/__init__.cpython-311.pyc deleted file mode 100644 index c31698a..0000000 Binary files a/venv/lib/python3.11/site-packages/faker/providers/ssn/uk_UA/__pycache__/__init__.cpython-311.pyc and /dev/null differ -- cgit v1.2.3