├── .editorconfig ├── .github ├── ISSUE_TEMPLATE │ ├── Bug.md │ └── Feature_request.md ├── dependabot.yml ├── images │ └── logo.png ├── pull_request_template.md ├── stale.yml └── workflows │ ├── codeql-analysis.yml │ ├── publish.yml │ └── test.yml ├── .gitignore ├── .readthedocs.yml ├── CHANGELOG.rst ├── CODE_OF_CONDUCT.md ├── CONTRIBUTORS.rst ├── LICENSE ├── Makefile ├── README.md ├── codecov.yml ├── docs ├── Makefile ├── _static │ ├── css │ │ └── custom.css │ ├── images │ │ ├── 00.png │ │ ├── 01.png │ │ ├── 010.png │ │ ├── 02.png │ │ ├── 03.png │ │ ├── 04.png │ │ ├── 05.png │ │ ├── 06.png │ │ ├── 07.png │ │ ├── 08.png │ │ └── 09.png │ ├── preview.png │ └── thaumoctopus_mimicus.jpg ├── _templates │ ├── breadcrumbs.html │ ├── layout.html │ └── sidebars │ │ ├── toc.html │ │ └── useful_links.html ├── about.rst ├── additional-info.rst ├── api.rst ├── changelog.rst ├── conf.py ├── contents.rst.inc ├── contributing.rst ├── factory_plugin.rst ├── glossary.rst ├── index.rst ├── installation.rst ├── locales.rst ├── make.bat ├── providers.rst ├── quickstart.rst ├── random_and_seed.rst ├── requirements.txt └── schema.rst ├── mimesis ├── __init__.py ├── builtins │ ├── __init__.py │ ├── da.py │ ├── en.py │ ├── it.py │ ├── nl.py │ ├── pl.py │ ├── pt_br.py │ ├── ru.py │ └── uk.py ├── compat.py ├── constants.py ├── datasets │ ├── __init__.py │ ├── ar-ae │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ar-dz │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ar-eg │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ar-jo │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ar-kw │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ar-ma │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ar-om │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ar-qa │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ar-sa │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ar-sy │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ar-tn │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ar-ye │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ar │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── az │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── bin │ │ ├── sample.aac │ │ ├── sample.docx │ │ ├── sample.gif │ │ ├── sample.gz │ │ ├── sample.jpg │ │ ├── sample.mov │ │ ├── sample.mp3 │ │ ├── sample.mp4 │ │ ├── sample.pdf │ │ ├── sample.png │ │ ├── sample.pptx │ │ ├── sample.xlsx │ │ └── sample.zip │ ├── cs │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── da │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── de-at │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── de-ch │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── de │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── el │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── en-au │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── en-ca │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── en-gb │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── en │ │ ├── address.json │ │ ├── builtin.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── es-mx │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── es │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── et │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── fa │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── fi │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── fr │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── global │ │ └── emojis.json │ ├── hr │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── hu │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── int │ │ ├── __init__.py │ │ ├── address.py │ │ ├── code.py │ │ ├── common.py │ │ ├── cryptographic.py │ │ ├── datetime.py │ │ ├── development.py │ │ ├── file.py │ │ ├── finance.py │ │ ├── hardware.py │ │ ├── internet.py │ │ ├── path.py │ │ ├── payment.py │ │ ├── person.py │ │ ├── scientific.py │ │ ├── text.py │ │ └── transport.py │ ├── is │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── it │ │ ├── address.json │ │ ├── builtin.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ja │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── kk │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ko │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── locale_template │ │ ├── README.md │ │ ├── address.json │ │ ├── builtin.json │ │ ├── business.json │ │ ├── datetime.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── nl-be │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── nl │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── no │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── pl │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── pt-br │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── pt │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── ru │ │ ├── address.json │ │ ├── builtin.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── sk │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── sv │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── tr │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ ├── uk │ │ ├── address.json │ │ ├── builtin.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json │ └── zh │ │ ├── address.json │ │ ├── datetime.json │ │ ├── finance.json │ │ ├── food.json │ │ ├── person.json │ │ └── text.json ├── entrypoints.py ├── enums.py ├── exceptions.py ├── keys.py ├── locales.py ├── plugins │ ├── __init__.py │ └── factory.py ├── providers │ ├── __init__.py │ ├── address.py │ ├── base.py │ ├── binaryfile.py │ ├── choice.py │ ├── code.py │ ├── cryptographic.py │ ├── date.py │ ├── development.py │ ├── file.py │ ├── finance.py │ ├── food.py │ ├── generic.py │ ├── generic.pyi │ ├── hardware.py │ ├── internet.py │ ├── numeric.py │ ├── path.py │ ├── payment.py │ ├── person.py │ ├── science.py │ ├── text.py │ └── transport.py ├── py.typed ├── random.py ├── schema.py ├── shortcuts.py └── types.py ├── pyproject.toml ├── scripts ├── clean.sh ├── docs.sh ├── format.sh └── test.sh ├── tasks └── minifier.py ├── tests ├── __init__.py ├── conftest.py ├── test_builtins │ ├── __init__.py │ ├── test_brazil_spec.py │ ├── test_denmark_spec.py │ ├── test_italy_spec.py │ ├── test_netherlands_spec.py │ ├── test_poland_spec.py │ ├── test_russia_spec.py │ ├── test_ukraine_spec.py │ └── test_usa_spec.py ├── test_entrypoints.py ├── test_keys.py ├── test_locales.py ├── test_minifier.py ├── test_plugins │ ├── __init__.py │ └── test_factory │ │ ├── __init__.py │ │ ├── test_field_handlers.py │ │ ├── test_field_params.py │ │ ├── test_locale_override.py │ │ ├── test_raw_factories.py │ │ └── test_raw_objects.py ├── test_providers │ ├── __init__.py │ ├── patterns.py │ ├── test_address.py │ ├── test_base.py │ ├── test_binary.py │ ├── test_choice.py │ ├── test_code.py │ ├── test_cryptographic.py │ ├── test_date.py │ ├── test_development.py │ ├── test_file.py │ ├── test_finance.py │ ├── test_food.py │ ├── test_generic.py │ ├── test_hardware.py │ ├── test_internet.py │ ├── test_numeric.py │ ├── test_path.py │ ├── test_payment.py │ ├── test_person.py │ ├── test_science.py │ ├── test_text.py │ └── test_transport.py ├── test_random.py ├── test_schema.py └── test_shortcuts.py └── uv.lock /.editorconfig: -------------------------------------------------------------------------------- 1 | # Check http://editorconfig.org for more information 2 | # This is the main config file for this project: 3 | root = true 4 | 5 | [*] 6 | charset = utf-8 7 | trim_trailing_whitespace = true 8 | end_of_line = lf 9 | indent_style = space 10 | insert_final_newline = true 11 | 12 | [*.py] 13 | indent_size = 4 14 | 15 | [*.{yml, cfg}] 16 | indent_size = 2 17 | 18 | [*.json] 19 | indent_size = 2 20 | 21 | [*.{md,rst,in}] 22 | indent_style = ignore 23 | indent_size = ignore 24 | 25 | [Makefile] 26 | indent_style = tab 27 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/Bug.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug 3 | about: Create a report to help us improve 4 | 5 | --- 6 | 7 | # Bug report 8 | 9 | 14 | 15 | ## What's wrong 16 | 17 | 18 | 19 | ## How is that should be 20 | 21 | 22 | 23 | ## System information 24 | 25 | 26 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/Feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Request a new feature 4 | 5 | --- 6 | 7 | # Feature request 8 | 9 | 10 | 11 | ## Thesis 12 | 13 | 14 | 15 | ## Reasoning 16 | 17 | 22 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | - package-ecosystem: pip 4 | directory: / 5 | schedule: 6 | interval: daily 7 | time: '10:00' 8 | open-pull-requests-limit: 10 9 | reviewers: 10 | - lk-geimfari 11 | assignees: 12 | - lk-geimfari 13 | commit-message: 14 | prefix: "chore(deps)" 15 | -------------------------------------------------------------------------------- /.github/images/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/.github/images/logo.png -------------------------------------------------------------------------------- /.github/pull_request_template.md: -------------------------------------------------------------------------------- 1 | # I have made things! 2 | 3 | 11 | 12 | ## Checklist 13 | 14 | 15 | 16 | - [ ] I have read [contributing guidelines](https://github.com/lk-geimfari/mimesis/blob/master/CONTRIBUTING.rst) 17 | - [ ] I'm sure that I did not unrelated changes in this pull request 18 | - [ ] I have created at least one test case for the changes I have made 19 | 20 | 23 | 24 | 27 | 28 | 31 | 32 | ## Related issues 33 | 34 | 44 | 45 | 50 | -------------------------------------------------------------------------------- /.github/stale.yml: -------------------------------------------------------------------------------- 1 | staleLabel: stale 2 | 3 | daysUntilStale: 80 4 | daysUntilClose: 10 5 | 6 | markComment: > 7 | This issue has been automatically marked as stale because it has not had 8 | activity. It will be closed if no further activity occurs. Thank you 9 | for your contributions. 10 | closeComment: > 11 | Closing this issue automatically because it has not had any activity since 12 | it has been marked as stale. If you think it is still relevant and should 13 | be addressed, feel free to open a new one. 14 | pulls: 15 | markComment: > 16 | This pull request has been automatically marked as stale because it has not had 17 | recent activity. It will be closed if no further activity occurs. Thank you 18 | for your contributions. 19 | closeComment: > 20 | Closing this pull request automatically because it has not had any activity since 21 | it has been marked as stale. If you think it is still relevant and should 22 | be addressed, feel free to open a new one. 23 | 24 | -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- 1 | name: Publish 2 | 3 | on: 4 | release: 5 | types: 6 | - created 7 | 8 | jobs: 9 | publish: 10 | runs-on: ubuntu-latest 11 | steps: 12 | - uses: actions/checkout@v4 13 | - uses: actions/setup-python@v5 14 | with: 15 | python-version: 3.10.x 16 | - name: Upgrade pip 17 | run: pip install --upgrade --user pip 18 | - name: Install uv 19 | run: pip install uv 20 | - name: Cache virtual environment 21 | uses: actions/cache@v4 22 | with: 23 | path: .venv 24 | key: ${{ runner.os }}-python-${{ matrix.python-version }}-venv-${{ hashFiles('**/uv.lock') }} 25 | - name: Install dependencies 26 | run: uv pip install --system --group dev 27 | - name: Build and validate 28 | run: | 29 | uv run task minify 30 | uv build 31 | uv run twine check --strict dist/* 32 | - name: Publish 33 | env: 34 | # https://python-poetry.org/docs/repositories/#configuring-credentials 35 | UV_PUBLISH_TOKEN: ${{ secrets.UV_PUBLISH_TOKEN }} 36 | run: | 37 | uv publish 38 | -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- 1 | name: Test 2 | 3 | # https://docs.github.com/en/free-pro-team@latest/actions/reference/events-that-trigger-workflows 4 | on: 5 | push: 6 | branches: [master] 7 | pull_request: 8 | types: [opened, synchronize] 9 | 10 | jobs: 11 | test: 12 | runs-on: ${{ matrix.os }} 13 | strategy: 14 | fail-fast: false 15 | matrix: 16 | os: [ubuntu-latest, macos-latest] 17 | python-version: ['3.10', '3.11', '3.12', '3.13'] 18 | steps: 19 | - uses: actions/checkout@v4 20 | - name: Set up Python ${{ matrix.python-version }} 21 | uses: actions/setup-python@v5 22 | with: 23 | python-version: ${{ matrix.python-version }} 24 | - name: Upgrade pip 25 | run: pip install --upgrade --user pip 26 | - name: Install uv 27 | run: pip install uv 28 | - name: Cache virtual environment 29 | uses: actions/cache@v4 30 | with: 31 | path: .venv 32 | key: ${{ runner.os }}-python-${{ matrix.python-version }}-venv-${{ hashFiles('**/uv.lock') }} 33 | - name: Install dependencies 34 | run: uv pip install --system --group dev 35 | - name: mypy, pytest, codecov 36 | run: make test 37 | - name: Check code style 38 | run: make lint 39 | - name: Upload coverage to Codecov 40 | uses: codecov/codecov-action@v4 41 | if: "github.repository == 'lk-geimfari/mimesis' && matrix.os == 'ubuntu-latest' && matrix.python-version == '3.10'" 42 | with: 43 | token: ${{ secrets.CODECOV_TOKEN }} 44 | file: ./coverage.xml 45 | env_vars: OS,PYTHON 46 | fail_ci_if_error: true 47 | 48 | quick-test: 49 | runs-on: ubuntu-latest 50 | strategy: 51 | fail-fast: false 52 | matrix: 53 | python-version: ['pypy3.10'] 54 | steps: 55 | - uses: actions/checkout@v4 56 | - name: Set up Python ${{ matrix.python-version }} 57 | uses: actions/setup-python@v5 58 | with: 59 | python-version: ${{ matrix.python-version }} 60 | - name: Upgrade pip 61 | run: pip install --upgrade --user pip 62 | - name: Install uv 63 | run: pip install uv 64 | - name: Install dependencies 65 | run: uv pip install --system --group dev 66 | - name: pytest and codecov 67 | run: uv run pytest 68 | -------------------------------------------------------------------------------- /.readthedocs.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | 3 | build: 4 | os: ubuntu-22.04 5 | tools: 6 | python: "3.10" 7 | 8 | sphinx: 9 | configuration: docs/conf.py 10 | 11 | python: 12 | install: 13 | - requirements: docs/requirements.txt 14 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Code of Conduct 2 | 3 | ## Goal 4 | 5 | Our goal is to make the world a better place. We invite everyone. 6 | 7 | ## Expected Behavior 8 | 9 | Do whatever you want to achieve our goal. Just mind the consequences. 10 | 11 | ## Unacceptable Behavior 12 | 13 | Do not be an asshole. 14 | 15 | Please, also take a notice that different people 16 | understand unacceptable behavior differently. 17 | 18 | ## Consequences of Unacceptable Behavior 19 | 20 | It depends: 21 | 22 | 1. Nothing may happen 23 | 2. People can tell you that you are an asshole 24 | 3. People can apply any administrative regulations that they find acceptable for your behavior 25 | 4. People can beat the shit out of you 26 | 5. You can get arrested if you violate the law while being an asshole 27 | 28 | ## Addressing Grievances 29 | 30 | Just deal it with. 31 | You can also accuse another party at being more asshole than you if that's actually true. 32 | 33 | ## Scope 34 | 35 | It applies to your whole life. 36 | 37 | ## About this Code of Conduct 38 | This Code of Conduct was brazenly stolen from [Moscow Python Beer Meetup](https://github.com/moscow-python-beer/moscow-code-of-conduct), but shhh they don't know about it. 39 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016-Present Isaak Uchakaev (Likid Geimfari) 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | LINT_CHECK=0 2 | 3 | .PHONY: help 4 | help: 5 | @echo "Please use \`make ' where is one of" 6 | @echo " release to create a release" 7 | @echo " docs to build documentations" 8 | @echo " clean to remove build artifacts" 9 | @echo " format to format code using autoformatters" 10 | @echo " lint to check code using autoformatters" 11 | @echo " test to run tests" 12 | @echo " all run pipeline format -> test -> docs -> clean" 13 | 14 | .PHONY: all 15 | all: format test docs clean 16 | 17 | .PHONY: format 18 | format: 19 | CHECK=$(LINT_CHECK) bash scripts/format.sh 20 | 21 | .PHONY: docs 22 | docs: 23 | bash scripts/docs.sh 24 | 25 | .PHONY: clean 26 | clean: 27 | bash scripts/clean.sh 28 | 29 | .PHONY: release 30 | release: 31 | uv build && uv publish 32 | 33 | .PHONY: lint 34 | lint: LINT_CHECK=1 35 | lint: format 36 | @echo 'Lint finished' 37 | 38 | .PHONY: test 39 | test: 40 | bash scripts/test.sh 41 | 42 | .PHONY: update-deps 43 | update-deps: 44 | uv pip compile --group dev --upgrade 45 | -------------------------------------------------------------------------------- /codecov.yml: -------------------------------------------------------------------------------- 1 | codecov: 2 | notify: 3 | require_ci_to_pass: true 4 | comment: 5 | behavior: default 6 | layout: header, diff 7 | require_changes: false 8 | coverage: 9 | precision: 2 10 | range: 11 | - 70.0 12 | - 100.0 13 | round: down 14 | status: 15 | changes: false 16 | patch: true 17 | project: true 18 | threshold: 3% 19 | parsers: 20 | gcov: 21 | branch_detection: 22 | conditional: true 23 | loop: true 24 | macro: false 25 | method: false 26 | javascript: 27 | enable_partials: false 28 | ignore: 29 | - "mimesis/compat.py" 30 | - "mimesis/locales.py" 31 | - "mimesis/exceptions.py" 32 | - "mimesis/__version__.py" 33 | - "mimesis/types.py" 34 | - "mimesis/constants.py" 35 | - "mimesis/enums.py" 36 | - "mimesis/plugins/pytest.py" 37 | -------------------------------------------------------------------------------- /docs/_static/images/00.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/images/00.png -------------------------------------------------------------------------------- /docs/_static/images/01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/images/01.png -------------------------------------------------------------------------------- /docs/_static/images/010.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/images/010.png -------------------------------------------------------------------------------- /docs/_static/images/02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/images/02.png -------------------------------------------------------------------------------- /docs/_static/images/03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/images/03.png -------------------------------------------------------------------------------- /docs/_static/images/04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/images/04.png -------------------------------------------------------------------------------- /docs/_static/images/05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/images/05.png -------------------------------------------------------------------------------- /docs/_static/images/06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/images/06.png -------------------------------------------------------------------------------- /docs/_static/images/07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/images/07.png -------------------------------------------------------------------------------- /docs/_static/images/08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/images/08.png -------------------------------------------------------------------------------- /docs/_static/images/09.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/images/09.png -------------------------------------------------------------------------------- /docs/_static/preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/preview.png -------------------------------------------------------------------------------- /docs/_static/thaumoctopus_mimicus.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/docs/_static/thaumoctopus_mimicus.jpg -------------------------------------------------------------------------------- /docs/_templates/breadcrumbs.html: -------------------------------------------------------------------------------- 1 | {%- extends "sphinx_rtd_theme/breadcrumbs.html" %} 2 | 3 | {% block breadcrumbs_aside %} 4 | {% endblock %} -------------------------------------------------------------------------------- /docs/_templates/sidebars/toc.html: -------------------------------------------------------------------------------- 1 | {%- if display_toc %} 2 |

{{ _('Contents') }}

{{ toc }} 3 | {%- endif %} 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /docs/_templates/sidebars/useful_links.html: -------------------------------------------------------------------------------- 1 |

Useful Links

2 | 9 | -------------------------------------------------------------------------------- /docs/changelog.rst: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | .. include:: ../CHANGELOG.rst 5 | -------------------------------------------------------------------------------- /docs/contents.rst.inc: -------------------------------------------------------------------------------- 1 | Contents 2 | -------- 3 | 4 | Mimesis provides configuration and conventions, with sensible defaults. This section of the 5 | documentation explains the different parts of the Mimesis and how they can be used, customized, and extended. 6 | 7 | .. toctree:: 8 | :maxdepth: 2 9 | 10 | about 11 | installation 12 | quickstart 13 | locales 14 | providers 15 | schema 16 | random_and_seed 17 | factory_plugin 18 | 19 | 20 | API Reference 21 | ------------- 22 | 23 | If you are looking for information on a specific function, class or 24 | method, this part of the documentation is for you. 25 | 26 | .. toctree:: 27 | :maxdepth: 2 28 | 29 | api 30 | glossary 31 | 32 | 33 | Additional Information 34 | ---------------------- 35 | 36 | Disclaimers, legal information, and other details are provided here for those interested. 37 | 38 | .. toctree:: 39 | :maxdepth: 1 40 | 41 | additional-info 42 | changelog 43 | 44 | 45 | Indices 46 | ------- 47 | 48 | * :ref:`genindex` 49 | * :ref:`search` 50 | -------------------------------------------------------------------------------- /docs/contributing.rst: -------------------------------------------------------------------------------- 1 | .. include:: ../CONTRIBUTING.rst 2 | -------------------------------------------------------------------------------- /docs/glossary.rst: -------------------------------------------------------------------------------- 1 | Glossary 2 | -------- 3 | 4 | .. _glossary: 5 | 6 | .. glossary:: 7 | :sorted: 8 | 9 | field 10 | A string which represents a method of a data provider. 11 | 12 | fieldset 13 | A list of fields. 14 | 15 | provider 16 | A class which provides various data generators. 17 | 18 | locale 19 | Locale which represent country-specific data for locale-depend data providers. 20 | 21 | See :py:class:`~mimesis.enums.Locale` 22 | 23 | locale-dependent provider 24 | A provider which depends in external json files with localized data. 25 | 26 | locale-independent provider 27 | A provider without external dependencies (can be used for any locale). 28 | -------------------------------------------------------------------------------- /docs/index.rst: -------------------------------------------------------------------------------- 1 | Mimesis: Fake Data Generator 2 | ============================ 3 | 4 | `Mimesis `_ is a powerful data generator for 5 | Python that can produce a wide range of fake data in multiple languages. This tool is useful 6 | for populating testing databases, creating fake API endpoints, generating custom structures 7 | in JSON and XML files, and anonymizing production data, among other things. With Mimesis, 8 | developers can obtain realistic, randomized data easily to facilitate development and testing. 9 | 10 | .. include:: contents.rst.inc 11 | 12 | -------------------------------------------------------------------------------- /docs/installation.rst: -------------------------------------------------------------------------------- 1 | ============ 2 | Installation 3 | ============ 4 | 5 | Compatibility 6 | ------------- 7 | 8 | Mimesis is compatible with Python version 3.10 or higher (including PyPy 3.10). 9 | 10 | To work with Mimesis on Python versions 3.8 and 3.9, the final compatible 11 | version is Mimesis 11.1.0. Install this specific version to ensure compatibility. 12 | 13 | Dependencies 14 | ------------ 15 | 16 | Mimesis has no hard dependencies, but you need to install `pytz` to add 17 | timezone support for some methods of the :class:`~mimesis.Datetime` provider. 18 | 19 | 20 | Install Mimesis 21 | --------------- 22 | 23 | .. note:: 24 | 25 | To prevent unintended upgrades, it is **highly advisable** to always specify 26 | the version of mimesis that you are using by pinning it. 27 | 28 | The latest version of Mimesis is: 29 | 30 | .. image:: https://img.shields.io/pypi/v/mimesis?color=bright-green 31 | :target: https://pypi.org/project/mimesis/ 32 | :alt: PyPi Version 33 | 34 | Within the pre-activated environment, use the following command to install Mimesis: 35 | 36 | .. code-block:: sh 37 | 38 | (env) ➜ pip install mimesis 39 | 40 | Use the following command to install Mimesis in Jupyter Notebook: 41 | 42 | .. code-block:: sh 43 | 44 | (env) ➜ ! pip install mimesis 45 | 46 | Installation using *poetry* is pretty same: 47 | 48 | .. code-block:: sh 49 | 50 | (env) ➜ poetry add --group dev mimesis 51 | 52 | 53 | If you want to work with the latest Mimesis code before it's released, install or 54 | update the code from the master branch: 55 | 56 | .. code-block:: sh 57 | 58 | (env) ➜ git clone git@github.com:lk-geimfari/mimesis.git 59 | (env) ➜ cd mimesis/ 60 | (env) ➜ make install 61 | 62 | 63 | Optional Dependencies 64 | --------------------- 65 | 66 | To enable the ``factory_boy`` plugin, you need to install Mimesis with the corresponding extra, as shown below: 67 | 68 | .. code-block:: sh 69 | 70 | (env) ➜ poetry add --group dev mimesis[factory] 71 | 72 | -------------------------------------------------------------------------------- /docs/requirements.txt: -------------------------------------------------------------------------------- 1 | sphinx==7.2.6 2 | sphinx-copybutton==0.5.2 3 | sphinx-autodoc-typehints==1.23.0 4 | -------------------------------------------------------------------------------- /mimesis/builtins/__init__.py: -------------------------------------------------------------------------------- 1 | """Builtin specific data providers.""" 2 | 3 | from .da import DenmarkSpecProvider 4 | from .en import USASpecProvider 5 | from .it import ItalySpecProvider 6 | from .nl import NetherlandsSpecProvider 7 | from .pl import PolandSpecProvider 8 | from .pt_br import BrazilSpecProvider 9 | from .ru import RussiaSpecProvider 10 | from .uk import UkraineSpecProvider 11 | 12 | __all__ = [ 13 | "USASpecProvider", 14 | "RussiaSpecProvider", 15 | "BrazilSpecProvider", 16 | "NetherlandsSpecProvider", 17 | "UkraineSpecProvider", 18 | "PolandSpecProvider", 19 | "DenmarkSpecProvider", 20 | "ItalySpecProvider", 21 | ] 22 | -------------------------------------------------------------------------------- /mimesis/builtins/en.py: -------------------------------------------------------------------------------- 1 | """Specific data provider for the USA (en).""" 2 | 3 | 4 | from mimesis.locales import Locale 5 | from mimesis.providers import BaseDataProvider 6 | from mimesis.types import MissingSeed, Seed 7 | 8 | __all__ = ["USASpecProvider"] 9 | 10 | 11 | class USASpecProvider(BaseDataProvider): 12 | """Class that provides special data for the USA (en).""" 13 | 14 | def __init__(self, seed: Seed = MissingSeed) -> None: 15 | """Initialize attributes.""" 16 | super().__init__(locale=Locale.EN, seed=seed) 17 | 18 | class Meta: 19 | name = "usa_provider" 20 | datafile = None 21 | 22 | def tracking_number(self, service: str = "usps") -> str: 23 | """Generate random tracking number. 24 | 25 | Supported services: USPS, FedEx and UPS. 26 | 27 | :param str service: Post service. 28 | :return: Tracking number. 29 | """ 30 | service = service.lower() 31 | 32 | if service not in ("usps", "fedex", "ups"): 33 | raise ValueError("Unsupported post service") 34 | 35 | services = { 36 | "usps": ( 37 | "#### #### #### #### ####", 38 | "@@ ### ### ### US", 39 | ), 40 | "fedex": ( 41 | "#### #### ####", 42 | "#### #### #### ###", 43 | ), 44 | "ups": ("1Z@####@##########",), 45 | } 46 | mask = self.random.choice(services[service]) 47 | return self.random.generate_string_by_mask(mask=mask) 48 | 49 | def ssn(self) -> str: 50 | """Generate a random, but valid SSN. 51 | 52 | :returns: SSN. 53 | 54 | :Example: 55 | 569-66-5801 56 | """ 57 | area = self.random.randint(1, 899) 58 | if area == 666: 59 | area = 665 60 | 61 | return "{:03}-{:02}-{:04}".format( 62 | area, 63 | self.random.randint(1, 99), 64 | self.random.randint(1, 9999), 65 | ) 66 | -------------------------------------------------------------------------------- /mimesis/builtins/it.py: -------------------------------------------------------------------------------- 1 | """Specific data provider for Italy (it).""" 2 | 3 | import string 4 | 5 | from mimesis.enums import Gender 6 | from mimesis.locales import Locale 7 | from mimesis.providers import BaseDataProvider 8 | from mimesis.types import MissingSeed, Seed 9 | 10 | __all__ = ["ItalySpecProvider"] 11 | 12 | 13 | class ItalySpecProvider(BaseDataProvider): 14 | """Specific-provider of misc data for Italy.""" 15 | 16 | def __init__(self, seed: Seed = MissingSeed) -> None: 17 | """Initialize attributes.""" 18 | super().__init__(locale=Locale.IT, seed=seed) 19 | 20 | class Meta: 21 | name = "italy_provider" 22 | datafile = "builtin.json" 23 | 24 | def fiscal_code(self, gender: Gender | None = None) -> str: 25 | """Return a random fiscal code. 26 | 27 | :param gender: Gender's enum object. 28 | :return: Fiscal code. 29 | 30 | Example: 31 | RSSMRA66R05D612U 32 | """ 33 | code = "".join(self.random.choices(string.ascii_uppercase, k=6)) 34 | 35 | code += self.random.generate_string_by_mask(mask="##") 36 | 37 | month_codes = self._extract(["fiscal_code", "month_codes"]) 38 | code += self.random.choice(month_codes) 39 | 40 | birth_day = self.random.randint(101, 131) 41 | self.validate_enum(gender, Gender) 42 | if gender == Gender.FEMALE: 43 | birth_day += 40 44 | code += str(birth_day)[1:] 45 | 46 | city_letters = self._extract(["fiscal_code", "city_letters"]) 47 | code += self.random.choice(city_letters) 48 | code += self.random.generate_string_by_mask(mask="###@") 49 | 50 | return code 51 | -------------------------------------------------------------------------------- /mimesis/builtins/nl.py: -------------------------------------------------------------------------------- 1 | """Specific data provider for the Netherlands (nl).""" 2 | 3 | 4 | from mimesis.locales import Locale 5 | from mimesis.providers import BaseDataProvider 6 | from mimesis.types import MissingSeed, Seed 7 | 8 | __all__ = ["NetherlandsSpecProvider"] 9 | 10 | 11 | class NetherlandsSpecProvider(BaseDataProvider): 12 | """Class that provides special data for the Netherlands (nl).""" 13 | 14 | def __init__(self, seed: Seed = MissingSeed) -> None: 15 | """Initialize attributes.""" 16 | super().__init__(locale=Locale.NL, seed=seed) 17 | 18 | class Meta: 19 | name = "netherlands_provider" 20 | datafile = None 21 | 22 | def bsn(self) -> str: 23 | """Generate a random, but valid ``Burgerservicenummer``. 24 | 25 | :returns: Random BSN. 26 | 27 | :Example: 28 | 255159705 29 | """ 30 | 31 | def _is_valid_bsn(number: str) -> bool: 32 | total = 0 33 | multiplier = 9 34 | 35 | for char in number: 36 | multiplier = -multiplier if multiplier == 1 else multiplier 37 | total += int(char) * multiplier 38 | multiplier -= 1 39 | 40 | result = total % 11 == 0 41 | return result 42 | 43 | a, b = (100000000, 999999999) 44 | sample = str(self.random.randint(a, b)) 45 | 46 | while not _is_valid_bsn(sample): 47 | sample = str(self.random.randint(a, b)) 48 | 49 | return sample 50 | 51 | def burgerservicenummer(self) -> str: 52 | """Generate a random, but valid ``Burgerservicenummer``. 53 | 54 | An alias for self.bsn() 55 | """ 56 | return self.bsn() 57 | -------------------------------------------------------------------------------- /mimesis/builtins/uk.py: -------------------------------------------------------------------------------- 1 | """Specific data provider for Ukraine (uk).""" 2 | 3 | from mimesis.enums import Gender 4 | from mimesis.locales import Locale 5 | from mimesis.providers import BaseDataProvider 6 | from mimesis.types import MissingSeed, Seed 7 | 8 | __all__ = ["UkraineSpecProvider"] 9 | 10 | 11 | class UkraineSpecProvider(BaseDataProvider): 12 | """Class that provides special data for Ukraine (uk).""" 13 | 14 | def __init__(self, seed: Seed = MissingSeed) -> None: 15 | """Initialize attributes.""" 16 | super().__init__(locale=Locale.UK, seed=seed) 17 | 18 | class Meta: 19 | name = "ukraine_provider" 20 | datafile = "builtin.json" 21 | 22 | def patronymic(self, gender: Gender | None = None) -> str: 23 | """Generate random patronymic name. 24 | 25 | :param gender: Gender of person. 26 | :type gender: str or int 27 | :return: Patronymic name. 28 | """ 29 | gender = self.validate_enum(gender, Gender) 30 | patronymics: list[str] = self._extract(["patronymic", str(gender)]) 31 | return self.random.choice(patronymics) 32 | -------------------------------------------------------------------------------- /mimesis/compat.py: -------------------------------------------------------------------------------- 1 | """Import optional dependencies only when needed.""" 2 | 3 | try: 4 | import pytz 5 | except ImportError: 6 | pytz = None # type: ignore 7 | -------------------------------------------------------------------------------- /mimesis/constants.py: -------------------------------------------------------------------------------- 1 | from pathlib import Path 2 | from typing import Final 3 | 4 | __all__ = ["DATADIR", "LOCALE_SEP"] 5 | 6 | # This is the path to the data directory in the mimesis package. 7 | DATADIR: Final[Path] = Path(__file__).parent / "datasets" 8 | 9 | LOCALE_SEP: Final[str] = "-" 10 | -------------------------------------------------------------------------------- /mimesis/datasets/__init__.py: -------------------------------------------------------------------------------- 1 | from .int.address import * 2 | from .int.code import * 3 | from .int.common import * 4 | from .int.datetime import * 5 | from .int.development import * 6 | from .int.file import * 7 | from .int.finance import * 8 | from .int.hardware import * 9 | from .int.internet import * 10 | from .int.path import * 11 | from .int.payment import * 12 | from .int.person import * 13 | from .int.scientific import * 14 | from .int.text import * 15 | from .int.transport import * 16 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-ae/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-ae/business.json: -------------------------------------------------------------------------------- 1 | { 2 | "company": { 3 | "name": [ 4 | "شركة إعمار العقارية", 5 | "شركة دبي للاستثمار", 6 | "شركة أبوظبي الوطنية للطاقة (طاقة)", 7 | "شركة الإمارات للاتصالات (اتصالات)", 8 | "شركة دبي القابضة", 9 | "شركة المراعي", 10 | "شركة دو", 11 | "شركة أبوظبي للإنشاءات", 12 | "شركة الاتحاد للطيران", 13 | "شركة بترول أبوظبي الوطنية (أدنوك)", 14 | "شركة دبي العالمية", 15 | "شركة نخيل", 16 | "شركة الخليج للمال", 17 | "شركة الإمارات العالمية للألمنيوم", 18 | "شركة مجموعة الفيصلية", 19 | "شركة بترومين", 20 | "شركة سابك", 21 | "شركة الإمارات للمنتجات الغذائية", 22 | "شركة مجموعة الطاير", 23 | "شركة راشد الزياني وأولاده", 24 | "شركة الشارقة للأسمنت", 25 | "شركة مجموعة الجميرا", 26 | "شركة الغرير", 27 | "شركة أركاديا", 28 | "شركة المتحدة للطيران", 29 | "شركة بروج للبتروكيماويات", 30 | "شركة أوكسيدنتال بتروليوم", 31 | "شركة أملاك للتمويل", 32 | "شركة مجموعة المنصوري", 33 | "شركة البحر الأحمر للتطوير", 34 | "شركة الصناعات الوطنية", 35 | "شركة إينوك", 36 | "شركة بيئة", 37 | "شركة المركزية", 38 | "شركة أسواق", 39 | "شركة المراعي", 40 | "شركة زين الإمارات", 41 | "شركة رويال داتش شل", 42 | "شركة اتصالات متكاملة", 43 | "شركة الإمارات للألمنيوم", 44 | "شركة دبي للاستثمار العقاري", 45 | "شركة الخطوط الجوية العربية السعودية", 46 | "شركة تاتا", 47 | "شركة أبوظبي للإعلام", 48 | "شركة الإمارات للأمن", 49 | "شركة الجابر", 50 | "شركة تكنولوجيا المعلومات والاتصالات", 51 | "شركة أمانات القابضة", 52 | "شركة أبار", 53 | "شركة إليسار", 54 | "شركة بترول الإمارات الوطنية", 55 | "شركة ستيلك", 56 | "شركة الوطنية للتقنية", 57 | "شركة المواصلات العامة", 58 | "شركة إتصالات ذكية", 59 | "شركة الشرق الأوسط للطاقة" 60 | ], 61 | "type": { 62 | "abbr": [ 63 | "شركة ذات مسؤولية محدودة (LLC)", 64 | "شركة مساهمة عامة", 65 | "شركة مساهمة خاصة", 66 | "شركة فردية", 67 | "شركة تضامن", 68 | "شركة توصية بسيطة", 69 | "شركة أجنبية", 70 | "فرع شركة أجنبية", 71 | "شركة ذات مسؤولية محدودة مع فرع", 72 | "شركة تطوير عقاري", 73 | "شركة استثمارية", 74 | "شركة قابضة" 75 | 76 | ], 77 | "title": [ 78 | "شركة ذات مسؤولية محدودة (LLC)", 79 | "شركة مساهمة عامة", 80 | "شركة مساهمة خاصة", 81 | "شركة فردية", 82 | "شركة تضامن", 83 | "شركة توصية بسيطة", 84 | "شركة أجنبية", 85 | "فرع شركة أجنبية", 86 | "شركة ذات مسؤولية محدودة مع فرع", 87 | "شركة تطوير عقاري", 88 | "شركة استثمارية", 89 | "شركة قابضة" 90 | ] 91 | } 92 | }, 93 | "currency-code": "د.ا.", 94 | "price-format": "####;##", 95 | "numeric-decimal": ".", 96 | "numeric-thousands": ",", 97 | "numeric-frac-digits": 2 98 | } 99 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-ae/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | 29 | "يناير", 30 | "فبراير", 31 | "مارس", 32 | "أبريل", 33 | "مايو", 34 | "يونيو", 35 | "يوليو", 36 | "أغسطس", 37 | "سبتمبر", 38 | "أكتوبر", 39 | "نوفمبر", 40 | "ديسمبر" 41 | ], 42 | "name": [ 43 | "يناير", 44 | "فبراير", 45 | "مارس", 46 | "أبريل", 47 | "مايو", 48 | "يونيو", 49 | "يوليو", 50 | "أغسطس", 51 | "سبتمبر", 52 | "أكتوبر", 53 | "نوفمبر", 54 | "ديسمبر" 55 | ] 56 | }, 57 | "periodicity": [ 58 | "سنوي", 59 | "أسبوعي", 60 | "أبداً", 61 | "شهري", 62 | "نادراً", 63 | "غالباً", 64 | "يوميًا", 65 | "مرة واحدة" 66 | ] 67 | } 68 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-dz/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-dz/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "جانفي", 29 | "فيفري", 30 | "مارس", 31 | "أفريل", 32 | "ماي", 33 | "جوان", 34 | "جويلية", 35 | "أوت", 36 | "سبتمبر", 37 | "أكتوبر", 38 | "نوفمبر", 39 | "ديسمبر" 40 | ], 41 | "name": [ 42 | "جانفي", 43 | "فيفري", 44 | "مارس", 45 | "أفريل", 46 | "ماي", 47 | "جوان", 48 | "جويلية", 49 | "أوت", 50 | "سبتمبر", 51 | "أكتوبر", 52 | "نوفمبر", 53 | "ديسمبر" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "سنوي", 58 | "أسبوعي", 59 | "أبداً", 60 | "شهري", 61 | "نادراً", 62 | "غالباً", 63 | "يوميًا", 64 | "مرة واحدة" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-eg/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-eg/business.json: -------------------------------------------------------------------------------- 1 | { 2 | "company": { 3 | "name": [ 4 | "أوراسكوم للإنشاءات", 5 | "الشركة المصرية للاتصالات", 6 | "الشركة القابضة لمياه الشرب والصرف الصحي", 7 | "الشرقية للدخان", 8 | "البنك الأهلي المصري", 9 | "البنك التجاري الدولي", 10 | "الحديد والصلب المصرية", 11 | "مجموعة طلعت مصطفى", 12 | "شركة السويدي إلكتريك", 13 | "شركة النصر للكيماويات", 14 | "مجموعة مصر للتأمين", 15 | "شركة بيبسيكو", 16 | "شركة جلوبال تليكوم", 17 | "شركة سوني", 18 | "شركة فودافون مصر", 19 | "شركة موبينيل", 20 | "شركة رينو", 21 | "شركة جوجل", 22 | "شركة مايكروسوفت", 23 | "شركة أبل", 24 | "شركة هاي تك", 25 | "شركة نيسان", 26 | "شركة تويوتا", 27 | "شركة نيسان موتورز", 28 | "شركة سامسونج", 29 | "شركة شل", 30 | "شركة توتال", 31 | "شركة كيا موتورز", 32 | "شركة ميني", 33 | "شركة أودي", 34 | "شركة مرسيدس بنز", 35 | "شركة جيلي", 36 | "شركة سوزوكي", 37 | "شركة كرايسلر", 38 | "شركة فيات", 39 | "شركة هوندا", 40 | "شركة جيب", 41 | "شركة لكزس", 42 | "شركة دودج", 43 | "شركة شيفروليه", 44 | "شركة بي إم دبليو", 45 | "شركة أستون مارتين", 46 | "شركة لاند روفر", 47 | "شركة فولكس فاجن", 48 | "شركة كاديلاك", 49 | "شركة إنفينيتي", 50 | "شركة ألبين", 51 | "شركة ألفا روميو", 52 | "شركة بنتلي", 53 | "شركة لوتس", 54 | "شركة مازدا", 55 | "شركة ميتسوبيشي", 56 | "شركة رام", 57 | "شركة تسلا", 58 | "شركة فولفو", 59 | "شركة بوجاتي", 60 | "شركة أوبل", 61 | "شركة لادا", 62 | "شركة سانج يونج", 63 | "شركة ايسوزو", 64 | "شركة سوبارو", 65 | "شركة باجاج", 66 | "شركة هارلي ديفيدسون", 67 | "شركة هينو", 68 | "شركة دايو" 69 | ], 70 | "type": { 71 | "abbr": [ 72 | "شركة مساهمة", 73 | "شركة ذات مسؤولية محدودة", 74 | "شركة تضامن", 75 | "شركة توصية بسيطة", 76 | "شركة ذات مسؤولية محدودة (ش.م.م)", 77 | "شركة فردية", 78 | "شركة أجنبية", 79 | "شركة مختلطة", 80 | "شركة مساهمة خاصة", 81 | "شركة تكنولوجيا", 82 | "شركة خدمات", 83 | "شركة صناعية", 84 | "شركة تجارية" 85 | ], 86 | "title": [ 87 | "شركة مساهمة", 88 | "شركة ذات مسؤولية محدودة", 89 | "شركة تضامن", 90 | "شركة توصية بسيطة", 91 | "شركة ذات مسؤولية محدودة (ش.م.م)", 92 | "شركة فردية", 93 | "شركة أجنبية", 94 | "شركة مختلطة", 95 | "شركة مساهمة خاصة", 96 | "شركة تكنولوجيا", 97 | "شركة خدمات", 98 | "شركة صناعية", 99 | "شركة تجارية" 100 | ] 101 | } 102 | }, 103 | "currency-code": "ج.م.", 104 | "price-format": "####;##", 105 | "numeric-decimal": ".", 106 | "numeric-thousands": ",", 107 | "numeric-frac-digits": 2 108 | } 109 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-eg/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "يناير", 29 | "فبراير", 30 | "مارس", 31 | "أبريل", 32 | "مايو", 33 | "يونيو", 34 | "يوليو", 35 | "أغسطس", 36 | "سبتمبر", 37 | "أكتوبر", 38 | "نوفمبر", 39 | "ديسمبر" 40 | ], 41 | "name": [ 42 | "يناير", 43 | "فبراير", 44 | "مارس", 45 | "أبريل", 46 | "مايو", 47 | "يونيو", 48 | "يوليو", 49 | "أغسطس", 50 | "سبتمبر", 51 | "أكتوبر", 52 | "نوفمبر", 53 | "ديسمبر" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "سنوي", 58 | "أسبوعي", 59 | "أبداً", 60 | "شهري", 61 | "نادراً", 62 | "غالباً", 63 | "يوميًا", 64 | "مرة واحدة" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-jo/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-jo/business.json: -------------------------------------------------------------------------------- 1 | { 2 | "company": { 3 | "name": [ 4 | "شركة المياه", 5 | "اتصالات", 6 | "الإذاعة الوطنية", 7 | "الخطوط الجوية", 8 | "الديوان الوطني للسياحة", 9 | "الشركة القومية لصناعة المروحيات", 10 | "الشركة الوطنية للعربات الصناعية", 11 | "الشركة الوطنية للنقل بالسكك الحديدية", 12 | "الشركة الوطنية للهندسة المدنية والبناء", 13 | "المؤسسة الوطنية للصناعات الإلكترونية", 14 | "المؤسسة الوطنية للصناعات الكهرومنزلية", 15 | "النقل البحري القومي", 16 | "الوكالة القومية للإشعاع الثقافي", 17 | "البريد", 18 | "شركة الجرارات القومية", 19 | "مدار القابضة", 20 | "السلام إلكترونيك", 21 | "المعهد القومي للبترول", 22 | "المعهد القومي للتقييس", 23 | "دار البرزخ للنشر", 24 | "ورود", 25 | "يسير" 26 | ], 27 | "type": { 28 | "abbr": [ 29 | "شركة", 30 | "مؤسسة", 31 | "SARL", 32 | "SPA", 33 | "SPAS", 34 | "SNC", 35 | "صندوق", 36 | "شركة أجنبية", 37 | "تعاضدية", 38 | "تعاونية", 39 | "شركة قابضة" 40 | ], 41 | "title": [ 42 | "شركة", 43 | "مؤسسة", 44 | "شركة ذات مسؤولية محدودة (SARL)", 45 | "شركة ذات أسهم (SPA)", 46 | "شركة المساهمة البسيطة (SPAS)", 47 | "شركة التضامن (SNC)", 48 | "صندوق", 49 | "شركة أجنبية", 50 | "تعاضدية", 51 | "تعاونية", 52 | "شركة قابضة" 53 | ] 54 | } 55 | }, 56 | "currency-code": "د.أ.", 57 | "price-format": "####.###", 58 | "numeric-decimal": ".", 59 | "numeric-thousands": ",", 60 | "numeric-frac-digits": 3 61 | } 62 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-jo/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "كانون2", 29 | "شباط", 30 | "أذار", 31 | "نيسان", 32 | "أيار", 33 | "حزيران", 34 | "تمور", 35 | "آب", 36 | "أيلول", 37 | "تشرين1", 38 | "تشرين2", 39 | "كانون1" 40 | ], 41 | "name": [ 42 | "كانون الثاني", 43 | "شباط", 44 | "أذار", 45 | "نيسان", 46 | "أيار", 47 | "حزيران", 48 | "تمور", 49 | "آب", 50 | "أيلول", 51 | "تشرين الأول", 52 | "تشرين الثاني", 53 | "كانون الأول" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "سنوي", 58 | "أسبوعي", 59 | "أبداً", 60 | "شهري", 61 | "نادراً", 62 | "غالباً", 63 | "يوميًا", 64 | "مرة واحدة" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-jo/finance.json: -------------------------------------------------------------------------------- 1 | { 2 | "banks": [ 3 | "البنك العربي ش م ع", 4 | "المؤسسة العربية المصرفية (الاردن)", 5 | "بنك الاردن", 6 | "بنك القاهرة عمان", 7 | "بنك المال الأردني", 8 | "البنك التجاري الأردني", 9 | "البنك الاردني الكويتي", 10 | "البنك الاهلي الاردني", 11 | "بنك الاسكان للتجارة والتمويل", 12 | "بنك الاستثمار العربي الاردني", 13 | "البنك الاستثماري", 14 | "بنك الاتحاد", 15 | "البنك العقاري المصري العربي", 16 | "سيتي بنك إن . إيه", 17 | "مصرف الرافدين", 18 | "بنك لبنان والمهجر", 19 | "البنك العربي الاسلامي الدولي", 20 | "البنك الاسلامي الاردني", 21 | "بنك صفوة الإسلامي", 22 | "مصرف الراجحي" 23 | ], 24 | "company": { 25 | "type": { 26 | "title": [ 27 | "شركة", 28 | "مجمع" 29 | ], 30 | "abbr": [ 31 | "شركة", 32 | "مجمع" 33 | ] 34 | }, 35 | "name": [ 36 | "شركة الاتصالات الأردنية (أورانج الأردن)", 37 | "شركة زين", 38 | "شركة أمنية", 39 | "شركة جلوبال تليكوم", 40 | "شركة المشرق للتجارة", 41 | "شركة المناصير", 42 | "شركة البوتاس العربية", 43 | "شركة مصانع الاسمنت الأردنية", 44 | "شركة الزيادات", 45 | "شركة المتقدمة للأدوية", 46 | "شركة الاستثمارات الوطنية", 47 | "شركة مياه الأردن (مياهنا)", 48 | "شركة الحوسبة السحابية", 49 | "شركة الكهرباء الأردنية", 50 | "شركة النقل الدولي", 51 | "شركة التأمين الوطنية", 52 | "شركة أدوية الحكمة", 53 | "شركة صناعة الأدوية الأردنية", 54 | "شركة بن سلمان التجارية", 55 | "شركة سحاب للأدوية", 56 | "شركة التامين الأردنية", 57 | "شركة الكابلات الأردنية", 58 | "شركة المناصير للبتروكيماويات", 59 | "شركة الهاشمي للمقاولات", 60 | "شركة الشرق الأوسط للصناعات", 61 | "شركة عمان للتطوير العقاري", 62 | "شركة أدوية الشرق الأوسط", 63 | "شركة راما التجارية", 64 | "شركة الوطنية للألمنيوم", 65 | "شركة الأصالة للصناعات الغذائية", 66 | "شركة الجنوب للخدمات", 67 | "شركة الأسواق التجارية", 68 | "شركة الأردن للاستثمار", 69 | "شركة العربية للمنتجات", 70 | "شركة تجارية للسيارات", 71 | "شركة الأردنية للاستثمار السياحي", 72 | "شركة عجلون للتطوير", 73 | "شركة التطوير الصناعية", 74 | "شركة جبل عمان", 75 | "شركة الخضري للبناء" 76 | ] 77 | }, 78 | "currency-code": "JOD" 79 | } 80 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-kw/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-kw/business.json: -------------------------------------------------------------------------------- 1 | { 2 | "company": { 3 | "name": [ 4 | 5 | "مجموعة صناعات الغانم", 6 | "شركة زين للاتصالات", 7 | "شركة الوطنية للاتصالات (Ooredoo)", 8 | "شركة الكويتية للاستثمار", 9 | "شركة المباني", 10 | "شركة القرين لصناعة الكيماويات البترولية", 11 | "شركة البترول الوطنية الكويتية", 12 | "شركة الكويت للتأمين", 13 | "شركة مجموعة كيبكو (KIPCO)", 14 | "شركة الوطنية العقارية", 15 | "شركة أجوان الخليج العقارية", 16 | "شركة الساير القابضة", 17 | "شركة نقل وتجارة المواشي", 18 | "شركة عقارات الكويت", 19 | "شركة المركز المالي الكويتي (المركز)", 20 | "شركة صناعات الكيماويات البترولية", 21 | "شركة أجيليتي للمخازن العمومية", 22 | "شركة المشاريع المتحدة للخدمات الجوية (يوباك)", 23 | "شركة الخليج للكابلات والصناعات الكهربائية", 24 | "شركة الوطنية للطيران" 25 | ], 26 | "type": { 27 | "abbr": [ 28 | "شركة ذات مسؤولية محدودة", 29 | "شركة مساهمة عامة", 30 | "شركة مساهمة مقفلة", 31 | "شركة تضامنية", 32 | "شركة توصية بسيطة", 33 | "شركة فردية", 34 | "شركة أجنبية", 35 | "شركة مختلطة", 36 | "شركة قابضة", 37 | "شركة محاصة" 38 | ], 39 | "title": [ 40 | "شركة ذات مسؤولية محدودة", 41 | "شركة مساهمة عامة", 42 | "شركة مساهمة مقفلة", 43 | "شركة تضامنية", 44 | "شركة توصية بسيطة", 45 | "شركة فردية", 46 | "شركة أجنبية", 47 | "شركة مختلطة", 48 | "شركة قابضة", 49 | "شركة محاصة" 50 | ] 51 | } 52 | }, 53 | "currency-code": "د.ك.", 54 | "price-format": "####;##", 55 | "numeric-decimal": ".", 56 | "numeric-thousands": ",", 57 | "numeric-frac-digits": 2 58 | } 59 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-kw/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "يناير", 29 | "فبراير", 30 | "مارس", 31 | "أبريل", 32 | "مايو", 33 | "يونيو", 34 | "يوليو", 35 | "أغسطس", 36 | "سبتمبر", 37 | "أكتوبر", 38 | "نوفمبر", 39 | "ديسمبر" 40 | ], 41 | "name": [ 42 | "يناير", 43 | "فبراير", 44 | "مارس", 45 | "أبريل", 46 | "مايو", 47 | "يونيو", 48 | "يوليو", 49 | "أغسطس", 50 | "سبتمبر", 51 | "أكتوبر", 52 | "نوفمبر", 53 | "ديسمبر" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "سنوي", 58 | "أسبوعي", 59 | "أبداً", 60 | "شهري", 61 | "نادراً", 62 | "غالباً", 63 | "يوميًا", 64 | "مرة واحدة" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-kw/finance.json: -------------------------------------------------------------------------------- 1 | { 2 | "banks": [ 3 | "بنك الكويت الوطني (NBK)", 4 | "بنك الخليج", 5 | "بيت التمويل الكويتي (KFH)", 6 | "بنك برقان", 7 | "البنك التجاري الكويتي", 8 | "البنك الأهلي الكويتي (ABK)", 9 | "بنك الكويت الدولي (KIB)", 10 | "بنك وربة", 11 | "البنك الصناعي الكويتي", 12 | "البنك الأهلي المتحد", 13 | "بنك HSBC الكويت", 14 | "سيتي بنك الكويت" 15 | ], 16 | "company": { 17 | "name": [ 18 | 19 | "مجموعة صناعات الغانم", 20 | "شركة زين للاتصالات", 21 | "شركة الوطنية للاتصالات (Ooredoo)", 22 | "شركة الكويتية للاستثمار", 23 | "شركة المباني", 24 | "شركة القرين لصناعة الكيماويات البترولية", 25 | "شركة البترول الوطنية الكويتية", 26 | "شركة الكويت للتأمين", 27 | "شركة مجموعة كيبكو (KIPCO)", 28 | "شركة الوطنية العقارية", 29 | "شركة أجوان الخليج العقارية", 30 | "شركة الساير القابضة", 31 | "شركة نقل وتجارة المواشي", 32 | "شركة عقارات الكويت", 33 | "شركة المركز المالي الكويتي (المركز)", 34 | "شركة صناعات الكيماويات البترولية", 35 | "شركة أجيليتي للمخازن العمومية", 36 | "شركة المشاريع المتحدة للخدمات الجوية (يوباك)", 37 | "شركة الخليج للكابلات والصناعات الكهربائية", 38 | "شركة الوطنية للطيران" 39 | ], 40 | "type": { 41 | "abbr": [ 42 | "شركة ذات مسؤولية محدودة", 43 | "شركة مساهمة عامة", 44 | "شركة مساهمة مقفلة", 45 | "شركة تضامنية", 46 | "شركة توصية بسيطة", 47 | "شركة فردية", 48 | "شركة أجنبية", 49 | "شركة مختلطة", 50 | "شركة قابضة", 51 | "شركة محاصة" 52 | ], 53 | "title": [ 54 | "شركة ذات مسؤولية محدودة", 55 | "شركة مساهمة عامة", 56 | "شركة مساهمة مقفلة", 57 | "شركة تضامنية", 58 | "شركة توصية بسيطة", 59 | "شركة فردية", 60 | "شركة أجنبية", 61 | "شركة مختلطة", 62 | "شركة قابضة", 63 | "شركة محاصة" 64 | ] 65 | } 66 | }, 67 | "currency-code": "KWD" 68 | } 69 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-ma/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-ma/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "يناير", 29 | "فبراير", 30 | "مارس", 31 | "أبريل", 32 | "ماي", 33 | "يونيو", 34 | "يوليوز", 35 | "غشت", 36 | "شتنبر", 37 | "أكتوبر", 38 | "نونبر", 39 | "دجنبر" 40 | ], 41 | "name": [ 42 | "يناير", 43 | "فبراير", 44 | "مارس", 45 | "أبريل", 46 | "ماي", 47 | "يونيو", 48 | "يوليوز", 49 | "غشت", 50 | "شتنبر", 51 | "أكتوبر", 52 | "نونبر", 53 | "دجنبر" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "سنوي", 58 | "أسبوعي", 59 | "أبداً", 60 | "شهري", 61 | "نادراً", 62 | "غالباً", 63 | "يوميًا", 64 | "مرة واحدة" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-om/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-om/business.json: -------------------------------------------------------------------------------- 1 | { 2 | "company": { 3 | "name": [ 4 | "شركة تنمية نفط عمان", 5 | "عمانتل", 6 | "أوريدو", 7 | "الطيران العماني", 8 | "طيران السلام", 9 | "شركة أو كيو", 10 | "شركة أوكسي", 11 | "شركة دليل للنفط", 12 | "شركة محمد البرواني", 13 | "شركة الغالبي", 14 | "شركة جلفار", 15 | "شركة بهوان للسياحة", 16 | "شركة خدمات المواني", 17 | "بريد عمان", 18 | "شركة ريسوت للإسمنت", 19 | "شركة المطاحن العمانية", 20 | "شركة كابلات عمان", 21 | "اللولو", 22 | "مكة للتسوق", 23 | "الجهراء للتسوق", 24 | "البادية", 25 | "الزبير للسيارات" 26 | ], 27 | "type": { 28 | "abbr": [ 29 | "شركة", 30 | "مؤسسة", 31 | "صندوق" 32 | ], 33 | "title": [ 34 | "شركة", 35 | "مؤسسة", 36 | "شركة ذات مسؤولية محدودة (ش م م)", 37 | "شركة المساهمة عامة", 38 | "صندوق", 39 | "شركة توصية", 40 | "شركة الفرد الواحد", 41 | "شركة قابضة" 42 | ] 43 | } 44 | }, 45 | "currency-code": "ر.ع.", 46 | "price-format": "####.##", 47 | "numeric-decimal": ".", 48 | "numeric-thousands": ",", 49 | "numeric-frac-digits": 2 50 | } 51 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-om/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "يانير", 29 | "فبراير", 30 | "مارس", 31 | "أبريل", 32 | "مايو", 33 | "يونيو", 34 | "يوليو", 35 | "أغسطس", 36 | "سبتمبر", 37 | "أكتوبر", 38 | "نوفمبر", 39 | "ديسمبر" 40 | ] 41 | }, 42 | "periodicity": [ 43 | "سنوي", 44 | "أسبوعي", 45 | "أبداً", 46 | "شهري", 47 | "نادراً", 48 | "غالباً", 49 | "يوميًا", 50 | "مرة واحدة" 51 | ] 52 | } 53 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-om/finance.json: -------------------------------------------------------------------------------- 1 | { 2 | "banks": [ 3 | "بنك ظفار ش.م.ع.ع", 4 | "بنك مسقط ش م ع ع", 5 | "البنك الوطني العماني ش.م.ع.ع.ع", 6 | "بنك عمان العربي ش.م.ع.ع", 7 | "صحار الدولي", 8 | "البنك الأهلي ش م ع ع", 9 | "بنك الإسكان العماني ش.م.ع.م", 10 | "بنك التنمية", 11 | "بنك نزوى", 12 | "بنك العز الإسلامي ش.م.ع.م", 13 | "بنك ملي إيران", 14 | "بنك بارودا", 15 | "بنك صادرات إيران", 16 | "بنك ستاندرد تشارترد", 17 | "ستيت بنك أوف إنديا", 18 | "بنك بيروت", 19 | "بنك أبوظبي الأول", 20 | "بنك قطر الوطني" 21 | ], 22 | "company": { 23 | "type": { 24 | "title": [ 25 | "شركة", 26 | "مؤسسة", 27 | "مجموعة" 28 | ], 29 | "abbr": [ 30 | "شركة", 31 | "مؤسسة", 32 | "مجموعة" 33 | ] 34 | }, 35 | "name": [ 36 | "مؤسسة الزبير", 37 | "مجموعة سهيل بهوان", 38 | "محسن حيدر درويش", 39 | "مجموعة الطيران العماني", 40 | "مجموعة دبليوجي تاول", 41 | "جلفار للهندسة والمقاولات", 42 | "النهضة للخدمات", 43 | "النورس للإتصالات السلكية واللاسلكية", 44 | "أسمنت عمان", 45 | "صلالة لخدمات المواني", 46 | "تسويق النفط العمانية", 47 | "مواصلات", 48 | "المطاحن العمانية", 49 | "صحار للطاقة", 50 | "أونك القابضة", 51 | "حديد الجزيرة", 52 | "الأنوار لبلاط السيراميك", 53 | "تأجير للتمويل", 54 | "تكافل عمان", 55 | "الصفاء للأغذية", 56 | "أعلاف ظفار", 57 | "المتحدة للطاقة" 58 | ] 59 | }, 60 | "currency-code": "OMR" 61 | } 62 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-qa/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-qa/business.json: -------------------------------------------------------------------------------- 1 | { 2 | "company": { 3 | "name": [ 4 | "شركة Ooredoo", 5 | "شركة أرامكو قطر", 6 | "شركة أوراكل", 7 | "شركة إس تي سي قطر", 8 | "شركة الأصيل للمواد الاستهلاكية", 9 | "شركة الأمانة للتجارة", 10 | "شركة الباطنة", 11 | "شركة البرج", 12 | "شركة البنوك الوطنية", 13 | "شركة التوزيع الوطنية", 14 | "شركة الجبر", 15 | "شركة الجسور", 16 | "شركة الخليج الدولية للخدمات", 17 | "شركة الخليج للأدوية", 18 | "شركة الخليج للأنظمة", 19 | "شركة الخليج للتأمين", 20 | "شركة الخليجية للتجارة", 21 | "شركة الدوحة للتجارة", 22 | "شركة الدوحة للرعاية الصحية", 23 | "شركة الدوحة للزراعة", 24 | "شركة الدوحة للسياحة", 25 | "شركة الدوحة للمواد الغذائية", 26 | "شركة الريان", 27 | "شركة السراج", 28 | "شركة الشرقية للتجارة", 29 | "شركة العالمية للتجارة", 30 | "شركة الغرير", 31 | "شركة المتحدة للخدمات", 32 | "شركة المشرق", 33 | "شركة المقاولات العربية", 34 | "شركة الميرة للمواد الاستهلاكية", 35 | "شركة النجم الساطع", 36 | "شركة النخيل", 37 | "شركة النسر للتجارة", 38 | "شركة الوسائل الحديثة", 39 | "شركة الوكرة للتجارة", 40 | "شركة دانة غاز", 41 | "شركة دبي للتطوير", 42 | "شركة رنا للتجارة", 43 | "شركة زيورخ", 44 | "شركة شل قطر", 45 | "شركة صناعات قطر", 46 | "شركة فودافون قطر", 47 | "شركة قطر للأنظمة", 48 | "شركة قطر للإلكترونيات", 49 | "شركة قطر للاتصالات", 50 | "شركة قطر للبترول", 51 | "شركة قطر للبترول للكيماويات", 52 | "شركة قطر للبناء", 53 | "شركة قطر للتطوير العقاري", 54 | "شركة قطر للسيارات", 55 | "شركة قطر للطاقة", 56 | "شركة قطر للغاز", 57 | "شركة قطر للنقل البحري", 58 | "شركة قنوات", 59 | "شركة كاتربيلر قطر", 60 | "شركة مينا للصناعة", 61 | "شركة ناصر بن خالد", 62 | "شركة نجم للغاز", 63 | "شركة نوفارتيس", 64 | "مجموعة البنك التجاري" 65 | ], 66 | "type": { 67 | "abbr": [ 68 | "شركة ذات مسؤولية محدودة", 69 | "شركة مساهمة عامة", 70 | "شركة مساهمة مقفلة", 71 | "شركة تضامنية", 72 | "شركة توصية بسيطة", 73 | "شركة فردية", 74 | "شركة أجنبية", 75 | "شركة مختلطة", 76 | "شركة قابضة", 77 | "شركة محاصة" 78 | ], 79 | "title": [ 80 | "شركة ذات مسؤولية محدودة", 81 | "شركة مساهمة عامة", 82 | "شركة مساهمة مقفلة", 83 | "شركة تضامنية", 84 | "شركة توصية بسيطة", 85 | "شركة فردية", 86 | "شركة أجنبية", 87 | "شركة مختلطة", 88 | "شركة قابضة", 89 | "شركة محاصة" 90 | ] 91 | } 92 | }, 93 | "currency-code": "ر.ق.", 94 | "price-format": "####;##", 95 | "numeric-decimal": ".", 96 | "numeric-thousands": ",", 97 | "numeric-frac-digits": 2 98 | } 99 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-qa/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "يناير", 29 | "فبراير", 30 | "مارس", 31 | "أبريل", 32 | "مايو", 33 | "يونيو", 34 | "يوليو", 35 | "أغسطس", 36 | "سبتمبر", 37 | "أكتوبر", 38 | "نوفمبر", 39 | "ديسمبر" 40 | ], 41 | "name": [ 42 | "يناير", 43 | "فبراير", 44 | "مارس", 45 | "أبريل", 46 | "مايو", 47 | "يونيو", 48 | "يوليو", 49 | "أغسطس", 50 | "سبتمبر", 51 | "أكتوبر", 52 | "نوفمبر", 53 | "ديسمبر" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "سنوي", 58 | "أسبوعي", 59 | "أبداً", 60 | "شهري", 61 | "نادراً", 62 | "غالباً", 63 | "يوميًا", 64 | "مرة واحدة" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-sa/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-sa/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "يناير", 29 | "فبراير", 30 | "مارس", 31 | "أبريل", 32 | "مايو", 33 | "يونيو", 34 | "يوليو", 35 | "أغسطس", 36 | "سبتمبر", 37 | "أكتوبر", 38 | "نوفمبر", 39 | "ديسمبر" 40 | ], 41 | "name": [ 42 | "يناير", 43 | "فبراير", 44 | "مارس", 45 | "أبريل", 46 | "مايو", 47 | "يونيو", 48 | "يوليو", 49 | "أغسطس", 50 | "سبتمبر", 51 | "أكتوبر", 52 | "نوفمبر", 53 | "ديسمبر" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "سنوي", 58 | "أسبوعي", 59 | "أبداً", 60 | "شهري", 61 | "نادراً", 62 | "غالباً", 63 | "يوميًا", 64 | "مرة واحدة" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-sy/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-sy/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "كانون الثاني", 29 | "شباط", 30 | "آذار", 31 | "نيسان", 32 | "أيار", 33 | "حزيران", 34 | "تموز", 35 | "آب", 36 | "أيلول", 37 | "تشرين الأول", 38 | "تشرين الثاني", 39 | "كانون الأول" 40 | ], 41 | "name": [ 42 | "كانون الثاني", 43 | "شباط", 44 | "آذار", 45 | "نيسان", 46 | "أيار", 47 | "حزيران", 48 | "تموز", 49 | "آب", 50 | "أيلول", 51 | "تشرين الأول", 52 | "تشرين الثاني", 53 | "كانون الأول" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "سنوي", 58 | "أسبوعي", 59 | "أبداً", 60 | "شهري", 61 | "نادراً", 62 | "غالباً", 63 | "يوميًا", 64 | "مرة واحدة" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-tn/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-tn/business.json: -------------------------------------------------------------------------------- 1 | { 2 | "company": { 3 | "name": [ 4 | "شركة أسترازينيكا", 5 | "شركة ألبان التونسية", 6 | "شركة أنسور", 7 | "شركة أوبر", 8 | "شركة أوميجا", 9 | "شركة أير فرانس", 10 | "شركة أيكيا تونس", 11 | "شركة إيدين", 12 | "شركة إيفوار", 13 | "شركة إيكيا", 14 | "شركة الأدوية التونسية", 15 | "شركة البترول والغاز", 16 | "شركة التمويل", 17 | "شركة الجود", 18 | "شركة الجيل الجديد", 19 | "شركة الخطوط الجوية التونسية", 20 | "شركة الرافدين", 21 | "شركة العربية للطيران", 22 | "شركة الفيروز", 23 | "شركة الكترونيك تونس", 24 | "شركة الكهرباء والغاز", 25 | "شركة الكيماويات", 26 | "شركة المجموعة التونسية للطاقة", 27 | "شركة المراعي", 28 | "شركة المستقبل", 29 | "شركة المشرق", 30 | "شركة النسيج التونسي", 31 | "شركة النمط", 32 | "شركة النيل", 33 | "شركة برايس ووتر هاوس كوبرز", 34 | "شركة بركات", 35 | "شركة بوسطن", 36 | "شركة بيبسي تونس", 37 | "شركة تايلر", 38 | "شركة توتال تونس", 39 | "شركة تيليكوم تونس", 40 | "شركة جولدن بوي", 41 | "شركة جيب", 42 | "شركة دايسون", 43 | "شركة ريفيان", 44 | "شركة زين", 45 | "شركة زين", 46 | "شركة ساب", 47 | "شركة ساس", 48 | "شركة سامسونج تونس", 49 | "شركة سانوفي", 50 | "شركة سيمنز تونس", 51 | "شركة شال", 52 | "شركة فولفو", 53 | "شركة فولكس فاجن تونس", 54 | "شركة فيرفاكس", 55 | "شركة فيفاندي", 56 | "شركة قطر للبترول", 57 | "شركة كلوديل", 58 | "شركة كوبارت", 59 | "شركة كولجيت", 60 | "شركة كوين", 61 | "شركة ماريوت", 62 | "شركة مايلي", 63 | "شركة ميلكا", 64 | "شركة هارلي دافيدسون", 65 | "شركة يونيليفر تونس", 66 | "مجموعة دليس", 67 | "مجموعة سوناطراك", 68 | "مجموعة كاكتوس" 69 | ], 70 | "type": { 71 | "abbr": [ 72 | "شركة", 73 | "مؤسسة", 74 | "SARL", 75 | "SPA", 76 | "SPAS", 77 | "SNC", 78 | "صندوق", 79 | "شركة أجنبية", 80 | "تعاضدية", 81 | "تعاونية", 82 | "شركة قابضة" 83 | ], 84 | "title": [ 85 | "شركة", 86 | "مؤسسة", 87 | "شركة ذات مسؤولية محدودة (SARL)", 88 | "شركة ذات أسهم (SPA)", 89 | "شركة المساهمة البسيطة (SPAS)", 90 | "شركة التضامن (SNC)", 91 | "صندوق", 92 | "شركة أجنبية", 93 | "تعاضدية", 94 | "تعاونية", 95 | "شركة قابضة" 96 | ] 97 | } 98 | }, 99 | "currency-code": "د.ت.", 100 | "price-format": "####;##", 101 | "numeric-decimal": ".", 102 | "numeric-thousands": ",", 103 | "numeric-frac-digits": 2 104 | } 105 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-tn/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "جانفي", 29 | "فيفري", 30 | "مارس", 31 | "أفريل", 32 | "ماي", 33 | "جوان", 34 | "جويلية", 35 | "أوت", 36 | "سبتمبر", 37 | "أكتوبر", 38 | "نوفمبر", 39 | "ديسمبر" 40 | ], 41 | "name": [ 42 | "جانفي", 43 | "فيفري", 44 | "مارس", 45 | "أفريل", 46 | "ماي", 47 | "جوان", 48 | "جويلية", 49 | "أوت", 50 | "سبتمبر", 51 | "أكتوبر", 52 | "نوفمبر", 53 | "ديسمبر" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "سنوي", 58 | "أسبوعي", 59 | "أبداً", 60 | "شهري", 61 | "نادراً", 62 | "غالباً", 63 | "يوميًا", 64 | "مرة واحدة" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-ye/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-ye/business.json: -------------------------------------------------------------------------------- 1 | { 2 | "company": { 3 | "name": [ 4 | "شركة الاتصالات اليمنية", 5 | "المؤسسة العامة للكهرباء", 6 | "الخطوط الجوية اليمنية", 7 | "البنك المركزي اليمني", 8 | "شركة النفط اليمنية", 9 | "المؤسسة العامة للمياه", 10 | "شركة يمن موبايل", 11 | "شركة السعيدة للطيران", 12 | "شركة الغاز اليمنية", 13 | "الشركة اليمنية لصناعة الأدوية", 14 | "المؤسسة اليمنية العامة للتأمين", 15 | "الشركة اليمنية للسكر", 16 | "المؤسسة العامة للطرق والجسور", 17 | "شركة النقل البري اليمنية", 18 | "دار الحكمة للنشر", 19 | "مؤسسة السعيد الثقافية", 20 | "شركة السفير للطباعة", 21 | "مجموعة هائل سعيد أنعم" 22 | ], 23 | "type": { 24 | "abbr": [ 25 | "شركة", 26 | "مؤسسة", 27 | "ذ.م.م", 28 | "شركة مساهمة", 29 | "صندوق", 30 | "شركة أجنبية", 31 | "جمعية تعاونية", 32 | "شركة قابضة" 33 | ], 34 | "title": [ 35 | "شركة", 36 | "مؤسسة", 37 | "شركة ذات مسؤولية محدودة (ذ.م.م)", 38 | "شركة مساهمة (م.س)", 39 | "صندوق", 40 | "شركة أجنبية", 41 | "جمعية تعاونية", 42 | "شركة قابضة" 43 | ] 44 | } 45 | }, 46 | "currency-code": "ر.ي.", 47 | "price-format": "####;##", 48 | "numeric-decimal": ".", 49 | "numeric-thousands": ",", 50 | "numeric-frac-digits": 2 51 | } 52 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-ye/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d/%m/%Y", 24 | "time": "%I:%M %p" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "يناير", 29 | "فبراير", 30 | "مارس", 31 | "أبريل", 32 | "مايو", 33 | "يونيو", 34 | "يوليو", 35 | "أغسطس", 36 | "سبتمبر", 37 | "أكتوبر", 38 | "نوفمبر", 39 | "ديسمبر" 40 | ], 41 | "name": [ 42 | "يناير", 43 | "فبراير", 44 | "مارس", 45 | "أبريل", 46 | "مايو", 47 | "يونيو", 48 | "يوليو", 49 | "أغسطس", 50 | "سبتمبر", 51 | "أكتوبر", 52 | "نوفمبر", 53 | "ديسمبر" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "سنوي", 58 | "أسبوعي", 59 | "أبداً", 60 | "شهري", 61 | "نادراً", 62 | "غالباً", 63 | "يوميًا", 64 | "مرة واحدة" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-ye/finance.json: -------------------------------------------------------------------------------- 1 | { 2 | "banks": [ 3 | "البنك المركزي اليمني", 4 | "بنك التضامن", 5 | "بنك الكريمي", 6 | "بنك اليمن الدولي", 7 | "بنك اليمن والكويت", 8 | "بنك الانشاء والتعمير", 9 | "البنك الاسلامي اليمني", 10 | "بنك سبأ الاسلامي", 11 | "البنك التجاري اليمني", 12 | "بنك عدن الاول", 13 | "البنك الاهلي اليمني", 14 | "بنك قطر", 15 | "كاك بانك", 16 | "بنك اليمن والخليج", 17 | "البنك العربي" 18 | ], 19 | "company": { 20 | "type": { 21 | "title": [ 22 | "شركة", 23 | "مجمع" 24 | ], 25 | "abbr": [ 26 | "شركة", 27 | "مجمع" 28 | ] 29 | }, 30 | "name": [ 31 | "شركة الاتصالات اليمنية", 32 | "المؤسسة العامة للكهرباء", 33 | "الخطوط الجوية اليمنية", 34 | "البنك المركزي اليمني", 35 | "شركة النفط اليمنية", 36 | "المؤسسة العامة للمياه", 37 | "شركة يمن موبايل", 38 | "شركة السعيدة للطيران", 39 | "شركة الغاز اليمنية", 40 | "الشركة اليمنية لصناعة الأدوية", 41 | "المؤسسة اليمنية العامة للتأمين", 42 | "الشركة اليمنية للسكر", 43 | "المؤسسة العامة للطرق والجسور", 44 | "شركة النقل البري اليمنية", 45 | "دار الحكمة للنشر", 46 | "مؤسسة السعيد الثقافية", 47 | "شركة السفير للطباعة", 48 | "مجموعة هائل سعيد أنعم" 49 | ] 50 | }, 51 | "currency-code": "YER" 52 | } 53 | -------------------------------------------------------------------------------- /mimesis/datasets/ar-ye/food.json: -------------------------------------------------------------------------------- 1 | { 2 | "dishes": [ 3 | "السلته", 4 | "الفحسة", 5 | "المندي", 6 | "المظبي", 7 | "المشوي", 8 | "العصيد", 9 | "الشفوت", 10 | "الكبسة", 11 | "الحنيذ", 12 | "الكدم", 13 | "البرم", 14 | "بنت الصحن", 15 | "زربيان", 16 | "سبايا", 17 | "سوسي", 18 | "ملوّح", 19 | "رشوش" 20 | ], 21 | "drinks": [ 22 | "قهوة بيضانية", 23 | "شاي عدني", 24 | "شاي بالحليب", 25 | "بن يمني", 26 | "شاي أحمر", 27 | "قهوة عربية", 28 | "شراب الليمون", 29 | "حليب الإبل", 30 | "حقين", 31 | "مشروبات غازية", 32 | "شراب الكركديه", 33 | "عصير الرمان", 34 | "عصير البرتقال", 35 | "عصير الليمون", 36 | "عصير التفاح", 37 | "عصير الجوافة", 38 | "عصير المانجو", 39 | "عصير الأناناس", 40 | "شربات", 41 | "عصير البطيخ", 42 | "عصير التوت", 43 | "الزنجبيل" 44 | ], 45 | "fruits": [ 46 | "تفاح", 47 | "موز", 48 | "برتقال", 49 | "فراولة", 50 | "أناناس", 51 | "كيوي", 52 | "جوافة", 53 | "مانجو", 54 | "رمان", 55 | "ليمون", 56 | "تين", 57 | "خوخ", 58 | "برقوق", 59 | "تمر", 60 | "عنب", 61 | "حبحب", 62 | "طماط", 63 | "أفوكادو", 64 | "التين الشوكي", 65 | "العنب", 66 | "التوت البري", 67 | "الكيوي" 68 | ], 69 | "spices": [ 70 | "كمون", 71 | "كزبرة", 72 | "قرفة", 73 | "قرنفل", 74 | "هيل", 75 | "زعفران", 76 | "فلفل أسود", 77 | "بسباس حيمي", 78 | "زنجبيل", 79 | "جوزة الطيب", 80 | "هرد", 81 | "كاري", 82 | "ريحان", 83 | "نعناع", 84 | "خردل", 85 | "زعتر", 86 | "شطة", 87 | "مسحوق الثوم", 88 | "مسحوق البصل", 89 | "ينسون", 90 | "بقدونس مجفف", 91 | "أوراق الغار", 92 | "كبزرة", 93 | "ملح الليمون", 94 | "ليمون مجفف" 95 | ], 96 | "vegetables": [ 97 | "جزر", 98 | "بطاط", 99 | "بصل", 100 | "فلفل", 101 | "كوسة", 102 | "باذنجان", 103 | "خيار", 104 | "قرنبيط", 105 | "سبانخ", 106 | "جرجير", 107 | "فجل", 108 | "شمندر", 109 | "كوبيش", 110 | "يقطين", 111 | "زهرة القرنبيط", 112 | "بروكلي", 113 | "فطر", 114 | "ثوم", 115 | "الباذنجان", 116 | "جزر هندي", 117 | "العدس", 118 | "البرسيم", 119 | "فاصولياء", 120 | "فول", 121 | "بازلاء" 122 | ] 123 | } 124 | -------------------------------------------------------------------------------- /mimesis/datasets/ar/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/ar/business.json: -------------------------------------------------------------------------------- 1 | { 2 | "company": { 3 | "name": [ 4 | "شركة المياه", 5 | "اتصالات", 6 | "الإذاعة الوطنية", 7 | "الخطوط الجوية", 8 | "الديوان الوطني للسياحة", 9 | "الشركة القومية لصناعة المروحيات", 10 | "الشركة الوطنية للعربات الصناعية", 11 | "الشركة الوطنية للنقل بالسكك الحديدية", 12 | "الشركة الوطنية للهندسة المدنية والبناء", 13 | "المؤسسة الوطنية للصناعات الإلكترونية", 14 | "المؤسسة الوطنية للصناعات الكهرومنزلية", 15 | "النقل البحري القومي", 16 | "الوكالة القومية للإشعاع الثقافي", 17 | "البريد", 18 | "شركة الجرارات القومية", 19 | "مدار القابضة", 20 | "السلام إلكترونيك", 21 | "المعهد القومي للبترول", 22 | "المعهد القومي للتقييس", 23 | "دار البرزخ للنشر", 24 | "ورود", 25 | "يسير" 26 | ], 27 | "type": { 28 | "abbr": [ 29 | "شركة", 30 | "مؤسسة", 31 | "SARL", 32 | "SPA", 33 | "SPAS", 34 | "SNC", 35 | "صندوق", 36 | "شركة أجنبية", 37 | "تعاضدية", 38 | "تعاونية", 39 | "شركة قابضة" 40 | ], 41 | "title": [ 42 | "شركة", 43 | "مؤسسة", 44 | "شركة ذات مسؤولية محدودة (SARL)", 45 | "شركة ذات أسهم (SPA)", 46 | "شركة المساهمة البسيطة (SPAS)", 47 | "شركة التضامن (SNC)", 48 | "صندوق", 49 | "شركة أجنبية", 50 | "تعاضدية", 51 | "تعاونية", 52 | "شركة قابضة" 53 | ] 54 | } 55 | }, 56 | "currency-code": "د.ج.", 57 | "price-format": "####;##", 58 | "numeric-decimal": ".", 59 | "numeric-thousands": ",", 60 | "numeric-frac-digits": 2 61 | } 62 | -------------------------------------------------------------------------------- /mimesis/datasets/ar/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "س", 5 | "ح", 6 | "ن", 7 | "ث", 8 | "ر", 9 | "خ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "السبت", 14 | "الأحد", 15 | "الإثنين", 16 | "الثلاثاء", 17 | "الأربعاء", 18 | "الخميس", 19 | "الجمعة" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "كانون الثاني", 29 | "شباط", 30 | "آذار", 31 | "نيسان", 32 | "أيار", 33 | "حزيران", 34 | "تموز", 35 | "آب", 36 | "أيلول", 37 | "تشرين الأول", 38 | "تشرين الثاني", 39 | "كانون الأول" 40 | ], 41 | "name": [ 42 | "كانون الثاني", 43 | "شباط", 44 | "آذار", 45 | "نيسان", 46 | "أيار", 47 | "حزيران", 48 | "تموز", 49 | "آب", 50 | "أيلول", 51 | "تشرين الأول", 52 | "تشرين الثاني", 53 | "كانون الأول" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "سنوي", 58 | "أسبوعي", 59 | "أبداً", 60 | "شهري", 61 | "نادراً", 62 | "غالباً", 63 | "يوميًا", 64 | "مرة واحدة" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ar/finance.json: -------------------------------------------------------------------------------- 1 | { 2 | "banks": [ 3 | "البنك الخارجي", 4 | "البنك الوطني العربي", 5 | "بنك التنمية المحلية", 6 | "القرض الشعبي العربي", 7 | "بنك البركة العربي", 8 | "ناتيكسيس ", 9 | "سوسيتي جينيرال ", 10 | "سيتي بنك ", 11 | "البنك العربي ", 12 | "بي ان بي باريباس - ", 13 | "ترست بنك ", 14 | "بنك الخليج ", 15 | "بنك الإسكان للتجارة والتمويل ", 16 | "فرانس-بنك ", 17 | "بنك السلام ", 18 | "اش اس بي سي ", 19 | "البنك الوطني للإسكان" 20 | ], 21 | "company": { 22 | "type": { 23 | "title": [ 24 | "شركة", 25 | "مجمع" 26 | ], 27 | "abbr": [ 28 | "شركة", 29 | "مجمع" 30 | ] 31 | }, 32 | "name": [ 33 | "شركة المياه", 34 | "اتصالات", 35 | "الإذاعة الوطنية", 36 | "الخطوط الجوية", 37 | "الديوان الوطني للسياحة", 38 | "الشركة القومية لصناعة المروحيات", 39 | "الشركة الوطنية للعربات الصناعية", 40 | "الشركة الوطنية للنقل بالسكك الحديدية", 41 | "الشركة الوطنية للهندسة المدنية والبناء", 42 | "المؤسسة الوطنية للصناعات الإلكترونية", 43 | "المؤسسة الوطنية للصناعات الكهرومنزلية", 44 | "النقل البحري القومي", 45 | "الوكالة القومية للإشعاع الثقافي", 46 | "البريد", 47 | "شركة الجرارات القومية", 48 | "مدار القابضة", 49 | "السلام إلكترونيك", 50 | "المعهد القومي للبترول", 51 | "المعهد القومي للتقييس", 52 | "دار البرزخ للنشر", 53 | "ورود", 54 | "يسير" 55 | ] 56 | }, 57 | "currency-code": "DZD" 58 | } 59 | -------------------------------------------------------------------------------- /mimesis/datasets/az/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "B.e.", 5 | "Ç.a.", 6 | "Ç.", 7 | "C.a.", 8 | "C.", 9 | "Ş.", 10 | "B." 11 | ], 12 | "name": [ 13 | "Bazar Ertəsi", 14 | "Çərşənbə Axşamı", 15 | "Çərşənbə", 16 | "Cümə Axşamı", 17 | "Cümə", 18 | "Şənbə", 19 | "Bazar" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d/%m/%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Yan.", 29 | "Fev.", 30 | "Mar.", 31 | "Apr.", 32 | "May.", 33 | "İyn.", 34 | "İyl.", 35 | "Avq.", 36 | "Sen.", 37 | "Okt.", 38 | "Noy.", 39 | "Dek." 40 | ], 41 | "name": [ 42 | "Yanvar", 43 | "Fevral", 44 | "Mart", 45 | "Aprel", 46 | "May", 47 | "İyun", 48 | "İyul", 49 | "Avqust", 50 | "Sentyabr", 51 | "Oktyabr", 52 | "Noyabr", 53 | "Dekabr" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Bir dəfə", 58 | "Heç", 59 | "Tez-tez", 60 | "Günlük", 61 | "Həftəlik", 62 | "Aylıq", 63 | "İllik" 64 | ] 65 | } -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.aac: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.aac -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.docx -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.gif -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.gz -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.jpg -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.mov: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.mov -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.mp3 -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.mp4 -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.pdf -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.png -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.pptx -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.xlsx -------------------------------------------------------------------------------- /mimesis/datasets/bin/sample.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/datasets/bin/sample.zip -------------------------------------------------------------------------------- /mimesis/datasets/cs/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Ne.", 5 | "Po.", 6 | "Pá.", 7 | "So.", 8 | "St.", 9 | "Út.", 10 | "Čt." 11 | ], 12 | "name": [ 13 | "Neděle", 14 | "Pondělí", 15 | "Pátek", 16 | "Sobota", 17 | "Středa", 18 | "Úterý", 19 | "Čtvrtek" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d.%m.%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Bře.", 29 | "Dub.", 30 | "Led.", 31 | "Lis.", 32 | "Pro.", 33 | "Srp.", 34 | "Zář.", 35 | "Kvě.", 36 | "Úno.", 37 | "Čvc.", 38 | "Čvn.", 39 | "Říj." 40 | ], 41 | "name": [ 42 | "Březen", 43 | "Duben", 44 | "Květen", 45 | "Leden", 46 | "Listopad", 47 | "Prosinec", 48 | "Srpen", 49 | "Září", 50 | "Únor", 51 | "Červen", 52 | "Červenec", 53 | "Říjen" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Denní", 58 | "Jednou", 59 | "Měsíční", 60 | "Nikdy", 61 | "Roční", 62 | "Týdně", 63 | "Zřídka" 64 | ] 65 | } 66 | -------------------------------------------------------------------------------- /mimesis/datasets/cs/finance.json: -------------------------------------------------------------------------------- 1 | { 2 | "banks": [ 3 | "AXA Bank", 4 | "AXA pojišťovna", 5 | "Air Bank", 6 | "Allianz Bank", 7 | "Allianz pojišťovna", 8 | "BNP Paribas", 9 | "BNP Paribas Fortis", 10 | "BNP Paribas Personal Finance", 11 | "Banka CREDITAS a.s.", 12 | "Banka Creditas", 13 | "Banka HS Credit", 14 | "Bawag Bank", 15 | "Citfin", 16 | "Citi Bank Europe", 17 | "Citibank", 18 | "Citibank Europe", 19 | "Deutsche Bank", 20 | "Equa bank", 21 | "Ergo Hestia pojišťovna", 22 | "Expobank CZ", 23 | "Fio banka", 24 | "GE Money Bank", 25 | "Generali pojišťovna", 26 | "HSBC Bank", 27 | "Hypoteční banka", 28 | "ING Bank", 29 | "ING pojišťovna", 30 | "J&T Banka", 31 | "Komerční banka", 32 | "Komerční pojišťovna", 33 | "Mbank", 34 | "Moneta Money Bank", 35 | "Poštovní spořitelna", 36 | "Raiffeisen stavební spořitelna", 37 | "Raiffeisenbank", 38 | "Sberbank CZ", 39 | "Société Générale", 40 | "UBS", 41 | "UniCredit Bank", 42 | "Uniqa pojišťovna", 43 | "Všeobecná zdravotní pojišťovna", 44 | "Wüstenrot hypoteční banka", 45 | "Zuno Bank", 46 | "mBank", 47 | "mBank hipotéka", 48 | "ČSOB", 49 | "Českomoravská stavební spořitelna", 50 | "Česká exportní banka", 51 | "Česká národní banka", 52 | "Česká pojišťovna", 53 | "Česká spořitelna", 54 | "Česká zbrojovka" 55 | ], 56 | "company": { 57 | "type": { 58 | "abbr": [ 59 | "a.s.", 60 | "akc.", 61 | "k.s.", 62 | "o.p.s.", 63 | "s.p.", 64 | "s.r.o.", 65 | "spol.", 66 | "v.o.s.", 67 | "z.s." 68 | ], 69 | "title": [ 70 | "Akciová společnost", 71 | "Komanditní společnost", 72 | "Obecně prospěšná společnost", 73 | "Společnost s ručením omezeným", 74 | "Státní podnik", 75 | "Veřejná obchodní společnost", 76 | "Zapsaný spolek" 77 | ] 78 | }, 79 | "name": [ 80 | "Building Audit", 81 | "DATASCAN" 82 | ] 83 | }, 84 | "currency-code": "CZK" 85 | } 86 | -------------------------------------------------------------------------------- /mimesis/datasets/da/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Fre.", 5 | "Lør.", 6 | "Man.", 7 | "Ons.", 8 | "Søn.", 9 | "Tirs.", 10 | "Tors." 11 | ], 12 | "name": [ 13 | "Fredag", 14 | "Lørdag", 15 | "Mandag", 16 | "Onsdag", 17 | "Søndag", 18 | "Tirsdag", 19 | "Torsdag" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Apr.", 29 | "Aug.", 30 | "Dec.", 31 | "Feb.", 32 | "Ja.", 33 | "Jul.", 34 | "Jun.", 35 | "Maj", 36 | "Mar.", 37 | "Nov.", 38 | "Okt.", 39 | "Sep." 40 | ], 41 | "name": [ 42 | "April", 43 | "August", 44 | "December", 45 | "Februar", 46 | "Januar", 47 | "Juli", 48 | "Juni", 49 | "Maj", 50 | "Marts", 51 | "November", 52 | "Oktober", 53 | "September" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Aldrig", 58 | "Daglige", 59 | "Månedlige", 60 | "Sjældent", 61 | "Ugentlig", 62 | "Årligt" 63 | ] 64 | } 65 | -------------------------------------------------------------------------------- /mimesis/datasets/de-at/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/de-at/text.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/de-ch/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/de-ch/food.json: -------------------------------------------------------------------------------- 1 | { 2 | "dishes": [ 3 | "Berner platte", 4 | "Bircherműesli", 5 | "Bűndnernusstorte", 6 | "Raclette", 7 | "Rösti", 8 | "Saffron risotto", 9 | "Zopf", 10 | "Zurchergeschnetzeltes", 11 | "Älplermagronen" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /mimesis/datasets/de-ch/text.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/de/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Mo.", 5 | "Di.", 6 | "Mi.", 7 | "Do.", 8 | "Fr.", 9 | "Sa.", 10 | "So." 11 | ], 12 | "name": [ 13 | "Dienstag", 14 | "Donnerstag", 15 | "Freitag", 16 | "Mittwoch", 17 | "Montag", 18 | "Samstag", 19 | "Sonntag" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d.%m.%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Apr.", 29 | "Aug.", 30 | "Dez.", 31 | "Feb.", 32 | "Jan.", 33 | "Jul.", 34 | "Jun.", 35 | "Mai", 36 | "März", 37 | "Nov.", 38 | "Okt.", 39 | "Sept." 40 | ], 41 | "name": [ 42 | "April", 43 | "August", 44 | "Dezember", 45 | "Februar", 46 | "Januar", 47 | "Juli", 48 | "Juni", 49 | "Mai", 50 | "März", 51 | "November", 52 | "Oktober", 53 | "September" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Einmal", 58 | "Häufig", 59 | "Jährlich", 60 | "Monatlich", 61 | "Nie", 62 | "Selten", 63 | "Täglich", 64 | "Wöchentlich" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/el/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Δε.", 5 | "Κυ.", 6 | "Παρ.", 7 | "Πε.", 8 | "Σαβ.", 9 | "Τε.", 10 | "Τρ." 11 | ], 12 | "name": [ 13 | "Δευτέρα", 14 | "Κυριακή", 15 | "Πέμπτη", 16 | "Παρασκευή", 17 | "Σάββατο", 18 | "Τετάρτη", 19 | "Τρίτη" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Απρ.", 29 | "Αυγ.", 30 | "Δεκ.", 31 | "Ιαν.", 32 | "Ιούλιος", 33 | "Ιούνιος", 34 | "Μάιος", 35 | "Μαρ.", 36 | "Νοεμβ.", 37 | "Οκτ.", 38 | "Σεπτ.", 39 | "Φεβ." 40 | ], 41 | "name": [ 42 | "Άυγουστος", 43 | "Απρίλιος", 44 | "Δεκέμβριος", 45 | "Ιανουάριος", 46 | "Ιούλιους", 47 | "Ιούνιος", 48 | "Μάιος", 49 | "Μάρτιος", 50 | "Νοέμβριος", 51 | "Οκτώβριος", 52 | "Σεπτέμβριος", 53 | "Φεβρουάριος" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Εβδομαδιαίο", 58 | "Ετήσιο", 59 | "Καθημερινά", 60 | "Μηνιαίο", 61 | "Μόλις", 62 | "Πάντα", 63 | "Σπάνιο", 64 | "Συχνά" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/el/finance.json: -------------------------------------------------------------------------------- 1 | { 2 | "banks": [ 3 | "Αlpha Βank Α.Ε.", 4 | "Eurobank Ergasias Α.Ε.", 5 | "National Bank of Greece Α.Ε.", 6 | "Piraeus Bank Α.Ε.", 7 | "Attica Bank Α.Ε.", 8 | "Cooperative Bank of Chania Α.Ε.", 9 | "Cooperative Bank of Drama Α.Ε.", 10 | "Cooperative Bank of Epirus Α.Ε.", 11 | "Cooperative Bank of Evros Α.Ε.", 12 | "Cooperative Bank of Karditsa Α.Ε.", 13 | "Cooperative Bank of Kastoria Α.Ε.", 14 | "Cooperative Bank of Kefalonia, Ithaca & Lefkada Α.Ε.", 15 | "Cooperative Bank of Peloponnese Α.Ε.", 16 | "Cooperative Bank of Pieria Α.Ε.", 17 | "Cooperative Bank of Serres Α.Ε.", 18 | "Cooperative Bank of Thessaly Α.Ε.", 19 | "Pancretan Cooperative Bank Α.Ε.", 20 | "Credicom Consumer Finance Bank Α.Ε." 21 | ], 22 | "company": { 23 | "name": [ 24 | "ANEK Lines", 25 | "Alpha Bank", 26 | "Alumil S.A", 27 | "Attica Bank", 28 | "Eurobank", 29 | "Forthnet", 30 | "Jumbo", 31 | "Marfin Investment Group", 32 | "Minoan Lines", 33 | "PC SYSTEMS", 34 | "Public", 35 | "Quest Holdings", 36 | "Sfakianakis", 37 | "Όμιλος Επιχειρήσεων Μυτιληναίος", 38 | "Όμιλος Εταιριών Ελληνικά Καλώδια", 39 | "Βιοχάλκο", 40 | "Δημόσια Επιχείρηση Ηλεκτρισμού", 41 | "ΕΛΙΝΟΙΛ", 42 | "Εθνική Τράπεζα της Ελλάδος", 43 | "Ελλάκτωρ", 44 | "Ελληνικά Πετρέλαια", 45 | "Εταιρεία Υδρεύσεως και Αποχετεύσεως Πρωτευούσης", 46 | "ΙΟΝ", 47 | "ΜΟΤΟΡ ΟΪΛ ΕΛΛΑΣ", 48 | "ΟΠΑΠ", 49 | "ΠΑΠΑΔΟΠΟΥΛΟΥ", 50 | "Πλαίσιο", 51 | "Τράπεζα Κύπρου", 52 | "Τράπεζα Πειραιώς", 53 | "Τράπεζα της Ελλάδος", 54 | "Τσιμέντα ΤΙΤΑΝ", 55 | "ΦΑΓΕ" 56 | ], 57 | "type": { 58 | "abbr": [ 59 | "EΠΕ", 60 | "ΑΕ", 61 | "ΑΝΕ", 62 | "ΕΕ", 63 | "ΙΚΕ", 64 | "ΚΑΕ", 65 | "ΚΟΙΝΣΕΠ", 66 | "ΟΕ", 67 | "ΠΑΕ" 68 | ], 69 | "title": [ 70 | "Ανώνυμη Εταιρεία", 71 | "Ανώνυμη Ναυτιλιακή εταιρεία", 72 | "Εταιρεία Περιορισμένης Ευθύνης", 73 | "Ετερόρρυθμη Εταιρεία", 74 | "Ιδιωτική Κεφαλαιουχική Εταιρία", 75 | "Καλαθοσφαιρικές Ανώνυμες Επιχειρήσεις", 76 | "Κοινωνική Συνεταιριστική Επιχείρηση", 77 | "Κομματικές επιχειρήσεις", 78 | "Ομόρρυθμη Εταιρεία", 79 | "Ποδοσφαιρικές Ανώνυμες Επιχειρήσεις", 80 | "Συμπλοιοκτησία", 81 | "Συνεταιρισμός" 82 | ] 83 | } 84 | }, 85 | "currency-code": "EUR" 86 | } 87 | -------------------------------------------------------------------------------- /mimesis/datasets/en-au/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "formats": { 3 | "date": "%d/%m/%Y", 4 | "time": "%H:%M:%S" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /mimesis/datasets/en-au/food.json: -------------------------------------------------------------------------------- 1 | { 2 | "dishes": [ 3 | "Grilled kangaroo", 4 | "Anzac biscuits", 5 | "Macadamia nuts", 6 | "Damper", 7 | "Pea and ham soup", 8 | "Weet-Bix", 9 | "Lamingtons", 10 | "Salt and pepper calamari", 11 | "Lamb leg roast", 12 | "Fish 'n' chips by the beach", 13 | "John Dory fillets", 14 | "Iced VoVo", 15 | "Barbecued snags", 16 | "Balmain bugs", 17 | "Pavlova", 18 | "Prawn cocktail", 19 | "Tim Tam", 20 | "Dagwood dog", 21 | "Sausage rolls", 22 | "Cherry Ripe", 23 | "Chicken parmigiana", 24 | "Pigs in a blanket", 25 | "Chiko roll", 26 | "Spag bol", 27 | "Meat pies", 28 | "Fairy bread", 29 | "Seafood pizza", 30 | "Vegemite on toast", 31 | "Vanilla slice", 32 | "Cheese and bacon roll" 33 | ] 34 | } 35 | -------------------------------------------------------------------------------- /mimesis/datasets/en-au/text.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/en-ca/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "formats": { 3 | "date": "%d/%m/%Y", 4 | "time": "%H:%M:%S" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /mimesis/datasets/en-ca/food.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/en-ca/text.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/en-gb/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "formats": { 3 | "date": "%d/%m/%Y", 4 | "time": "%H:%M:%S" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /mimesis/datasets/en-gb/food.json: -------------------------------------------------------------------------------- 1 | { 2 | "dishes": [ 3 | "Apple pie", 4 | "Bakewell tart", 5 | "Bangers and mash", 6 | "Banoffee pie", 7 | "Battenberg cake", 8 | "Bedfordshire clanger", 9 | "Beef wellington", 10 | "Black peas", 11 | "Black pudding", 12 | "Bread and butter pudding", 13 | "Bubble and squeak", 14 | "Cauliflower cheese", 15 | "Chicken tikka masala", 16 | "Christmas pudding", 17 | "Cobbler", 18 | "Cornish hevva cake", 19 | "Cottage pie", 20 | "Cottage pie,", 21 | "Crumble", 22 | "Cumberland sausage", 23 | "Devilled kidneys", 24 | "Eccles cake", 25 | "Eton mess", 26 | "Eve's pudding", 27 | "Faggots", 28 | "Fish and chips", 29 | "Fool", 30 | "Full english breakfast", 31 | "Game pie", 32 | "Gypsy tart", 33 | "Hog's pudding", 34 | "Jam roly-poly", 35 | "Jellied eels", 36 | "Kippers", 37 | "Knickerbocker glory", 38 | "Lancashire hotpot", 39 | "Lardy cake", 40 | "Lincolnshire sausage", 41 | "Liver and bacon", 42 | "Liver and onion", 43 | "Madeira cake", 44 | "Mince pie", 45 | "Panackelty", 46 | "Parkin", 47 | "Parmo", 48 | "Pasty", 49 | "Pease pudding", 50 | "Pie and mash", 51 | "Ploughman's lunch", 52 | "Pork pie", 53 | "Potted shrimps", 54 | "Pound cake", 55 | "Queen of puddings", 56 | "Rag pudding", 57 | "Roast lamb with mint sauce", 58 | "Roast pork with apple sauce", 59 | "Saffron cake", 60 | "Scones", 61 | "Scouse", 62 | "Shepherd's pie", 63 | "Spotted dick", 64 | "Stargazy pie", 65 | "Steak and kidney pie", 66 | "Steak and kidney pudding", 67 | "Steak and oyster pie", 68 | "Steak pies", 69 | "Sticky toffee pudding", 70 | "Stottie cake", 71 | "Suet pudding", 72 | "Summer pudding", 73 | "Sunday roast", 74 | "Sussex pond pudding", 75 | "Syllabub", 76 | "Toad-in-the-hole", 77 | "Treacle tart", 78 | "Trifle", 79 | "Victoria sponge cake", 80 | "Welsh rarebit", 81 | "Yorkshire pudding" 82 | ] 83 | } 84 | -------------------------------------------------------------------------------- /mimesis/datasets/en-gb/text.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/en/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/en/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Fri.", 5 | "Mon.", 6 | "Sat", 7 | "Sun.", 8 | "Thu.", 9 | "Tue.", 10 | "Wed." 11 | ], 12 | "name": [ 13 | "Friday", 14 | "Monday", 15 | "Saturday", 16 | "Sunday", 17 | "Thursday", 18 | "Tuesday", 19 | "Wednesday" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%m/%d/%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Jan.", 29 | "Feb.", 30 | "Mar.", 31 | "Apr.", 32 | "May.", 33 | "Jun.", 34 | "Jul.", 35 | "Aug.", 36 | "Sept.", 37 | "Oct.", 38 | "Nov.", 39 | "Dec." 40 | ], 41 | "name": [ 42 | "January", 43 | "February", 44 | "March", 45 | "April", 46 | "May", 47 | "June", 48 | "July", 49 | "August", 50 | "September", 51 | "October", 52 | "November", 53 | "December" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Daily", 58 | "Monthly", 59 | "Never", 60 | "Often", 61 | "Once", 62 | "Seldom", 63 | "Weekly", 64 | "Yearly" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/es-mx/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/es-mx/food.json: -------------------------------------------------------------------------------- 1 | { 2 | "dishes": [ 3 | "Aguachile", 4 | "Bolillos", 5 | "Burrito", 6 | "Camote", 7 | "Caviar de Carpa", 8 | "Cemitas sandwiches", 9 | "Ceviche", 10 | "Chalupa", 11 | "Chapulines and escamoles", 12 | "Charales", 13 | "Chicharrón", 14 | "Chilaquiles", 15 | "Chilaquiles", 16 | "Chiltomate", 17 | "Chimichangas", 18 | "Choriqueso", 19 | "Chorizo", 20 | "Churipo", 21 | "Coachala", 22 | "Cochinita pibil", 23 | "Cocido", 24 | "Corunda", 25 | "Curtido", 26 | "Elote", 27 | "Enchilada", 28 | "Enfrijoladas", 29 | "Ensalada de fruta", 30 | "Entomatadas", 31 | "Filete de pescado", 32 | "Flautas", 33 | "Flautas with guacamole", 34 | "Frijoles charros", 35 | "Fritadas", 36 | "Gorditas", 37 | "Gringas", 38 | "Huaraches", 39 | "Huauzontles", 40 | "Jicama", 41 | "Jocoque", 42 | "Lengua", 43 | "Lentil soup", 44 | "Longaniza", 45 | "Machaca", 46 | "Mancha manteles", 47 | "Memela", 48 | "Menudo", 49 | "Menudo", 50 | "Mixiotes", 51 | "Mole Poblano", 52 | "Mole de Olla", 53 | "Molletes", 54 | "Molotes", 55 | "Molotes", 56 | "Moronga", 57 | "Mulitas", 58 | "Nachos", 59 | "Pambazos", 60 | "Panucho", 61 | "Papadzules", 62 | "Parilladas", 63 | "Pastel Azteca", 64 | "Pejelagarto", 65 | "Picadillo", 66 | "Pozole", 67 | "Quesadillas", 68 | "Rajas con crema", 69 | "Romeritos", 70 | "Salbutes", 71 | "Sincronizadas", 72 | "Sopa de albondiga", 73 | "Sopes", 74 | "Sopes", 75 | "Taco al pastor", 76 | "Tacos", 77 | "Tacos al pastor", 78 | "Tamales", 79 | "Taquitos", 80 | "Tlacoyos", 81 | "Tlayudas", 82 | "Tortas", 83 | "Tortillas", 84 | "Tostadas", 85 | "Totopo", 86 | "Tripas", 87 | "Yuca (cassava)" 88 | ] 89 | } 90 | -------------------------------------------------------------------------------- /mimesis/datasets/es-mx/text.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/es/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Lu.", 5 | "Ma.", 6 | "Mi", 7 | "Ju.", 8 | "Vi.", 9 | "Sá.", 10 | "Do." 11 | ], 12 | "name": [ 13 | "Lunes", 14 | "Martes", 15 | "Miércoles", 16 | "Jueves", 17 | "Viernes", 18 | "Sábado", 19 | "Domingo" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d/%m/%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Enero", 29 | "Feb.", 30 | "Marzo", 31 | "Abr.", 32 | "Mayo", 33 | "Jun.", 34 | "Jul.", 35 | "Agosto", 36 | "Sep.", 37 | "Oct.", 38 | "Nov.", 39 | "Dic" 40 | ], 41 | "name": [ 42 | "Enero", 43 | "Febrero", 44 | "Marzo", 45 | "Abril", 46 | "Mayo", 47 | "Junio", 48 | "Julio", 49 | "Agosto", 50 | "Septiembre", 51 | "Octubre", 52 | "Noviembre", 53 | "Diciembre" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Una vez", 58 | "Nunca", 59 | "Jamás", 60 | "Raramente", 61 | "A menudo", 62 | "Diariamente", 63 | "Siempre", 64 | "Frecuentemente", 65 | "Anualmente", 66 | "Usualmente", 67 | "Normalmente" 68 | ] 69 | } 70 | -------------------------------------------------------------------------------- /mimesis/datasets/et/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "E", 5 | "T", 6 | "K", 7 | "N", 8 | "R", 9 | "L", 10 | "P" 11 | ], 12 | "name": [ 13 | "Esmaspäev", 14 | "Teisipäev", 15 | "Kolmapäev", 16 | "Neljapäev", 17 | "Reede", 18 | "Laupäev", 19 | "Pühapäev" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d/%m/%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Jaan", 29 | "Veebr", 30 | "Märts", 31 | "Apr", 32 | "Mai", 33 | "Juuni", 34 | "Juuli", 35 | "Aug", 36 | "Sept", 37 | "Okt", 38 | "Nov", 39 | "Dets" 40 | ], 41 | "name": [ 42 | "Jaanuar", 43 | "Veebruar", 44 | "Märts", 45 | "Aprill", 46 | "Mai", 47 | "Juuni", 48 | "Juuli", 49 | "August", 50 | "September", 51 | "Oktoober", 52 | "November", 53 | "Detsember" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Ühel päeval", 58 | "Mitte kunagi", 59 | "Harva", 60 | "Väga sageli", 61 | "Igapäevaselt", 62 | "Nädalas", 63 | "Kuus", 64 | "Kord aastas" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/fa/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "ش", 5 | "ی", 6 | "د", 7 | "س", 8 | "چ", 9 | "پ", 10 | "ج" 11 | ], 12 | "name": [ 13 | "شنبه", 14 | "یکشنبه", 15 | "دوشنبه", 16 | "سه‌شنبه", 17 | "چهارشنبه", 18 | "پنجشنبه", 19 | "جمعه" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d/%m/%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "فروردین", 29 | "اردیبهشت", 30 | "خرداد", 31 | "تیر", 32 | "مرداد", 33 | "شهریور", 34 | "مهر", 35 | "آبان", 36 | "آذر", 37 | "دی", 38 | "بهمن", 39 | "اسفند" 40 | ], 41 | "name": [ 42 | "فروردین", 43 | "اردیبهشت", 44 | "خرداد", 45 | "تیر", 46 | "مرداد", 47 | "شهریور", 48 | "مهر", 49 | "آبان", 50 | "آذر", 51 | "دی", 52 | "بهمن", 53 | "اسفند" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "یک بار", 58 | "هرگز", 59 | "ندرتا", 60 | "غالبا", 61 | "روزانه", 62 | "هفتگی", 63 | "ماهیانه", 64 | "سالیانه" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/fi/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "name": [ 4 | "Keskiviikko", 5 | "Lauantai", 6 | "Maanantai", 7 | "Perjantai", 8 | "Sunnuntai", 9 | "Tiistai", 10 | "Torstai" 11 | ], 12 | "abbr": [ 13 | "Ke.", 14 | "La.", 15 | "Ma.", 16 | "Pe.", 17 | "Su.", 18 | "Ti.", 19 | "To." 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d.%m.%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "name": [ 28 | "Elokuu", 29 | "Heinäkuu", 30 | "Helmikuu", 31 | "Huhtikuu", 32 | "Joulukuu", 33 | "Kesäkuu", 34 | "Lokakuu", 35 | "Maaliskuu", 36 | "Marraskuu", 37 | "Syyskuu", 38 | "Tammikuu", 39 | "Toukokuu" 40 | ], 41 | "abbr": [ 42 | "El.", 43 | "He.", 44 | "He.", 45 | "Hu.", 46 | "Jo.", 47 | "Ke.", 48 | "Lo.", 49 | "Ma.", 50 | "Ma.", 51 | "Sy.", 52 | "Ta.", 53 | "To." 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Ei ikinä", 58 | "Harvoin", 59 | "Kerran", 60 | "Kuukausittain", 61 | "Päivittäin", 62 | "Usein", 63 | "Viikoittain", 64 | "Vuosittain" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/fr/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Lun.", 5 | "Mar.", 6 | "Mer.", 7 | "Jeu.", 8 | "Ven.", 9 | "Sam.", 10 | "Dim." 11 | ], 12 | "name": [ 13 | "Lundi", 14 | "Mardi", 15 | "Mercredi", 16 | "Jeudi", 17 | "Vendredi", 18 | "Samedi", 19 | "Dimanche" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Janv.", 29 | "Févr.", 30 | "Mars", 31 | "Avril", 32 | "Mai", 33 | "Juin", 34 | "Juil.", 35 | "Août", 36 | "Sept.", 37 | "Oct.", 38 | "Nov.", 39 | "Déc." 40 | ], 41 | "name": [ 42 | "Janvier", 43 | "Février", 44 | "Mars", 45 | "Avril", 46 | "Mai", 47 | "Juin", 48 | "Juillet", 49 | "Août", 50 | "Septembre", 51 | "Octobre", 52 | "Novembre", 53 | "Décembre" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Annuel", 58 | "Hebdomadaire", 59 | "Jamais", 60 | "Mensuel", 61 | "Rarement", 62 | "Souvent", 63 | "Tous les jours", 64 | "Une fois" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/hr/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Ned.", 5 | "Pet.", 6 | "Pon.", 7 | "Sri.", 8 | "Sub.", 9 | "Uto.", 10 | "Čet." 11 | ], 12 | "name": [ 13 | "Nedjelja", 14 | "Petak", 15 | "Ponedjeljak", 16 | "Srijeda", 17 | "Subota", 18 | "Utorak", 19 | "Četvrtak" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d.%m.%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Kol.", 29 | "Lip.", 30 | "Lis.", 31 | "Ožu.", 32 | "Pro.", 33 | "Ruj.", 34 | "Sij.", 35 | "Srp.", 36 | "Stu.", 37 | "Svi.", 38 | "Tra.", 39 | "Velj." 40 | ], 41 | "name": [ 42 | "Kolovoz", 43 | "Lipanj", 44 | "Listopad", 45 | "Ožujak", 46 | "Prosinac", 47 | "Rujan", 48 | "Siječanj", 49 | "Srpanj", 50 | "Studeni", 51 | "Svibanj", 52 | "Travanj", 53 | "Veljača" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Dnevno", 58 | "Godišnje", 59 | "Jednom", 60 | "Mjesečno", 61 | "Nikad", 62 | "Svakih nekoliko dana", 63 | "Svakih nekoliko godina", 64 | "Svakih nekoliko mjeseci", 65 | "Svakih nekoliko tjedana", 66 | "Tjedno", 67 | "Često" 68 | ] 69 | } -------------------------------------------------------------------------------- /mimesis/datasets/hr/finance.json: -------------------------------------------------------------------------------- 1 | { 2 | "banks": [ 3 | "Addiko Bank D.D.", 4 | "Agram Banka D.D.", 5 | "Banka Kovanica D.D.", 6 | "Bks Bank Ag, Glavna Podružnica Hrvatska", 7 | "Croatia Banka D.D.", 8 | "Erste & Steiermärkische Bank D.D.", 9 | "Hrvatska Poštanska Banka D.D.", 10 | "Imex Banka D.D.", 11 | "Istarska Kreditna Banka Umag D.D.", 12 | "J&T Banka D.D.", 13 | "Jadranska Banka D.D.", 14 | "Karlovačka Banka D.D.", 15 | "Kentbank D.D.", 16 | "Otp Banka Hrvatska D.D.", 17 | "Partner Banka D.D.", 18 | "Podravska Banka D.D.", 19 | "Privredna Banka Zagreb D.D.", 20 | "Raiffeisenbank Austria D.D.", 21 | "Samoborska Banka D.D.", 22 | "Sberbank D.D.", 23 | "Slatinska Banka D.D.", 24 | "Zagrebačka Banka D.D." 25 | ], 26 | "company": { 27 | "name": [ 28 | "ACI d.d.", 29 | "Ad Plastik", 30 | "Adriatic Croatia International Club", 31 | "Adris grupa", 32 | "Agrokor", 33 | "Atlantic grupa", 34 | "Atlantic trade", 35 | "Badel 1862", 36 | "Belje", 37 | "Croatia osiguranje", 38 | "Crodux derivati", 39 | "Crodux", 40 | "Dukat", 41 | "Dukat", 42 | "Elka", 43 | "Ericsson Nikola Tesla", 44 | "Franck", 45 | "HEP Operator distribucijskog sustava", 46 | "HEP", 47 | "HT Eronet", 48 | "Hrvatska pošta", 49 | "Hrvatski Telekom", 50 | "INA Industrija nafte", 51 | "INA", 52 | "Jadrolinija", 53 | "Janaf", 54 | "Konzum", 55 | "Končar", 56 | "Kraš esop d.o.o.", 57 | "Kraš", 58 | "Marina Frapa", 59 | "Orbico", 60 | "PBZ", 61 | "Petrokemija", 62 | "Petrol", 63 | "Pivovara Daruvar", 64 | "Pliva", 65 | "Podravka prehrambena industrija", 66 | "Podravka", 67 | "Rimac Automobili", 68 | "Tehnika", 69 | "Valamar Riviera", 70 | "Varteks", 71 | "Vindija", 72 | "Zagrebačka banka", 73 | "Zagrebačka pivovara", 74 | "Đuro Đaković Montaža", 75 | "Đuro Đaković grupa" 76 | ], 77 | "type": { 78 | "abbr": [ 79 | "d.d.", 80 | "d.o.o.", 81 | "j.d.o.o.", 82 | "j.u.", 83 | "k.d.", 84 | "s.d.d.", 85 | "s.o." 86 | ], 87 | "title": [ 88 | "dioničko društvo", 89 | "društvo s ograničenom odgovornošću", 90 | "javna ustanova", 91 | "javno dioničko društvo", 92 | "komanditno društvo", 93 | "udruga", 94 | "zadruga", 95 | "zajedničko društvo", 96 | "zaklada" 97 | ] 98 | } 99 | }, 100 | "currency-code": "EUR" 101 | } -------------------------------------------------------------------------------- /mimesis/datasets/hu/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Csüt.", 5 | "H.", 6 | "K.", 7 | "P.", 8 | "Sze.", 9 | "Szo.", 10 | "Vas" 11 | ], 12 | "name": [ 13 | "Hétfő", 14 | "Kedd", 15 | "Szerda", 16 | "Csütörtök", 17 | "Péntek", 18 | "Szombaton", 19 | "Vasárnap" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%y. %m. %d", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Jan.", 29 | "Feb.", 30 | "Márc.", 31 | "Ápr.", 32 | "Máj.", 33 | "Jun.", 34 | "Jul.", 35 | "Aug.", 36 | "Szept.", 37 | "Okt.", 38 | "Nov.", 39 | "Dec." 40 | ], 41 | "name": [ 42 | "Augusztus", 43 | "December", 44 | "Február", 45 | "Január", 46 | "Július", 47 | "Június", 48 | "Május", 49 | "Március", 50 | "November", 51 | "Október", 52 | "Szeptember", 53 | "Április" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Egyszer", 58 | "Havi", 59 | "Heti", 60 | "Napi", 61 | "Ritkán", 62 | "Soha", 63 | "Évi" 64 | ] 65 | } 66 | -------------------------------------------------------------------------------- /mimesis/datasets/hu/finance.json: -------------------------------------------------------------------------------- 1 | { 2 | "banks": [ 3 | "Magyar Nemzeti Bank", 4 | "OTP Bank Nyrt.", 5 | "K&H Bank Zrt.", 6 | "Erste Bank Hungary Zrt.", 7 | "Raiffeisen Bank Zrt.", 8 | "UniCredit Bank Hungary Zrt.", 9 | "Budapest Bank Zrt.", 10 | "MKB Bank Zrt.", 11 | "CIB Bank Zrt.", 12 | "Takarékbank Zrt." 13 | ], 14 | "company": { 15 | "type": { 16 | "abbr": [ 17 | "e.v.", 18 | "e.c.", 19 | "bt.", 20 | "kkt.", 21 | "kft.", 22 | "kht.", 23 | "kv.", 24 | "rt.", 25 | "Nyrt.", 26 | "Zrt." 27 | ], 28 | "title": [ 29 | "Egyéni vállalkozó", 30 | "Egyéni cég", 31 | "Betéti társaság", 32 | "Közkereseti társaság", 33 | "Korlátolt felelősségű társaság", 34 | "Közhasznú társaság", 35 | "Közös vállalat", 36 | "Részvénytársaság", 37 | "Nyilvánosan működő részvénytársaság", 38 | "Zártközűen működő részvénytársaság" 39 | ] 40 | }, 41 | "name": [ 42 | "Borsod Brewery", 43 | "Dreher Brewery", 44 | "Győri Keksz", 45 | "Hell Energy", 46 | "Pick Szeged", 47 | "Pécs Brewery", 48 | "Traubi", 49 | "Törley", 50 | "Zwack" 51 | ] 52 | }, 53 | "currency-code": "HUF" 54 | } 55 | -------------------------------------------------------------------------------- /mimesis/datasets/int/__init__.py: -------------------------------------------------------------------------------- 1 | """Here you can see data that used in all locales.""" 2 | 3 | from .address import * 4 | from .code import * 5 | from .common import * 6 | from .datetime import * 7 | from .development import * 8 | from .file import * 9 | from .finance import * 10 | from .hardware import * 11 | from .internet import * 12 | from .path import * 13 | from .payment import * 14 | from .person import * 15 | from .scientific import * 16 | from .text import * 17 | from .transport import * 18 | -------------------------------------------------------------------------------- /mimesis/datasets/int/common.py: -------------------------------------------------------------------------------- 1 | """Provides all data related to decorators.""" 2 | 3 | COMMON_LETTERS = { 4 | "\t": "\t", 5 | " ": " ", 6 | "А": "A", 7 | "Б": "B", 8 | "В": "V", 9 | "Д": "D", 10 | "Е": "E", 11 | "Ж": "Zh", 12 | "З": "Z", 13 | "К": "K", 14 | "Л": "L", 15 | "М": "M", 16 | "Н": "N", 17 | "О": "O", 18 | "П": "P", 19 | "Р": "R", 20 | "С": "S", 21 | "Т": "T", 22 | "У": "U", 23 | "Ф": "F", 24 | "Х": "Kh", 25 | "Ц": "Ts", 26 | "Ч": "Ch", 27 | "Ш": "Sh", 28 | "Щ": "Shch", 29 | "Ю": "Yu", 30 | "Я": "Ja", 31 | "а": "a", 32 | "б": "b", 33 | "в": "v", 34 | "д": "d", 35 | "е": "e", 36 | "ж": "zh", 37 | "з": "z", 38 | "к": "k", 39 | "л": "l", 40 | "м": "m", 41 | "н": "n", 42 | "о": "o", 43 | "п": "p", 44 | "р": "r", 45 | "с": "s", 46 | "т": "t", 47 | "у": "u", 48 | "ф": "f", 49 | "х": "kh", 50 | "ц": "ts", 51 | "ч": "ch", 52 | "ш": "sh", 53 | "щ": "shch", 54 | "ю": "yu", 55 | "я": "ja", 56 | } 57 | 58 | ROMANIZATION_DICT = { 59 | "kk": { 60 | "Ё": "Yo", 61 | "І": "I", 62 | "Г": "G", 63 | "И": "I", 64 | "Й": "Ye", 65 | "Ъ": "", 66 | "Ы": "Y", 67 | "Ь": "", 68 | "Э": "E", 69 | "г": "g", 70 | "и": "i", 71 | "й": "ye", 72 | "ъ": "", 73 | "ы": "y", 74 | "ь": "", 75 | "э": "e", 76 | "ё": "yo", 77 | "і": "i", 78 | "Ғ": "Ğ", 79 | "ғ": "ğ", 80 | "Қ": "Q", 81 | "қ": "q", 82 | "Ң": "Ñ", 83 | "ң": "ñ", 84 | "Ү": "Ü", 85 | "ү": "ü", 86 | "Ұ": "U", 87 | "ұ": "u", 88 | "Һ": "H", 89 | "һ": "h", 90 | "Ә": "Ä", 91 | "ә": "ä", 92 | "Ө": "Ö", 93 | "ө": "ö", 94 | }, 95 | "ru": { 96 | "Ё": "Yo", 97 | "Г": "G", 98 | "И": "I", 99 | "Й": "Ye", 100 | "Ъ": "", 101 | "Ы": "Y", 102 | "Ь": "", 103 | "Э": "E", 104 | "г": "g", 105 | "и": "i", 106 | "й": "ye", 107 | "ъ": "", 108 | "ы": "y", 109 | "ь": "", 110 | "э": "e", 111 | "ё": "yo", 112 | }, 113 | "uk": { 114 | "Є": "Ye", 115 | "І": "I", 116 | "Ї": "Yi", 117 | "Г": "H", 118 | "И": "Y", 119 | "Й": "Y", 120 | "Ь": "’", 121 | "г": "h", 122 | "и": "y", 123 | "й": "y", 124 | "ь": "’", 125 | "є": "ye", 126 | "і": "i", 127 | "ї": "yi", 128 | "Ґ": "G", 129 | "ґ": "g", 130 | }, 131 | } 132 | -------------------------------------------------------------------------------- /mimesis/datasets/int/path.py: -------------------------------------------------------------------------------- 1 | """Provides platforms.""" 2 | 3 | # https://docs.python.org/3.5/library/sys.html?highlight=sys#sys.platform 4 | PLATFORMS = { 5 | "linux": { 6 | "home": "/home/", 7 | }, 8 | "darwin": { 9 | "home": "/home/", 10 | }, 11 | "win32": { 12 | "home": "C:\\Users\\", 13 | }, 14 | "win64": { 15 | "home": "C:\\Users\\", 16 | }, 17 | "freebsd": { 18 | "home": "/home/", 19 | }, 20 | } 21 | -------------------------------------------------------------------------------- /mimesis/datasets/int/payment.py: -------------------------------------------------------------------------------- 1 | """Provides all the generic data related to the payment.""" 2 | 3 | CREDIT_CARD_NETWORKS = [ 4 | "Visa", 5 | "MasterCard", 6 | "Chase", 7 | "American Express", 8 | "Discover", 9 | ] 10 | -------------------------------------------------------------------------------- /mimesis/datasets/int/scientific.py: -------------------------------------------------------------------------------- 1 | """Provides all the data related to science.""" 2 | 3 | SI_PREFIXES = { 4 | "negative": [ 5 | "deci", 6 | "centi", 7 | "milli", 8 | "micro", 9 | "nano", 10 | "pico", 11 | "femto", 12 | "atto", 13 | "zepto", 14 | "yocto", 15 | ], 16 | "positive": [ 17 | "yotta", 18 | "zetta", 19 | "exa", 20 | "peta", 21 | "tera", 22 | "giga", 23 | "mega", 24 | "kilo", 25 | "hecto", 26 | "deca", 27 | ], 28 | } 29 | 30 | SI_PREFIXES_SYM = { 31 | "negative": ["d", "c", "m", "μ", "n", "p", "f", "a", "z", "y"], 32 | "positive": ["Y", "Z", "E", "P", "T", "G", "M", "k", "h", "da"], 33 | } 34 | -------------------------------------------------------------------------------- /mimesis/datasets/int/text.py: -------------------------------------------------------------------------------- 1 | """Provides all the data related to text.""" 2 | 3 | SAFE_COLORS = [ 4 | "#1abc9c", 5 | "#16a085", 6 | "#2ecc71", 7 | "#27ae60", 8 | "#3498db", 9 | "#2980b9", 10 | "#9b59b6", 11 | "#8e44ad", 12 | "#34495e", 13 | "#2c3e50", 14 | "#f1c40f", 15 | "#f39c12", 16 | "#e67e22", 17 | "#d35400", 18 | "#e74c3c", 19 | "#c0392b", 20 | "#ecf0f1", 21 | "#bdc3c7", 22 | "#95a5a6", 23 | "#7f8c8d", 24 | ] 25 | -------------------------------------------------------------------------------- /mimesis/datasets/is/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "name": [ 4 | "Mánudagur", 5 | "Þriðjudagur", 6 | "Miðvikudagur", 7 | "Fimmtudagur", 8 | "Föstudagur", 9 | "Laugardagur", 10 | "Sunnudagur" 11 | ], 12 | "abbr": [ 13 | "Má.", 14 | "Þr.", 15 | "Mi.", 16 | "Fi.", 17 | "Fö.", 18 | "Lau.", 19 | "Su." 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d.%m.%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "name": [ 28 | "Janúar", 29 | "Febrúar", 30 | "Mars", 31 | "Apríl", 32 | "Maí", 33 | "Júní", 34 | "Júlí", 35 | "Ágúst", 36 | "September", 37 | "Október", 38 | "Nóvember", 39 | "Desember" 40 | ], 41 | "abbr": [ 42 | "Jan.", 43 | "Feb.", 44 | "Mar.", 45 | "Apr.", 46 | "Maí.", 47 | "Jún.", 48 | "Júl.", 49 | "Ágú.", 50 | "Sep.", 51 | "Okt.", 52 | "Nóv.", 53 | "Des." 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Einu sinni", 58 | "Aldrei", 59 | "Sjaldan", 60 | "Oft", 61 | "Vikuleg", 62 | "Mánaðarleg", 63 | "Árlega" 64 | ] 65 | } 66 | -------------------------------------------------------------------------------- /mimesis/datasets/is/finance.json: -------------------------------------------------------------------------------- 1 | { 2 | "banks": [ 3 | "Arion Banki hf.", 4 | "Islandsbanki hf.", 5 | "Landsbankinn hf." 6 | ], 7 | "company": { 8 | "name": [ 9 | "365 - miðlar", 10 | "Actavis Group", 11 | "Advania", 12 | "Arctic Trucks Ísland", 13 | "Bakkavör Group", 14 | "BankNordik", 15 | "Barri", 16 | "Bifreiðaskoðun Íslands", 17 | "Búnaðarbanki Íslands", 18 | "CCP", 19 | "Carbon Recycling International", 20 | "Dagsbrún", 21 | "Eimskipafélag Íslands", 22 | "Ferðaskrifstofa Íslands", 23 | "Fjarskipti", 24 | "Fjárfestingarbanki atvinnulífsins", 25 | "Flugfélag Íslands", 26 | "Flugskóli Íslands", 27 | "Friðrik Skúlason", 28 | "Gutenberg", 29 | "HB Grandi", 30 | "Hagar", 31 | "Hagkaup", 32 | "Hólalax", 33 | "Icelandair", 34 | "Icelandair Group", 35 | "Intís", 36 | "Jarðboranir", 37 | "Kísiliðjan", 38 | "Landsbanki Íslands", 39 | "Landssími Íslands", 40 | "Lyfjaverslun Íslands", 41 | "MP Banki", 42 | "Mannvit", 43 | "Marel", 44 | "Marorka", 45 | "N1", 46 | "NBI", 47 | "Nói-Siríus", 48 | "Nýherji", 49 | "Promens", 50 | "Reginn", 51 | "Ríkisútvarpið", 52 | "Rýni", 53 | "SR-mjöl", 54 | "Sementsverksmiðjan", 55 | "Siglufirði", 56 | "Sjóvá-Almennar tryggingar", 57 | "Skýrr", 58 | "Sláturfélag Suðurlands", 59 | "Stofnfiskur", 60 | "Síminn", 61 | "Teris", 62 | "Tryggingamiðstöðin", 63 | "Vátryggingafélag Íslands", 64 | "Wow Air.", 65 | "Áburðarverksmiðjan", 66 | "Áfengis- og tóbaksverslun ríkisins", 67 | "Íslandsbanki", 68 | "Íslandspóstur", 69 | "Íslensk endurtrygging", 70 | "Íslensk erfðagreining", 71 | "Íslenska járnblendifélagið", 72 | "Íslenska menntanetið", 73 | "Íslenskir aðalverktakar", 74 | "Össur", 75 | "Þormóður rammi", 76 | "Þróunarfélag Íslands", 77 | "Þörungaverksmiðjan" 78 | ], 79 | "type": { 80 | "title": [ 81 | "Einkahlutafélag", 82 | "Einstaklingsfyrirtæki", 83 | "Hlutafélag", 84 | "Opinbert hlutafélag", 85 | "Sameignarfélag", 86 | "Samlagsfélag", 87 | "Samvinnufélag", 88 | "Sjálfseignarstofnun" 89 | ], 90 | "abbr": [ 91 | "ehf.", 92 | "hf.", 93 | "ohf.", 94 | "sf." 95 | ] 96 | } 97 | }, 98 | "currency-code": "ISK" 99 | } 100 | -------------------------------------------------------------------------------- /mimesis/datasets/it/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "fiscal_code": { 3 | "month_codes": [ 4 | "A", 5 | "B", 6 | "C", 7 | "E", 8 | "H", 9 | "L", 10 | "M", 11 | "P", 12 | "R", 13 | "S", 14 | "T" 15 | ], 16 | "city_letters": [ 17 | "A", 18 | "B", 19 | "C", 20 | "D", 21 | "E", 22 | "F", 23 | "G", 24 | "H", 25 | "I", 26 | "L", 27 | "M", 28 | "Z" 29 | ] 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /mimesis/datasets/it/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Do.", 5 | "Lun.", 6 | "Mar.", 7 | "Mer.", 8 | "Gio.", 9 | "Ven.", 10 | "Sab." 11 | ], 12 | "name": [ 13 | "Domenica", 14 | "Lunedì", 15 | "Martedì", 16 | "Mercoledì", 17 | "Giovedì", 18 | "Venerdì", 19 | "Sabato" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d/%m/%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Gen.", 29 | "Feb.", 30 | "Mar.", 31 | "Apr.", 32 | "Mag.", 33 | "Giu.", 34 | "Lug.", 35 | "Ago.", 36 | "Sep.", 37 | "Ott.", 38 | "Nov.", 39 | "Dic." 40 | ], 41 | "name": [ 42 | "Gennaio", 43 | "Febbraio", 44 | "Marzo", 45 | "Aprile", 46 | "Maggio", 47 | "Giugno", 48 | "Luglio", 49 | "Agosto", 50 | "Settembre", 51 | "Ottobre", 52 | "Novembre", 53 | "Dicembre" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Una volta", 58 | "Mai", 59 | "Raramente", 60 | "Spesso", 61 | "Quotidiano", 62 | "Settimanalmente", 63 | "Mensile", 64 | "Annuale" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ja/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "月", 5 | "火", 6 | "水", 7 | "木", 8 | "金", 9 | "土", 10 | "日" 11 | ], 12 | "name": [ 13 | "月曜日", 14 | "火曜日", 15 | "水曜日", 16 | "木曜日", 17 | "金曜日", 18 | "土曜日", 19 | "日曜日" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%Y/%m/%d", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "1月", 29 | "2月", 30 | "3月", 31 | "4月", 32 | "5月", 33 | "6月", 34 | "7月", 35 | "8月", 36 | "9月", 37 | "10月", 38 | "11月", 39 | "12月" 40 | ], 41 | "name": [ 42 | "1月", 43 | "2月", 44 | "3月", 45 | "4月", 46 | "5月", 47 | "6月", 48 | "7月", 49 | "8月", 50 | "9月", 51 | "10月", 52 | "11月", 53 | "12月" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "一度", 58 | "たまに", 59 | "よく", 60 | "常に", 61 | "毎日", 62 | "毎週", 63 | "毎月", 64 | "毎年" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/kk/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Дс.", 5 | "Сс.", 6 | "Ср.", 7 | "Бс.", 8 | "Жм.", 9 | "Сн.", 10 | "Жк." 11 | ], 12 | "name": [ 13 | "Дүйсенбі", 14 | "Сейсенбі", 15 | "Сәрсенбі", 16 | "Бейсенбі", 17 | "Жұма", 18 | "Сенбі", 19 | "Жексенбі" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d.%m.%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Қаң.", 29 | "Ақп.", 30 | "Нау.", 31 | "Сәу.", 32 | "Мам.", 33 | "Мау.", 34 | "Шіл.", 35 | "Там.", 36 | "Қыр.", 37 | "Қаз.", 38 | "Қар.", 39 | "Жел." 40 | ], 41 | "name": [ 42 | "Қаңтар", 43 | "Ақпан", 44 | "Наурыз", 45 | "Сәуір", 46 | "Мамыр", 47 | "Маусым", 48 | "Шілде", 49 | "Тамыз", 50 | "Қыркүйек", 51 | "Қазан", 52 | "Қараша", 53 | "Желтоқсан" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Ай сайын", 58 | "Апта сайын", 59 | "Бір күні", 60 | "Ешқашан", 61 | "Жиі", 62 | "Жыл сайын", 63 | "Күн сайын", 64 | "Сирек", 65 | "Сирек", 66 | "Тоқсан сайын" 67 | ] 68 | } 69 | -------------------------------------------------------------------------------- /mimesis/datasets/kk/food.json: -------------------------------------------------------------------------------- 1 | { 2 | "dishes": [ 3 | "Test" 4 | ], 5 | "drinks": [ 6 | "Test" 7 | ], 8 | "fruits": [ 9 | "Test" 10 | ], 11 | "spices": [ 12 | "Test" 13 | ], 14 | "vegetables": [ 15 | "Test" 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /mimesis/datasets/ko/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "월", 5 | "화", 6 | "수", 7 | "목", 8 | "금", 9 | "토", 10 | "일" 11 | ], 12 | "name": [ 13 | "월요일", 14 | "화요일", 15 | "수요일", 16 | "목요일", 17 | "금요일", 18 | "토요일", 19 | "일요일" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%Y/%m/%d", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "1월", 29 | "2월", 30 | "3월", 31 | "4월", 32 | "5월", 33 | "6월", 34 | "7월", 35 | "8월", 36 | "9월", 37 | "10월", 38 | "11월", 39 | "12월" 40 | ], 41 | "name": [ 42 | "1월", 43 | "2월", 44 | "3월", 45 | "4월", 46 | "5월", 47 | "6월", 48 | "7월", 49 | "8월", 50 | "9월", 51 | "10월", 52 | "11월", 53 | "12월" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "한 번", 58 | "전혀", 59 | "가끔", 60 | "자주", 61 | "매일", 62 | "매주", 63 | "매달", 64 | "매년" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/locale_template/address.json: -------------------------------------------------------------------------------- 1 | { 2 | "address_fmt": "{st_num} {st_name} {st_sfx}", 3 | "city": [ 4 | "Test" 5 | ], 6 | "continent": [ 7 | "Test" 8 | ], 9 | "country": { 10 | "current_locale": "Test", 11 | "name": [ 12 | "Test" 13 | ] 14 | }, 15 | "postal_code_fmt": "#####", 16 | "state": { 17 | "abbr": [ 18 | "Test" 19 | ], 20 | "name": [ 21 | "Test" 22 | ] 23 | }, 24 | "street": { 25 | "name": [ 26 | "Test" 27 | ], 28 | "suffix": [ 29 | "Test" 30 | ] 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /mimesis/datasets/locale_template/builtin.json: -------------------------------------------------------------------------------- 1 | { 2 | "any": { 3 | "structure": [ 4 | "which", 5 | "you", 6 | "need" 7 | ] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /mimesis/datasets/locale_template/business.json: -------------------------------------------------------------------------------- 1 | { 2 | "company": { 3 | "name": [ 4 | "Test" 5 | ], 6 | "type": { 7 | "abbr": [ 8 | "Test" 9 | ], 10 | "title": [ 11 | "Test" 12 | ] 13 | } 14 | }, 15 | "currency-code": "Test", 16 | "price-format": "# Test", 17 | "numeric-decimal": ".", 18 | "numeric-thousands": ",", 19 | "numeric-frac-digits": 2 20 | } 21 | -------------------------------------------------------------------------------- /mimesis/datasets/locale_template/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Test" 5 | ], 6 | "name": [ 7 | "Test" 8 | ] 9 | }, 10 | "formats": { 11 | "date": "%m/%d/%Y", 12 | "time": "%H:%M:%S" 13 | }, 14 | "month": { 15 | "abbr": [ 16 | "Test" 17 | ], 18 | "name": [ 19 | "Test" 20 | ] 21 | }, 22 | "periodicity": [ 23 | "Test" 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /mimesis/datasets/locale_template/food.json: -------------------------------------------------------------------------------- 1 | { 2 | "dishes": [ 3 | "Test" 4 | ], 5 | "drinks": [ 6 | "Test" 7 | ], 8 | "fruits": [ 9 | "Test" 10 | ], 11 | "spices": [ 12 | "Test" 13 | ], 14 | "vegetables": [ 15 | "Test" 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /mimesis/datasets/locale_template/person.json: -------------------------------------------------------------------------------- 1 | { 2 | "academic_degree": [ 3 | "Test" 4 | ], 5 | "gender": [ 6 | "Test" 7 | ], 8 | "language": [ 9 | "Test" 10 | ], 11 | "names": { 12 | "female": [ 13 | "Test" 14 | ], 15 | "male": [ 16 | "Test" 17 | ] 18 | }, 19 | "__COMMENT_NATIONALITY__": "Optional -> nationality: {female: [], male: []}", 20 | "nationality": [ 21 | "Test" 22 | ], 23 | "occupation": [ 24 | "Test" 25 | ], 26 | "political_views": [ 27 | "Test" 28 | ], 29 | "__COMMENT_SURNAMES__": "Optional -> surnames: {female: [], male: []}", 30 | "surnames": [ 31 | "Test" 32 | ], 33 | "title": { 34 | "female": { 35 | "typical": [ 36 | "Test" 37 | ], 38 | "academic": [ 39 | "Test" 40 | ] 41 | }, 42 | "male": { 43 | "typical": [ 44 | "Test" 45 | ], 46 | "academic": [ 47 | "Test" 48 | ] 49 | } 50 | }, 51 | "university": [ 52 | "Test" 53 | ], 54 | "views_on": [ 55 | "Test" 56 | ], 57 | "worldview": [ 58 | "Test" 59 | ], 60 | "telephone_fmt": [ 61 | "###-###-####", 62 | "(###) ###-####", 63 | "1-###-###-####" 64 | ] 65 | } 66 | -------------------------------------------------------------------------------- /mimesis/datasets/locale_template/text.json: -------------------------------------------------------------------------------- 1 | { 2 | "alphabet": { 3 | "uppercase": [ 4 | "Test" 5 | ], 6 | "lowercase": [ 7 | "Test" 8 | ] 9 | }, 10 | "answers": [ 11 | "Yes", 12 | "No", 13 | "Maybe" 14 | ], 15 | "color": [ 16 | "Test" 17 | ], 18 | "level": [ 19 | "low", 20 | "moderate", 21 | "high", 22 | "very high", 23 | "extreme", 24 | "critical" 25 | ], 26 | "quotes": [ 27 | "Test" 28 | ], 29 | "text": [ 30 | "Test" 31 | ], 32 | "words": [] 33 | } 34 | -------------------------------------------------------------------------------- /mimesis/datasets/nl-be/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "formats": { 3 | "date": "%d.%m.%Y" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /mimesis/datasets/nl-be/food.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/nl-be/person.json: -------------------------------------------------------------------------------- 1 | { 2 | "surnames": [ 3 | "Aerts", 4 | "Baert", 5 | "Bauwens", 6 | "Bogaert", 7 | "Bogaerts", 8 | "Bosmans", 9 | "Ceulemans", 10 | "Christiaens", 11 | "Claes", 12 | "Claessens", 13 | "Claeys", 14 | "Cools", 15 | "Coppens", 16 | "Cornelis", 17 | "Daems", 18 | "De Backer", 19 | "De Bruyn", 20 | "De Clercq", 21 | "De Cock", 22 | "De Coninck", 23 | "De Groote", 24 | "De Meyer", 25 | "De Pauw", 26 | "De Ridder", 27 | "De Smedt", 28 | "De Smet", 29 | "De Vos", 30 | "De Wilde", 31 | "De Winter", 32 | "Declercq", 33 | "Desmet", 34 | "Devos", 35 | "Dierckx", 36 | "Geerts", 37 | "Goethals", 38 | "Goossens", 39 | "Hendrickx", 40 | "Hermans", 41 | "Heylen", 42 | "Jacobs", 43 | "Jansen", 44 | "Janssen", 45 | "Janssens", 46 | "Lambrechts", 47 | "Lauwers", 48 | "Lemmens", 49 | "Lenaerts", 50 | "Lievens", 51 | "Luyten", 52 | "Maes", 53 | "Martens", 54 | "Matthys", 55 | "Mertens", 56 | "Michiels", 57 | "Moens", 58 | "Nijs", 59 | "Pauwels", 60 | "Peeters", 61 | "Pieters", 62 | "Raes", 63 | "Roels", 64 | "Segers", 65 | "Simons", 66 | "Smet", 67 | "Smets", 68 | "Somers", 69 | "Stevens", 70 | "Thijs", 71 | "Thys", 72 | "Timmermans", 73 | "Van Acker", 74 | "Van Damme", 75 | "Van Dyck", 76 | "Van Hecke", 77 | "Van Hoof", 78 | "Van de Velde", 79 | "Van den Bossche", 80 | "Van den Broeck", 81 | "Vandenberghe", 82 | "Verbeeck", 83 | "Verbeke", 84 | "Verbruggen", 85 | "Vercammen", 86 | "Verhaegen", 87 | "Verhaeghe", 88 | "Verhelst", 89 | "Verheyen", 90 | "Verhoeven", 91 | "Verlinden", 92 | "Vermeersch", 93 | "Vermeiren", 94 | "Vermeulen", 95 | "Verschueren", 96 | "Verstraete", 97 | "Verstraeten", 98 | "Vervoort", 99 | "Wauters", 100 | "Willems", 101 | "Wouters", 102 | "Wuyts" 103 | ], 104 | "university": [ 105 | "Gembloux Agro-Bio Tech", 106 | "Katholieke Universiteit Leuven", 107 | "Universiteit Antwerpen", 108 | "Universiteit Gent", 109 | "Universiteit Hasselt", 110 | "Universiteit van Luik", 111 | "Vrije Universiteit Brussel" 112 | ], 113 | "telephone_fmt": [ 114 | "0# ### ## ##", 115 | "0## ### ## ##", 116 | "+32-###-##-##-#", 117 | "+32 2 ### ####", 118 | "+32 ## ### ####" 119 | ] 120 | } 121 | -------------------------------------------------------------------------------- /mimesis/datasets/nl-be/text.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/nl/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "name": [ 4 | "Maandag", 5 | "Dinsdag", 6 | "Woensdag", 7 | "Donderdag", 8 | "Vrijdag", 9 | "Zaterdag", 10 | "Zondag" 11 | ], 12 | "abbr": [ 13 | "Ma.", 14 | "Di.", 15 | "Wo.", 16 | "Do.", 17 | "Vr.", 18 | "Za.", 19 | "Zo." 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d-%m-%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "name": [ 28 | "Januari", 29 | "Februari", 30 | "Maart", 31 | "April", 32 | "Mei", 33 | "Juni", 34 | "Juli", 35 | "Augustus", 36 | "September", 37 | "Oktober", 38 | "November", 39 | "December" 40 | ], 41 | "abbr": [ 42 | "Jan.", 43 | "Feb.", 44 | "Mrt.", 45 | "Apr.", 46 | "Mei.", 47 | "Jun.", 48 | "Jul.", 49 | "Aug.", 50 | "Sep.", 51 | "Okt.", 52 | "Nov.", 53 | "Dec." 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Eenmaal", 58 | "Nooit", 59 | "Zelden", 60 | "Dagelijks", 61 | "Wekelijks", 62 | "Maandelijks", 63 | "Jaarlijks" 64 | ] 65 | } 66 | -------------------------------------------------------------------------------- /mimesis/datasets/no/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Ma.", 5 | "Ti.", 6 | "On.", 7 | "To.", 8 | "Fr.", 9 | "Lø.", 10 | "Sø." 11 | ], 12 | "name": [ 13 | "Mandag", 14 | "Tirsdag", 15 | "Onsdag", 16 | "Torsdag", 17 | "Fredag", 18 | "Lørdag", 19 | "Søndag" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d.%m.%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Jan.", 29 | "Febr.", 30 | "Mars", 31 | "April", 32 | "Mai", 33 | "Juni", 34 | "Juli", 35 | "Aug.", 36 | "Sept.", 37 | "Okt.", 38 | "Nov.", 39 | "Des." 40 | ], 41 | "name": [ 42 | "Januar", 43 | "Februar", 44 | "Mars", 45 | "April", 46 | "Mai", 47 | "Juni", 48 | "Juli", 49 | "August", 50 | "September", 51 | "Oktober", 52 | "November", 53 | "Desember" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "En gang", 58 | "Aldri", 59 | "Sjeldent", 60 | "Ofte", 61 | "Daglig", 62 | "Ukentlig", 63 | "Månedlig", 64 | "Årlig" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/pl/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "name": [ 4 | "Poniedziałek", 5 | "Wtorek", 6 | "Środa", 7 | "Czwartek", 8 | "Piątek", 9 | "Sobota", 10 | "Niedziela" 11 | ], 12 | "abbr": [ 13 | "Pn.", 14 | "Wt.", 15 | "Śr.", 16 | "Czw.", 17 | "Pt.", 18 | "Sob.", 19 | "Niedz." 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d.%m.%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "name": [ 28 | "Styczeń", 29 | "Luty", 30 | "Marzec", 31 | "Kwiecień", 32 | "Maj", 33 | "Czerwiec", 34 | "Lipiec", 35 | "Sierpień", 36 | "Wrzesień", 37 | "Październik", 38 | "Listopad", 39 | "Grudzień" 40 | ], 41 | "abbr": [ 42 | "Stycz.", 43 | "Luty", 44 | "Mar.", 45 | "Kwiec.", 46 | "Maj", 47 | "Czerw.", 48 | "Lip.", 49 | "Sierp.", 50 | "Wrzes.", 51 | "Paźdz.", 52 | "Listop.", 53 | "Grudz." 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Codziennie", 58 | "Miesięcznie", 59 | "Nigdy", 60 | "Często", 61 | "Jednorazowo", 62 | "Rzadko", 63 | "Cotygodniowo", 64 | "Corocznie" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/pt-br/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Seg.", 5 | "Ter.", 6 | "Qua.", 7 | "Qui.", 8 | "Sex.", 9 | "Sab.", 10 | "Dom." 11 | ], 12 | "name": [ 13 | "Segunda-Feira", 14 | "Terça-Feira", 15 | "Quarta-Feira", 16 | "Quinta-Feira", 17 | "Sexta-Feira", 18 | "Sábado", 19 | "Domingo" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d/%m/%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Jan.", 29 | "Fev.", 30 | "Mar.", 31 | "Abr.", 32 | "Mai.", 33 | "Jun.", 34 | "Jul.", 35 | "Ago.", 36 | "Set.", 37 | "Out.", 38 | "Nov.", 39 | "Dez." 40 | ], 41 | "name": [ 42 | "Janeiro", 43 | "Fevereiro", 44 | "Março", 45 | "Abril", 46 | "Maio", 47 | "Junho", 48 | "Julho", 49 | "Agosto", 50 | "Setembro", 51 | "Outubro", 52 | "Novembro", 53 | "Dezembro" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Anualmente", 58 | "Diariamente", 59 | "Frequentemente", 60 | "Mensalmente", 61 | "Nunca", 62 | "Raramente", 63 | "Semanalmente", 64 | "Uma Vez" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/pt-br/text.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /mimesis/datasets/pt/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "name": [ 4 | "Segunda Feira", 5 | "Terça Feira", 6 | "Quarta Feira", 7 | "Quinta Feira", 8 | "Sexta Feira", 9 | "Sábado", 10 | "Domingo" 11 | ], 12 | "abbr": [ 13 | "Seg.", 14 | "Ter.", 15 | "Qua.", 16 | "Qui.", 17 | "Sex.", 18 | "Sab", 19 | "Dom." 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d/%m/%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "name": [ 28 | "Janeiro", 29 | "Fevereiro", 30 | "Março", 31 | "Abril", 32 | "Maio", 33 | "Junho", 34 | "Julho", 35 | "Agosto", 36 | "Setembro", 37 | "Outubro", 38 | "Novembro", 39 | "Dezembro" 40 | ], 41 | "abbr": [ 42 | "Jan.", 43 | "Fev.", 44 | "Mar.", 45 | "Abr.", 46 | "Mai.", 47 | "Jun.", 48 | "Jul.", 49 | "Ago.", 50 | "Set.", 51 | "Out.", 52 | "Nov.", 53 | "Dez." 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Uma Vez", 58 | "Nunca", 59 | "Raramente", 60 | "Frequentemente", 61 | "Diariamente", 62 | "Semanalmente", 63 | "Mensalmente", 64 | "Anualmente" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/ru/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Пн.", 5 | "Вт.", 6 | "Ср.", 7 | "Чт.", 8 | "Пт.", 9 | "Сб.", 10 | "Вс." 11 | ], 12 | "name": [ 13 | "Понедельник", 14 | "Вторник", 15 | "Среда", 16 | "Четверг", 17 | "Пятница", 18 | "Суббота", 19 | "Воскресенье" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d.%m.%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Янв.", 29 | "Фев.", 30 | "Мар.", 31 | "Апр.", 32 | "Май.", 33 | "Июн.", 34 | "Июл.", 35 | "Авг.", 36 | "Сен.", 37 | "Окт.", 38 | "Ноя.", 39 | "Дек." 40 | ], 41 | "name": [ 42 | "Январь", 43 | "Февраль", 44 | "Март", 45 | "Апрель", 46 | "Май", 47 | "Июнь", 48 | "Июль", 49 | "Август", 50 | "Сентябрь", 51 | "Октябрь", 52 | "Ноябрь", 53 | "Декабрь" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Ежегодно", 58 | "Ежедневно", 59 | "Ежеквартально", 60 | "Ежемесячно", 61 | "Еженедельно", 62 | "Иногда", 63 | "Никогда", 64 | "Однажды", 65 | "Редко", 66 | "Часто" 67 | ] 68 | } 69 | -------------------------------------------------------------------------------- /mimesis/datasets/sk/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "ne", 5 | "pi", 6 | "po", 7 | "so", 8 | "st", 9 | "ut", 10 | "št" 11 | ], 12 | "name": [ 13 | "nedeľa", 14 | "piatok", 15 | "pondelok", 16 | "sobota", 17 | "streda", 18 | "utorok", 19 | "štvrtok" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d.%m.%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "apr.", 29 | "aug.", 30 | "dec.", 31 | "feb.", 32 | "jan.", 33 | "júl", 34 | "jún", 35 | "mar.", 36 | "máj", 37 | "nov.", 38 | "okt.", 39 | "sep." 40 | ], 41 | "name": [ 42 | "apríl", 43 | "august", 44 | "december", 45 | "február", 46 | "január", 47 | "júl", 48 | "jún", 49 | "marec", 50 | "máj", 51 | "november", 52 | "október", 53 | "september" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "denne", 58 | "mesačne", 59 | "nikdy", 60 | "raz", 61 | "ročne", 62 | "týždenne", 63 | "zriedka" 64 | ] 65 | } 66 | -------------------------------------------------------------------------------- /mimesis/datasets/sk/finance.json: -------------------------------------------------------------------------------- 1 | { 2 | "banks": [ 3 | "Slovenská sporiteľňa, a.s.", 4 | "Tatra banka, a.s.", 5 | "Všeobecná úverová banka, a.s.", 6 | "UniCredit Bank Czech Republic and Slovakia, a.s.", 7 | "ČSOB, a.s.", 8 | "Sberbank Slovensko, a.s.", 9 | "OTP Banka Slovensko, a.s.", 10 | "Privatbanka, a.s.", 11 | "Poštová banka, a.s.", 12 | "J&T Banka, a.s.", 13 | "Prima banka Slovensko, a.s.", 14 | "Expobank CZ a.s., pobočka zahraničnej banky", 15 | "Deutsche Bank AG, pobočka zahraničnej banky", 16 | "Raiffeisen banka, a.s.", 17 | "mBank S.A., pobočka zahraničnej banky", 18 | "ING Bank N.V., pobočka zahraničnej banky", 19 | "Waldviertler Sparkasse Bank AG, pobočka zahraničnej banky" 20 | ], 21 | "company": { 22 | "name": [ 23 | "Kvetináreň", 24 | "Paštikáreň", 25 | "Záhradkáreň", 26 | "Šalátičkáreň", 27 | "Šróbikáreň" 28 | ], 29 | "type": { 30 | "abbr": [ 31 | "a.s.", 32 | "s.r.o." 33 | ], 34 | "title": [ 35 | "Akciová spoločnosť", 36 | "Spoločnosť s ručením obmedzeným" 37 | ] 38 | } 39 | }, 40 | "currency-code": "EUR" 41 | } 42 | -------------------------------------------------------------------------------- /mimesis/datasets/sk/food.json: -------------------------------------------------------------------------------- 1 | { 2 | "dishes": [ 3 | "bravčový rezeň", 4 | "bryndzové halušky", 5 | "pizza", 6 | "vyprážaný syr" 7 | ], 8 | "drinks": [ 9 | "kofola", 10 | "káva", 11 | "pivo", 12 | "slivovica", 13 | "voda", 14 | "víno", 15 | "čaj" 16 | ], 17 | "fruits": [ 18 | "banán", 19 | "broskyňa", 20 | "hruška", 21 | "jablko", 22 | "marhuľa", 23 | "pomaranč", 24 | "slivka" 25 | ], 26 | "spices": [ 27 | "chili" 28 | ], 29 | "vegetables": [ 30 | "mrkva", 31 | "zemiak" 32 | ] 33 | } 34 | -------------------------------------------------------------------------------- /mimesis/datasets/sk/text.json: -------------------------------------------------------------------------------- 1 | { 2 | "alphabet": { 3 | "lowercase": [ 4 | "a", 5 | "á", 6 | "ä", 7 | "b", 8 | "c", 9 | "č", 10 | "d", 11 | "ď", 12 | "e", 13 | "é", 14 | "f", 15 | "g", 16 | "h", 17 | "ch", 18 | "i", 19 | "í", 20 | "j", 21 | "k", 22 | "l", 23 | "ĺ", 24 | "ľ", 25 | "m", 26 | "n", 27 | "ň", 28 | "o", 29 | "ó", 30 | "ô", 31 | "p", 32 | "q", 33 | "r", 34 | "ř", 35 | "s", 36 | "š", 37 | "t", 38 | "ť", 39 | "u", 40 | "ú", 41 | "v", 42 | "w", 43 | "x", 44 | "y", 45 | "ý", 46 | "z", 47 | "ž" 48 | ], 49 | "uppercase": [ 50 | "A", 51 | "Á", 52 | "Ä", 53 | "B", 54 | "C", 55 | "Č", 56 | "D", 57 | "Ď", 58 | "E", 59 | "É", 60 | "F", 61 | "G", 62 | "H", 63 | "Ch", 64 | "I", 65 | "Í", 66 | "J", 67 | "K", 68 | "L", 69 | "Ĺ", 70 | "Ľ", 71 | "M", 72 | "N", 73 | "Ň", 74 | "O", 75 | "Ó", 76 | "Ô", 77 | "P", 78 | "Q", 79 | "R", 80 | "Ř", 81 | "S", 82 | "Š", 83 | "T", 84 | "Ť", 85 | "U", 86 | "Ú", 87 | "V", 88 | "W", 89 | "X", 90 | "Y", 91 | "Ý", 92 | "Z", 93 | "Ž" 94 | ] 95 | }, 96 | "answers": [ 97 | "možno", 98 | "nie", 99 | "áno" 100 | ], 101 | "color": [ 102 | "biela", 103 | "hnedá", 104 | "modrá", 105 | "sivá", 106 | "zelená", 107 | "červená", 108 | "čierna" 109 | ], 110 | "level": [ 111 | "extrémny", 112 | "kritický", 113 | "nízky", 114 | "stredný", 115 | "veľmi vysoký", 116 | "vysoký" 117 | ], 118 | "quotes": [ 119 | "Učiť sa, učiť sa, učiť sa." 120 | ], 121 | "text": [ 122 | "Strč prst skrz krk." 123 | ], 124 | "words": [ 125 | "žblnknúť" 126 | ] 127 | } -------------------------------------------------------------------------------- /mimesis/datasets/sv/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Ma.", 5 | "Ti.", 6 | "On.", 7 | "To.", 8 | "Fr.", 9 | "Lö.", 10 | "Sö." 11 | ], 12 | "name": [ 13 | "Måndag", 14 | "Tisdag", 15 | "Onsdag", 16 | "Torsdag", 17 | "Fredag", 18 | "Lördag", 19 | "Söndag" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d. %m. %Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Jan.", 29 | "Febr.", 30 | "Mars", 31 | "April", 32 | "Maj", 33 | "Juni", 34 | "Juli", 35 | "Aug.", 36 | "Sept.", 37 | "Okt.", 38 | "Nov.", 39 | "Dec." 40 | ], 41 | "name": [ 42 | "Januari", 43 | "Februari", 44 | "Mars", 45 | "April", 46 | "Maj", 47 | "Juni", 48 | "Juli", 49 | "Augusti", 50 | "September", 51 | "Oktober", 52 | "November", 53 | "December" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "En gång", 58 | "Aldrig", 59 | "Sällan", 60 | "Ofta", 61 | "Dagligen", 62 | "Veckovis", 63 | "Månatlig", 64 | "Årlig" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /mimesis/datasets/tr/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Pzt.", 5 | "Sal.", 6 | "Çrş.", 7 | "Prş.", 8 | "Cum.", 9 | "Cts.", 10 | "Paz." 11 | ], 12 | "name": [ 13 | "Pazartesi", 14 | "Salı", 15 | "Çarşamba", 16 | "Perşembe", 17 | "Cuma", 18 | "Cumartesi", 19 | "Pazar" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d/%m/%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Ock.", 29 | "Şbt.", 30 | "Mar.", 31 | "Nsn.", 32 | "May.", 33 | "Haz.", 34 | "Tem.", 35 | "Ağs.", 36 | "Eyl.", 37 | "Ekm.", 38 | "Kas.", 39 | "Arl." 40 | ], 41 | "name": [ 42 | "Ocak", 43 | "Şubat", 44 | "Mart", 45 | "Nisan", 46 | "Mayıs", 47 | "Haziran", 48 | "Temmuz", 49 | "Ağustos", 50 | "Eylül", 51 | "Ekim", 52 | "Kasım", 53 | "Aralık" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Bir kere", 58 | "Hiç", 59 | "Sıklıkla", 60 | "Günlük", 61 | "Haftalık", 62 | "Aylık", 63 | "Yıllık" 64 | ] 65 | } 66 | -------------------------------------------------------------------------------- /mimesis/datasets/uk/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "abbr": [ 4 | "Пн.", 5 | "Вв.", 6 | "Ср.", 7 | "Чт.", 8 | "Пт.", 9 | "Сб.", 10 | "Нд." 11 | ], 12 | "name": [ 13 | "Понеділок", 14 | "Вівторок", 15 | "Середа", 16 | "Четвер", 17 | "П'ятниця", 18 | "Субота", 19 | "Неділя" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%d.%m.%Y", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "abbr": [ 28 | "Січ.", 29 | "Лют.", 30 | "Бер.", 31 | "Кві.", 32 | "Тра.", 33 | "Чер.", 34 | "Лип.", 35 | "Сер.", 36 | "Вер.", 37 | "Жов.", 38 | "Лис.", 39 | "Гру." 40 | ], 41 | "name": [ 42 | "Січень", 43 | "Лютий", 44 | "Березень", 45 | "Квітень", 46 | "Травень", 47 | "Червень", 48 | "Липень", 49 | "Серпень", 50 | "Вересень", 51 | "Жовтень", 52 | "Листопад", 53 | "Грудень" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "Щорічно", 58 | "Щоденно", 59 | "Щоквартально", 60 | "Щомісячно", 61 | "Щотижнево", 62 | "Іноді", 63 | "Ніколи", 64 | "Один раз", 65 | "Рідко", 66 | "Часто" 67 | ] 68 | } 69 | -------------------------------------------------------------------------------- /mimesis/datasets/zh/datetime.json: -------------------------------------------------------------------------------- 1 | { 2 | "day": { 3 | "name": [ 4 | "星期一", 5 | "星期二", 6 | "星期三", 7 | "星期四", 8 | "星期五", 9 | "星期六", 10 | "星期日" 11 | ], 12 | "abbr": [ 13 | "一", 14 | "二", 15 | "三", 16 | "四", 17 | "五", 18 | "六", 19 | "日" 20 | ] 21 | }, 22 | "formats": { 23 | "date": "%Y-%m-%d", 24 | "time": "%H:%M:%S" 25 | }, 26 | "month": { 27 | "name": [ 28 | "一月", 29 | "二月", 30 | "三月", 31 | "四月", 32 | "五月", 33 | "六月", 34 | "七月", 35 | "八月", 36 | "九月", 37 | "十月", 38 | "十一月", 39 | "十二月" 40 | ], 41 | "abbr": [ 42 | "一月", 43 | "二月", 44 | "三月", 45 | "四月", 46 | "五月", 47 | "六月", 48 | "七月", 49 | "八月", 50 | "九月", 51 | "十月", 52 | "十一月", 53 | "十二月" 54 | ] 55 | }, 56 | "periodicity": [ 57 | "一直", 58 | "通常", 59 | "经常", 60 | "有时", 61 | "很少", 62 | "几乎不", 63 | "从不" 64 | ] 65 | } 66 | -------------------------------------------------------------------------------- /mimesis/entrypoints.py: -------------------------------------------------------------------------------- 1 | """Integrations with other tools that use entrypoints.""" 2 | 3 | from mimesis import random 4 | 5 | 6 | def pytest_randomly_reseed(seed: int) -> None: 7 | """ 8 | This function is called by `pytest-randomly` during `pytest` setup. 9 | 10 | It sets the global seed for every provider / field. 11 | You can still modify the seed with `.reseed()` calls if needed. 12 | """ 13 | random.global_seed = seed 14 | -------------------------------------------------------------------------------- /mimesis/keys.py: -------------------------------------------------------------------------------- 1 | """The module **mimesis.keys** provides a set of key functions. 2 | 3 | Key functions can be applied to fields and fieldsets using the **key** argument. 4 | These functions are applied after the field's value is generated and before the 5 | field is returned to the caller. 6 | """ 7 | 8 | from typing import Any, Callable 9 | 10 | from mimesis.datasets import COMMON_LETTERS, ROMANIZATION_DICT 11 | from mimesis.locales import Locale, validate_locale 12 | from mimesis.random import Random 13 | 14 | __all__ = ["maybe", "romanize"] 15 | 16 | 17 | def romanize(locale: Locale) -> Callable[[str], str]: 18 | """Create a closure function to romanize a given string in the specified locale. 19 | 20 | Supported locales are: 21 | 22 | - Locale.RU (Russian) 23 | - Locale.UK (Ukrainian) 24 | - Locale.KK (Kazakh) 25 | 26 | :param locale: Locale. 27 | :return: A closure that takes a string and returns a romanized string. 28 | """ 29 | locale = validate_locale(locale) 30 | 31 | if locale not in (Locale.RU, Locale.UK, Locale.KK): 32 | raise ValueError(f"Romanization is not available for: {locale}") 33 | 34 | table = str.maketrans({**ROMANIZATION_DICT[locale.value], **COMMON_LETTERS}) 35 | 36 | def key(string: str) -> str: 37 | """Romanize a given string in the specified locale. 38 | 39 | :param string: Cyrillic string. 40 | :return: Romanized string. 41 | """ 42 | return string.translate(table) 43 | 44 | return key 45 | 46 | 47 | def maybe(value: Any, probability: float = 0.5) -> Callable[[Any, Random], Any]: 48 | """Return a closure (a key function). 49 | 50 | The returned closure itself returns either **value** or 51 | the first argument passed to closure with a certain probability (0.5 by default). 52 | 53 | :param value: The value that may be returned. 54 | :param probability: The probability of returning **value**. 55 | :return: A closure that takes two arguments. 56 | """ 57 | 58 | def key(result: Any, random: Random) -> Any: 59 | if 0 < probability <= 1: 60 | value_weight = 1 - probability 61 | (result,) = random.choices( 62 | population=[result, value], 63 | weights=[value_weight, probability], 64 | k=1, 65 | ) 66 | return result 67 | 68 | return key 69 | -------------------------------------------------------------------------------- /mimesis/locales.py: -------------------------------------------------------------------------------- 1 | """This module provides constants for locale-dependent providers.""" 2 | 3 | from mimesis.enums import Locale 4 | from mimesis.exceptions import LocaleError 5 | 6 | __all__ = ["Locale", "validate_locale"] 7 | 8 | 9 | def validate_locale(locale: Locale | str) -> Locale: 10 | if isinstance(locale, str): 11 | try: 12 | return Locale(locale) 13 | except ValueError: 14 | raise LocaleError(locale) 15 | 16 | if not isinstance(locale, Locale): 17 | raise LocaleError(locale) 18 | 19 | return locale 20 | -------------------------------------------------------------------------------- /mimesis/plugins/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/mimesis/plugins/__init__.py -------------------------------------------------------------------------------- /mimesis/providers/__init__.py: -------------------------------------------------------------------------------- 1 | """Contains all the available data providers.""" 2 | 3 | from mimesis.providers.address import Address 4 | from mimesis.providers.base import BaseDataProvider, BaseProvider 5 | from mimesis.providers.binaryfile import BinaryFile 6 | from mimesis.providers.choice import Choice 7 | from mimesis.providers.code import Code 8 | from mimesis.providers.cryptographic import Cryptographic 9 | from mimesis.providers.date import Datetime 10 | from mimesis.providers.development import Development 11 | from mimesis.providers.file import File 12 | from mimesis.providers.finance import Finance 13 | from mimesis.providers.food import Food 14 | from mimesis.providers.generic import Generic 15 | from mimesis.providers.hardware import Hardware 16 | from mimesis.providers.internet import Internet 17 | from mimesis.providers.numeric import Numeric 18 | from mimesis.providers.path import Path 19 | from mimesis.providers.payment import Payment 20 | from mimesis.providers.person import Person 21 | from mimesis.providers.science import Science 22 | from mimesis.providers.text import Text 23 | from mimesis.providers.transport import Transport 24 | 25 | __all__ = [ 26 | # Base classes: 27 | "BaseProvider", 28 | "BaseDataProvider", 29 | # Data providers: 30 | "Address", 31 | "BinaryFile", 32 | "Finance", 33 | "Choice", 34 | "Code", 35 | "Choice", 36 | "Datetime", 37 | "Development", 38 | "File", 39 | "Food", 40 | "Hardware", 41 | "Internet", 42 | "Numeric", 43 | "Path", 44 | "Payment", 45 | "Person", 46 | "Science", 47 | "Text", 48 | "Transport", 49 | "Cryptographic", 50 | "Generic", 51 | ] 52 | -------------------------------------------------------------------------------- /mimesis/providers/file.py: -------------------------------------------------------------------------------- 1 | """File data provider.""" 2 | 3 | from mimesis.datasets import EXTENSIONS, FILENAMES, MIME_TYPES 4 | from mimesis.enums import FileType, MimeType 5 | from mimesis.providers.base import BaseProvider 6 | 7 | __all__ = ["File"] 8 | 9 | 10 | class File(BaseProvider): 11 | """Class for generate data related to files.""" 12 | 13 | class Meta: 14 | name = "file" 15 | 16 | def extension(self, file_type: FileType | None = None) -> str: 17 | """Generates a random file extension. 18 | 19 | :param file_type: Enum object FileType. 20 | :return: Extension of the file. 21 | 22 | :Example: 23 | .py 24 | """ 25 | key = self.validate_enum(item=file_type, enum=FileType) 26 | extensions = EXTENSIONS[key] 27 | return self.random.choice(extensions) 28 | 29 | def mime_type(self, type_: MimeType | None = None) -> str: 30 | """Generates a random mime type. 31 | 32 | :param type_: Enum object MimeType. 33 | :return: Mime type. 34 | """ 35 | key = self.validate_enum(item=type_, enum=MimeType) 36 | types = MIME_TYPES[key] 37 | return self.random.choice(types) 38 | 39 | def size(self, minimum: int = 1, maximum: int = 100) -> str: 40 | """Generates a random file size as string. 41 | 42 | :param minimum: Maximum value. 43 | :param maximum: Minimum value. 44 | :return: Size of file. 45 | 46 | :Example: 47 | 56 kB 48 | """ 49 | num = self.random.randint(minimum, maximum) 50 | unit = self.random.choice(["bytes", "kB", "MB", "GB", "TB"]) 51 | return f"{num} {unit}" 52 | 53 | def file_name(self, file_type: FileType | None = None) -> str: 54 | """Generates a random file name with an extension. 55 | 56 | :param file_type: Enum object FileType 57 | :return: File name. 58 | 59 | :Example: 60 | legislative.txt 61 | """ 62 | ext = self.extension(file_type) 63 | name = self.random.choice(FILENAMES) 64 | return f"{name}{ext}" 65 | -------------------------------------------------------------------------------- /mimesis/providers/food.py: -------------------------------------------------------------------------------- 1 | """Provides data related to food.""" 2 | 3 | from mimesis.providers.base import BaseDataProvider 4 | 5 | __all__ = ["Food"] 6 | 7 | 8 | class Food(BaseDataProvider): 9 | """Class for generating data related to food.""" 10 | 11 | class Meta: 12 | name = "food" 13 | datafile = f"{name}.json" 14 | 15 | def _choice_from(self, key: str) -> str: 16 | """Choice random element.""" 17 | data: list[str] = self._extract([key]) 18 | return self.random.choice(data) 19 | 20 | def vegetable(self) -> str: 21 | """Generates a random vegetable name. 22 | 23 | :return: Vegetable name. 24 | 25 | :Example: 26 | Tomato. 27 | """ 28 | return self._choice_from("vegetables") 29 | 30 | def fruit(self) -> str: 31 | """Generates a random fruit or berry name. 32 | 33 | :return: Fruit name. 34 | 35 | :Example: 36 | Banana. 37 | """ 38 | return self._choice_from("fruits") 39 | 40 | def dish(self) -> str: 41 | """Generates a random dish name. 42 | 43 | :return: Dish name. 44 | 45 | :Example: 46 | Ratatouille. 47 | """ 48 | return self._choice_from("dishes") 49 | 50 | def spices(self) -> str: 51 | """Generates a random spices/herb name. 52 | 53 | :return: The name of the spices or herbs. 54 | 55 | :Example: 56 | Anise. 57 | """ 58 | return self._choice_from("spices") 59 | 60 | def drink(self) -> str: 61 | """Generates a random drink name. 62 | 63 | :return: Drink name. 64 | 65 | :Example: 66 | Vodka. 67 | """ 68 | return self._choice_from("drinks") 69 | -------------------------------------------------------------------------------- /mimesis/providers/generic.pyi: -------------------------------------------------------------------------------- 1 | import typing as t 2 | 3 | from mimesis import providers 4 | from mimesis.locales import Locale 5 | from mimesis.providers.base import BaseProvider 6 | from mimesis.types import Seed 7 | 8 | __all__ = ["Generic"] 9 | 10 | class Generic(BaseProvider): 11 | locale: Locale 12 | # Locale-dependent providers 13 | person: providers.Person 14 | text: providers.Text 15 | address: providers.Address 16 | finance: providers.Finance 17 | datetime: providers.Datetime 18 | food: providers.Food 19 | 20 | # Locale-independent providers 21 | cryptographic: providers.Cryptographic 22 | binaryfile: providers.BinaryFile 23 | file: providers.File 24 | code: providers.Code 25 | path: providers.Path 26 | choice: providers.Choice 27 | numeric: providers.Numeric 28 | payment: providers.Payment 29 | hardware: providers.Hardware 30 | development: providers.Development 31 | internet: providers.Internet 32 | science: providers.Science 33 | transport: providers.Transport 34 | 35 | def __init__(self, locale: Locale = ..., seed: Seed = ...) -> None: ... 36 | 37 | class Meta: 38 | name: t.Final[str] 39 | def __getattr__(self, attrname: str) -> t.Any: ... 40 | def __dir__(self) -> list[str]: ... 41 | def reseed(self, seed: Seed = ...) -> None: ... 42 | def add_provider(self, cls: t.Type[BaseProvider], **kwargs: t.Any) -> None: ... 43 | def add_providers(self, *providers: t.Type[BaseProvider]) -> None: ... 44 | def __iadd__(self, other: t.Type[BaseProvider]) -> Generic: ... 45 | -------------------------------------------------------------------------------- /mimesis/providers/science.py: -------------------------------------------------------------------------------- 1 | """Provides pseudo-scientific data.""" 2 | 3 | from mimesis.datasets import SI_PREFIXES, SI_PREFIXES_SYM 4 | from mimesis.enums import MeasureUnit, MetricPrefixSign 5 | from mimesis.providers.base import BaseProvider 6 | 7 | __all__ = ["Science"] 8 | 9 | 10 | class Science(BaseProvider): 11 | """Class for generating pseudo-scientific data.""" 12 | 13 | class Meta: 14 | name = "science" 15 | 16 | def rna_sequence(self, length: int = 10) -> str: 17 | """Generates a random RNA sequence. 18 | 19 | :param length: Length of block. 20 | :return: RNA sequence. 21 | 22 | :Example: 23 | AGUGACACAA 24 | """ 25 | return self.random._generate_string("UCGA", length) 26 | 27 | def dna_sequence(self, length: int = 10) -> str: 28 | """Generates a random DNA sequence. 29 | 30 | :param length: Length of block. 31 | :return: DNA sequence. 32 | 33 | :Example: 34 | GCTTTAGACC 35 | """ 36 | return self.random._generate_string("TCGA", length) 37 | 38 | def measure_unit( 39 | self, 40 | name: MeasureUnit | None = None, 41 | symbol: bool = False, 42 | ) -> str: 43 | """Returns unit name from the International System of Units. 44 | 45 | :param name: Enum object UnitName. 46 | :param symbol: Return only symbol 47 | :return: Unit. 48 | """ 49 | result: tuple[str, str] = self.validate_enum( 50 | item=name, 51 | enum=MeasureUnit, 52 | ) 53 | 54 | if symbol: 55 | return result[1] 56 | return result[0] 57 | 58 | def metric_prefix( 59 | self, sign: MetricPrefixSign | None = None, symbol: bool = False 60 | ) -> str: 61 | """Generates a random prefix for the International System of Units. 62 | 63 | :param sign: Sing of prefix (positive/negative). 64 | :param symbol: Return the symbol of the prefix. 65 | :return: Metric prefix for SI measure units. 66 | :raises NonEnumerableError: if sign is not supported. 67 | 68 | :Example: 69 | mega 70 | """ 71 | prefixes = SI_PREFIXES_SYM if symbol else SI_PREFIXES 72 | 73 | key = self.validate_enum(item=sign, enum=MetricPrefixSign) 74 | return self.random.choice(prefixes[key]) 75 | -------------------------------------------------------------------------------- /mimesis/providers/transport.py: -------------------------------------------------------------------------------- 1 | """Provides data related to transports.""" 2 | 3 | from mimesis.datasets import ( 4 | AIRPLANES, 5 | AUTO_MANUFACTURERS, 6 | CARS, 7 | VR_CODES, 8 | VRC_BY_LOCALES, 9 | ) 10 | from mimesis.locales import Locale 11 | from mimesis.providers.base import BaseProvider 12 | 13 | __all__ = ["Transport"] 14 | 15 | 16 | class Transport(BaseProvider): 17 | """Class for generating data related to transports.""" 18 | 19 | class Meta: 20 | name = "transport" 21 | 22 | def manufacturer(self) -> str: 23 | """Generates a random car manufacturer. 24 | 25 | :return: A car manufacturer 26 | 27 | :Example: 28 | Tesla. 29 | """ 30 | return self.random.choice(AUTO_MANUFACTURERS) 31 | 32 | def car(self) -> str: 33 | """Generates a random vehicle name. 34 | 35 | :return: A vehicle. 36 | 37 | :Example: 38 | Tesla Model S. 39 | """ 40 | return self.random.choice(CARS) 41 | 42 | def airplane(self) -> str: 43 | """Generates a random airplane model name. 44 | 45 | :return: Airplane model. 46 | 47 | :Example: 48 | Boeing 727. 49 | """ 50 | return self.random.choice(AIRPLANES) 51 | 52 | def vehicle_registration_code(self, locale: Locale | None = None) -> str: 53 | """Returns vehicle registration code. 54 | 55 | :param locale: Registration code for locale (country). 56 | :return: Vehicle registration code. 57 | """ 58 | if locale: 59 | return VRC_BY_LOCALES[locale.value] 60 | 61 | return self.random.choice(VR_CODES) 62 | -------------------------------------------------------------------------------- /mimesis/py.typed: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /mimesis/shortcuts.py: -------------------------------------------------------------------------------- 1 | """This module provides internal util functions.""" 2 | 3 | 4 | def luhn_checksum(num: str) -> str: 5 | """Calculate a checksum for num using the Luhn algorithm. 6 | 7 | Used to validate credit card numbers, IMEI numbers, 8 | and other identification numbers. 9 | 10 | :param num: The number to calculate a checksum for as a string. 11 | :return: Checksum for number. 12 | """ 13 | check = 0 14 | for i, s in enumerate(reversed(num)): 15 | sx = int(s) 16 | if i % 2 == 0: 17 | sx *= 2 18 | if sx > 9: 19 | sx -= 9 20 | check += sx 21 | return str(check * 9 % 10) 22 | -------------------------------------------------------------------------------- /mimesis/types.py: -------------------------------------------------------------------------------- 1 | """ 2 | This module contains knowledge about the types we use. 3 | 4 | Policy 5 | ~~~~~~ 6 | 7 | If any of the following statements is true, move the type to this file: 8 | 9 | - if type is used in multiple files 10 | - if type is complex enough it has to be documented 11 | - if type is very important for the public API 12 | 13 | """ 14 | 15 | import datetime 16 | from decimal import Decimal 17 | from typing import Any, Callable, Final 18 | 19 | __all__ = [ 20 | "CallableSchema", 21 | "Date", 22 | "DateTime", 23 | "JSON", 24 | "Key", 25 | "Keywords", 26 | "Matrix", 27 | "MissingSeed", 28 | "Seed", 29 | "Time", 30 | "Timestamp", 31 | ] 32 | 33 | JSON = dict[str, Any] 34 | 35 | DateTime = datetime.datetime 36 | 37 | Time = datetime.time 38 | 39 | Date = datetime.date 40 | 41 | Timestamp = str | int 42 | 43 | 44 | class _MissingSeed: 45 | """We use this type as a placeholder for cases when seed is not set.""" 46 | 47 | 48 | MissingSeed: Final = _MissingSeed() 49 | 50 | Seed = None | int | float | str | bytes | bytearray | _MissingSeed 51 | 52 | Keywords = list[str] | set[str] | tuple[str, ...] 53 | 54 | Number = int | float | complex | Decimal 55 | 56 | Matrix = list[list[Number]] 57 | 58 | CallableSchema = Callable[[], JSON] 59 | 60 | Key = Callable[[Any], Any] | None 61 | -------------------------------------------------------------------------------- /scripts/clean.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | find . -name '*.pyc' -exec rm -f {} + 4 | find . -name '*.pyo' -exec rm -f {} + 5 | find . -name '*~' -exec rm -f {} + 6 | find . -name '__pycache__' -exec rm -fr {} + 7 | rm -rf build/ dist/ .cache/ .mypy_cache/ .pytest_cache/ .benchmarks/ docs/_build mimesis.egg-info/ .ipynb_checkpoints/ .ruff_cache/ 8 | rm -f .coverage coverage.xml 9 | -------------------------------------------------------------------------------- /scripts/docs.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | rm -rf docs/_build/ 4 | make -C docs html 5 | -------------------------------------------------------------------------------- /scripts/format.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | 5 | # Pass `CHECK=1' to use this file in CI. 6 | : ${CHECK:=''} 7 | 8 | if [[ "$CHECK" == '0' ]]; then 9 | CHECK='' # 0 is semantically equivalent to '' 10 | fi 11 | if [[ ! -z "$CHECK" ]]; then 12 | CHECK='--check' 13 | echo 'Running lint check' 14 | fi 15 | 16 | uv run isort mimesis tests $CHECK 17 | uv run black mimesis tests $CHECK 18 | uv run autoflake \ 19 | --remove-all-unused-imports \ 20 | --recursive \ 21 | --remove-unused-variables \ 22 | --in-place \ 23 | --exclude=__init__.py \ 24 | --quiet \ 25 | mimesis tests $CHECK 26 | -------------------------------------------------------------------------------- /scripts/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | uv run mypy mimesis 4 | uv run pytest --cov=mimesis --cov-report=xml --randomly-seed=$RANDOM 5 | -------------------------------------------------------------------------------- /tasks/minifier.py: -------------------------------------------------------------------------------- 1 | import json 2 | from pathlib import Path 3 | from typing import Iterable 4 | 5 | from colorama import Fore, Style 6 | 7 | MIMESIS_DIR = Path(__file__).parent.parent.joinpath("mimesis") 8 | 9 | 10 | def human_repr(num: float) -> str: 11 | for unit in ["B", "KB", "MB"]: 12 | if abs(num) < 1024.0: 13 | return f"{num:3.1f}{unit}" 14 | num /= 1024.0 15 | return f"{num:.1f}" 16 | 17 | 18 | class Minimizer: 19 | """Minify content of all json files for all locales.""" 20 | 21 | def __init__(self, *, files: Iterable[Path]) -> None: 22 | """Find all files of all locales.""" 23 | self.files = files 24 | self.before_total = 0 25 | self.after_total = 0 26 | 27 | def run(self) -> None: 28 | """Start json minimizer and exit when all json files were minimized.""" 29 | for file in self.files: 30 | self.minify(file) 31 | 32 | after = human_repr(self.after_total) 33 | before = human_repr(self.before_total) 34 | saved = human_repr(self.before_total - self.after_total) 35 | 36 | info = ( 37 | "\nTotal: " 38 | f"{Fore.LIGHTGREEN_EX}{before}{Style.RESET_ALL} -> {Fore.LIGHTGREEN_EX}{after}{Style.RESET_ALL}. " 39 | f"Compressed: {Fore.LIGHTGREEN_EX}{saved}{Style.RESET_ALL}\n" 40 | ) 41 | print(info) 42 | 43 | def minify(self, file: Path) -> None: 44 | size_before = file.stat().st_size 45 | self.before_total += size_before 46 | before = human_repr(size_before) 47 | 48 | minimized = json.dumps( 49 | json.loads(file.read_text()), separators=(",", ":"), ensure_ascii=False 50 | ) 51 | file.write_text(minimized) 52 | 53 | size_after = file.stat().st_size 54 | self.after_total += size_after 55 | after = human_repr(size_after) 56 | 57 | rel_file = file.relative_to(file.parent.parent) 58 | info = ( 59 | f"{Fore.BLUE}{str(rel_file):<30}{Style.RESET_ALL} : " 60 | f"{Fore.LIGHTGREEN_EX}minimized{Style.RESET_ALL} : " 61 | f"{Fore.YELLOW}{before:<7}{Style.RESET_ALL} -> {Fore.LIGHTGREEN_EX}{after:<7}{Style.RESET_ALL}" 62 | ) 63 | print(info) 64 | 65 | 66 | if __name__ == "__main__": # pragma: no cover 67 | data_dir = MIMESIS_DIR / "datasets" 68 | files = sorted(data_dir.rglob("*.json")) 69 | Minimizer(files=files).run() 70 | -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/tests/__init__.py -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | import mimesis 4 | from mimesis.locales import Locale 5 | 6 | platform = ["win32", "linux"] 7 | 8 | 9 | @pytest.fixture 10 | def seed(): 11 | return "mimesis" 12 | 13 | 14 | @pytest.fixture(params=Locale.values()) 15 | def generic(request): 16 | return mimesis.Generic(request.param) 17 | 18 | 19 | @pytest.fixture(params=Locale.values()) 20 | def address(request): 21 | return mimesis.Address(request.param) 22 | 23 | 24 | @pytest.fixture(params=Locale.values()) 25 | def finance(request): 26 | return mimesis.Finance(request.param) 27 | 28 | 29 | @pytest.fixture(params=Locale.values()) 30 | def dt(request): 31 | return mimesis.Datetime(request.param) 32 | 33 | 34 | @pytest.fixture(params=Locale.values()) 35 | def food(request): 36 | return mimesis.Food(request.param) 37 | 38 | 39 | @pytest.fixture(params=Locale.values()) 40 | def person(request): 41 | return mimesis.Person(request.param) 42 | 43 | 44 | @pytest.fixture(params=Locale.values()) 45 | def text(request): 46 | return mimesis.Text(request.param) 47 | 48 | 49 | @pytest.fixture(params=platform) 50 | def path(request): 51 | return mimesis.Path(request.param) 52 | -------------------------------------------------------------------------------- /tests/test_builtins/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/tests/test_builtins/__init__.py -------------------------------------------------------------------------------- /tests/test_builtins/test_brazil_spec.py: -------------------------------------------------------------------------------- 1 | import re 2 | 3 | import pytest 4 | 5 | from mimesis.builtins import BrazilSpecProvider 6 | 7 | 8 | @pytest.fixture 9 | def pt_br(): 10 | return BrazilSpecProvider() 11 | 12 | 13 | def test_cpf(pt_br): 14 | # test if the cpf has 14 digits with the mask 15 | cpf_with_mask = pt_br.cpf() 16 | assert len(cpf_with_mask) == 14 17 | 18 | # test the mask 19 | non_numeric_digits = re.sub(r"\d", "", cpf_with_mask) 20 | assert "..-" == non_numeric_digits == non_numeric_digits 21 | assert len(re.sub(r"\D", "", cpf_with_mask)) == 11 22 | 23 | # test for the cpf without mask 24 | cpf_without_mask = pt_br.cpf(False) 25 | assert len(cpf_without_mask) == 11 26 | non_numeric_digits = re.sub(r"\d", "", cpf_without_mask) 27 | assert "" == non_numeric_digits 28 | 29 | 30 | def test_cnpj(pt_br): 31 | # test if the cnpj has 18 digits with the mask 32 | cnpj_with_mask = pt_br.cnpj() 33 | assert len(cnpj_with_mask) == 18 34 | 35 | # test the mask 36 | non_numeric_digits = re.sub(r"\d", "", cnpj_with_mask) 37 | assert "../-" == non_numeric_digits == non_numeric_digits 38 | assert len(re.sub(r"\D", "", cnpj_with_mask)) == 14 39 | 40 | # test for the cnpj without mask 41 | cnpj_without_mask = pt_br.cnpj(False) 42 | assert len(cnpj_without_mask) == 14 43 | non_numeric_digits = re.sub(r"\d", "", cnpj_without_mask) 44 | assert "" == non_numeric_digits 45 | -------------------------------------------------------------------------------- /tests/test_builtins/test_denmark_spec.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | from mimesis.builtins import DenmarkSpecProvider 4 | 5 | 6 | @pytest.fixture 7 | def denmark(): 8 | return DenmarkSpecProvider() 9 | 10 | 11 | @pytest.mark.parametrize( 12 | "cpr_nr_no_checksum,checksum", 13 | [ 14 | # Randomly generated CPR numbers and expected checksums 15 | ("060170000", 10), # 00 is an invalid serial_number here 16 | ("260310579", 9), 17 | ("060558958", 8), 18 | ("210609428", 7), 19 | ("171208281", 6), 20 | ("130208400", 5), 21 | ("020678688", 4), 22 | ("050302471", 3), 23 | ("030670890", 2), 24 | ("100309468", 1), 25 | ("250814378", 0), 26 | ], 27 | ) 28 | def test_calculate_checksum(denmark, cpr_nr_no_checksum, checksum): 29 | assert denmark._calculate_checksum(cpr_nr_no_checksum) == checksum 30 | 31 | 32 | def test_cpr(denmark): 33 | cpr_number = denmark.cpr() 34 | assert cpr_number is not None 35 | assert len(cpr_number) == 10 36 | 37 | 38 | @pytest.mark.parametrize( 39 | "year, expected_values", 40 | [ 41 | ("1234", TypeError), 42 | (-1, ValueError), 43 | (1857, ValueError), 44 | (1858, [5, 6, 7, 8]), 45 | (1888, [5, 6, 7, 8]), 46 | (1900, [0, 1, 2, 3]), 47 | (1921, [0, 1, 2, 3]), 48 | (1937, [4, 9]), 49 | (1942, [4, 9]), 50 | (1999, [4, 9]), 51 | (2000, [4, 5, 6, 7, 8, 9]), 52 | (2021, [4, 5, 6, 7, 8, 9]), 53 | (2037, ValueError), 54 | (2222, ValueError), 55 | ], 56 | ) 57 | def test_calculate_century_selector(denmark, year, expected_values): 58 | if isinstance(expected_values, list): 59 | assert denmark._calculate_century_selector(year) in expected_values 60 | else: 61 | with pytest.raises(expected_values): 62 | denmark._calculate_century_selector(year) 63 | -------------------------------------------------------------------------------- /tests/test_builtins/test_italy_spec.py: -------------------------------------------------------------------------------- 1 | import re 2 | 3 | import pytest 4 | 5 | from mimesis.builtins import ItalySpecProvider 6 | from mimesis.enums import Gender 7 | 8 | 9 | @pytest.fixture 10 | def italy(): 11 | return ItalySpecProvider() 12 | 13 | 14 | def test_noun(italy): 15 | result = italy.fiscal_code(gender=Gender.MALE) 16 | assert re.fullmatch( 17 | r"^[A-Z]{6}\d{2}[A-EHLMPR-T][0123][0-9][A-MZ]\d{3}[A-Z]$", result 18 | ) 19 | 20 | result = italy.fiscal_code(gender=Gender.FEMALE) 21 | assert re.fullmatch( 22 | r"^[A-Z]{6}\d{2}[A-EHLMPR-T][4567][0-9][A-MZ]\d{3}[A-Z]$", result 23 | ) 24 | -------------------------------------------------------------------------------- /tests/test_builtins/test_netherlands_spec.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | from mimesis import Generic 4 | from mimesis.builtins import NetherlandsSpecProvider 5 | 6 | 7 | @pytest.fixture 8 | def nl(): 9 | return NetherlandsSpecProvider() 10 | 11 | 12 | def test_bsn(nl): 13 | result = nl.bsn() 14 | assert result is not None 15 | assert len(result) == 9 16 | assert result.isdigit() 17 | 18 | # elaborate way to validate 19 | test11 = ( 20 | int(result[0:1]) * 9 21 | + int(result[1:2]) * 8 22 | + int(result[2:3]) * 7 23 | + int(result[3:4]) * 6 24 | + int(result[4:5]) * 5 25 | + int(result[5:6]) * 4 26 | + int(result[6:7]) * 3 27 | + int(result[7:8]) * 2 28 | + int(result[8:9]) * -1 29 | ) 30 | assert test11 % 11 == 0 31 | 32 | 33 | def test_burgerservicenummer(nl): 34 | assert nl.burgerservicenummer() 35 | 36 | 37 | def test_nl_meta(): 38 | generic = Generic("nl") 39 | generic.add_provider(NetherlandsSpecProvider) 40 | result = generic.netherlands_provider.bsn() 41 | assert result is not None 42 | assert len(result) == 9 43 | -------------------------------------------------------------------------------- /tests/test_builtins/test_poland_spec.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | from mimesis.builtins.pl import PolandSpecProvider 4 | from mimesis.enums import Gender 5 | from mimesis.providers import Datetime 6 | 7 | 8 | def validate_nip(nip): 9 | """Validate NIP. 10 | 11 | :param nip: nip to validate 12 | :return: True if nip is valid, False otherwise 13 | """ 14 | nip_digits = list(map(int, nip)) 15 | args = (6, 5, 7, 2, 3, 4, 5, 6, 7) 16 | sum_v = sum(map(lambda x: x[0] * x[1], zip(args, nip_digits))) 17 | checksum_digit = sum_v % 11 18 | return nip_digits[-1] == checksum_digit 19 | 20 | 21 | def validate_pesel(pesel): 22 | """Validate PESEL. 23 | 24 | :param pesel: pesel to validate 25 | :return: True if pesel is valid, False otherwise 26 | """ 27 | pesel_digits = list(map(int, pesel)) 28 | args = (9, 7, 3, 1, 9, 7, 3, 1, 9, 7) 29 | sum_v = sum(map(lambda x: x[0] * x[1], zip(args, pesel_digits))) 30 | return pesel_digits[-1] == (sum_v % 10) 31 | 32 | 33 | def validate_regon(regon): 34 | """Validate REGON. 35 | 36 | :param regon: regon to validate 37 | :return: True if pesel is valid, False otherwise 38 | """ 39 | regon_digits = list(map(int, regon)) 40 | args = (8, 9, 2, 3, 4, 5, 6, 7) 41 | sum_v = sum(map(lambda x: x[0] * x[1], zip(args, regon_digits))) 42 | checksum_digit = sum_v % 11 43 | if checksum_digit > 9: 44 | return regon_digits[-1] == 0 45 | return regon_digits[-1] == checksum_digit 46 | 47 | 48 | @pytest.fixture 49 | def pl(): 50 | return PolandSpecProvider() 51 | 52 | 53 | def test_nip(pl): 54 | nip = pl.nip() 55 | assert len(nip) == 10 56 | assert validate_nip(nip) 57 | 58 | 59 | @pytest.mark.parametrize( 60 | "gender", 61 | [ 62 | Gender.FEMALE, 63 | Gender.MALE, 64 | None, 65 | ], 66 | ) 67 | def test_pesel(pl, gender): 68 | pesel = pl.pesel(gender=gender) 69 | assert len(pesel) == 11 70 | assert validate_pesel(pesel) 71 | 72 | birth_date = Datetime().datetime() 73 | pesel = pl.pesel(birth_date=birth_date, gender=Gender.MALE) 74 | assert len(pesel) == 11 75 | assert validate_pesel(pesel) 76 | 77 | 78 | def test_regon(pl): 79 | regon = pl.regon() 80 | assert len(regon) == 9 81 | assert validate_regon(regon) 82 | -------------------------------------------------------------------------------- /tests/test_builtins/test_russia_spec.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | from mimesis.builtins import RussiaSpecProvider 4 | from mimesis.enums import Gender 5 | from mimesis.exceptions import NonEnumerableError 6 | 7 | 8 | @pytest.fixture 9 | def russia(): 10 | return RussiaSpecProvider() 11 | 12 | 13 | def test_passport_series(russia): 14 | series = russia.passport_series() 15 | assert isinstance(series.split(" "), list) 16 | 17 | 18 | def test_passport_series_parametrized(russia): 19 | series = russia.passport_series(year=10) 20 | region, year = series.split(" ") 21 | assert int(year) == 10 22 | assert 0 < int(region) < 100 23 | 24 | 25 | def test_passport_number(russia): 26 | result = russia.passport_number() 27 | assert isinstance(result, int) 28 | assert (result <= 999999) and (result >= 100000) 29 | 30 | 31 | def test_series_and_number(russia): 32 | result = russia.series_and_number() 33 | assert result is not None 34 | 35 | 36 | @pytest.mark.parametrize( 37 | "gender", 38 | [ 39 | Gender.FEMALE, 40 | Gender.MALE, 41 | ], 42 | ) 43 | def test_patronymic(russia, gender): 44 | result = russia.patronymic(gender=gender) 45 | 46 | assert result is not None 47 | assert len(result) >= 4 48 | 49 | with pytest.raises(NonEnumerableError): 50 | russia.patronymic(gender="nil") 51 | 52 | 53 | def test_generate_sentence(russia): 54 | result = russia.generate_sentence() 55 | assert len(result) >= 20 56 | assert isinstance(result, str) 57 | 58 | 59 | def test_snils(russia): 60 | result = russia.snils() 61 | assert len(result) == 11 62 | 63 | 64 | def test_inn(russia): 65 | result = russia.inn() 66 | assert isinstance(result, str) 67 | assert result is not None 68 | 69 | 70 | def test_ogrn(russia): 71 | result = russia.ogrn() 72 | assert len(result) == 13 73 | 74 | 75 | def test_bic(russia): 76 | result = russia.bic() 77 | assert len(result) == 9 78 | 79 | 80 | def test_kpp(russia): 81 | result = russia.kpp() 82 | assert len(result) == 9 83 | -------------------------------------------------------------------------------- /tests/test_builtins/test_ukraine_spec.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | from mimesis.builtins import UkraineSpecProvider 4 | from mimesis.enums import Gender 5 | from mimesis.exceptions import NonEnumerableError 6 | 7 | 8 | @pytest.fixture 9 | def ukraine(): 10 | return UkraineSpecProvider() 11 | 12 | 13 | @pytest.mark.parametrize( 14 | "gender", 15 | [ 16 | Gender.FEMALE, 17 | Gender.MALE, 18 | ], 19 | ) 20 | def test_patronymic(ukraine, gender): 21 | result = ukraine.patronymic(gender=gender) 22 | 23 | assert result is not None 24 | assert len(result) >= 4 25 | 26 | with pytest.raises(NonEnumerableError): 27 | ukraine.patronymic(gender="nil") 28 | -------------------------------------------------------------------------------- /tests/test_builtins/test_usa_spec.py: -------------------------------------------------------------------------------- 1 | import re 2 | 3 | import pytest 4 | 5 | from mimesis.builtins import USASpecProvider 6 | 7 | 8 | @pytest.fixture 9 | def usa(): 10 | return USASpecProvider() 11 | 12 | 13 | @pytest.mark.parametrize( 14 | "service, length", 15 | [ 16 | ("usps", 24), 17 | ("fedex", 18), 18 | ("ups", 18), 19 | ], 20 | ) 21 | def test_usps_tracking_number(usa, service, length): 22 | result = usa.tracking_number(service=service) 23 | assert result is not None 24 | assert len(result) <= length 25 | 26 | with pytest.raises(ValueError): 27 | usa.tracking_number(service="x") 28 | 29 | 30 | def test_ssn(usa, mocker): 31 | result = usa.ssn() 32 | assert result is not None 33 | assert "666" != result[:3] 34 | assert re.match(r"^\d{3}-\d{2}-\d{4}$", result) 35 | assert result.replace("-", "").isdigit() 36 | assert len(result.replace("-", "")) == 9 37 | 38 | mocker.patch.object(usa.random, "randint", return_value=666) 39 | result = usa.ssn() 40 | assert "665" == result[:3] 41 | -------------------------------------------------------------------------------- /tests/test_entrypoints.py: -------------------------------------------------------------------------------- 1 | """Ensure that integrations work as planned.""" 2 | 3 | from mimesis import random 4 | from mimesis.types import MissingSeed 5 | 6 | 7 | def test_pytest_randomly(pytestconfig): 8 | try: 9 | randomly_seed = pytestconfig.getoption("randomly_seed") 10 | except ValueError: 11 | # Uninstall `pytest-randomly` to trigger this error. 12 | randomly_seed = MissingSeed 13 | 14 | assert random.global_seed == randomly_seed 15 | -------------------------------------------------------------------------------- /tests/test_keys.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | from mimesis.exceptions import LocaleError 4 | from mimesis.keys import maybe, romanize 5 | from mimesis.locales import Locale 6 | from mimesis.random import random 7 | 8 | ROMANIZE_INPUT_PARAMETERS = [ 9 | (Locale.RU, "Ликид Геимфари", "Likid Geimfari"), 10 | (Locale.RU, "Что-то там_4352-!@", "Chto-to tam_4352-!@"), 11 | ( 12 | Locale.RU, 13 | " ".join("АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя"), 14 | ( 15 | "A B V G D E Yo Zh Z I Ye K L M N O P R S T U F Kh Ts " 16 | "Ch Sh Shch Y E Yu Ja a b v g d e yo zh z i ye k l m n" 17 | " o p r s t u f kh ts ch sh shch y e yu ja" 18 | ), 19 | ), 20 | (Locale.UK, "Українська мова!", "Ukrayins’ka mova!"), 21 | (Locale.UK, "Щось там_4352-!@", "Shchos’ tam_4352-!@"), 22 | ( 23 | Locale.KK, 24 | "Python - ең жақсы бағдарламалау тілі!", 25 | "Python - eñ zhaqsy bağdarlamalau tili!", 26 | ), 27 | ] 28 | 29 | 30 | def test_maybe(): 31 | key = maybe(None, probability=1) 32 | assert key("foo", random) is None 33 | 34 | key = maybe(None, probability=0.0) 35 | assert key("foo", random) is not None 36 | 37 | 38 | @pytest.mark.parametrize( 39 | "locale, string, expected", 40 | ROMANIZE_INPUT_PARAMETERS, 41 | ) 42 | def test_romanize_cyrillic_string(locale, string, expected): 43 | assert romanize(locale)(string) == expected 44 | 45 | 46 | def test_romanize_invalid_locale(): 47 | with pytest.raises(LocaleError): 48 | romanize(locale="sindarin") # type: ignore 49 | 50 | 51 | def test_romanize_unsupported_locale(): 52 | with pytest.raises(ValueError): 53 | romanize(locale=Locale.DE) 54 | 55 | 56 | def test_romanize_missing_positional_arguments(): 57 | with pytest.raises(TypeError): 58 | romanize() # type: ignore 59 | 60 | with pytest.raises(TypeError): 61 | romanize(locale=Locale.RU)() # type: ignore 62 | -------------------------------------------------------------------------------- /tests/test_locales.py: -------------------------------------------------------------------------------- 1 | from enum import Enum 2 | 3 | import pytest 4 | 5 | from mimesis.exceptions import LocaleError 6 | from mimesis.locales import Locale, validate_locale 7 | 8 | SUPPORTED_LOCALES_COUNT = 48 9 | 10 | 11 | def test_locale_enum(): 12 | assert len(list(Locale)) == SUPPORTED_LOCALES_COUNT 13 | assert issubclass(Locale, Enum) 14 | 15 | 16 | def test_validate_locale_missing_locale(): 17 | with pytest.raises(TypeError): 18 | validate_locale() 19 | 20 | 21 | def test_validate_locale_invalid_locale(): 22 | with pytest.raises(LocaleError): 23 | validate_locale(locale=None) 24 | 25 | with pytest.raises(LocaleError): 26 | validate_locale(locale="nil") 27 | 28 | 29 | def test_validate_locale(): 30 | validated_locale = validate_locale("en") 31 | 32 | assert validated_locale == Locale.EN 33 | assert issubclass(validated_locale.__class__, Enum) 34 | assert isinstance(validate_locale(Locale.EN), Locale) 35 | -------------------------------------------------------------------------------- /tests/test_minifier.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | import pytest 4 | 5 | from tasks.minifier import Minimizer, human_repr 6 | 7 | 8 | def test_human_repr(): 9 | assert human_repr(0) == "0.0B" 10 | assert human_repr(1) == "1.0B" 11 | assert human_repr(100.1) == "100.1B" 12 | assert human_repr(1024) == "1.0KB" 13 | assert human_repr(1024 * 100.1) == "100.1KB" 14 | assert human_repr(1024**2) == "1.0MB" 15 | assert human_repr(1024**2 * 100.1) == "100.1MB" 16 | 17 | 18 | def test_human_repr_cant_handle_gigabytes(): 19 | assert human_repr(1024**3) == "1.0" 20 | 21 | 22 | def test_minimizer_minifies_file(tmp_path): 23 | file = tmp_path / "spam.json" 24 | file.write_text('{\n "spam": [\n "eggs"\n ]\n}') 25 | minifier = Minimizer(files=(file,)) 26 | minifier.run() 27 | assert file.read_text() == '{"spam":["eggs"]}' 28 | 29 | 30 | @pytest.fixture 31 | def disable_colorama_codes(monkeypatch): 32 | from colorama import Fore, Style 33 | 34 | monkeypatch.setattr(Style, "RESET_ALL", "") 35 | for name in vars(Fore).keys(): 36 | if name.upper() == name: 37 | monkeypatch.setattr(Fore, name, "") 38 | 39 | 40 | @pytest.mark.skipif(sys.platform.startswith("win"), reason="windows") 41 | @pytest.mark.usefixtures(disable_colorama_codes.__name__) 42 | def test_minimizer_reports_to_stdout(capsys, tmp_path): 43 | file = tmp_path / "spam.json" 44 | file.write_text("{\n}") 45 | minifier = Minimizer(files=(file,)) 46 | minifier.run() 47 | lines = capsys.readouterr().out.split("\n") 48 | assert lines[0].strip().endswith("3.0B -> 2.0B") 49 | assert lines[2] == "Total: 3.0B -> 2.0B. Compressed: 1.0B" 50 | -------------------------------------------------------------------------------- /tests/test_plugins/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/tests/test_plugins/__init__.py -------------------------------------------------------------------------------- /tests/test_plugins/test_factory/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/tests/test_plugins/test_factory/__init__.py -------------------------------------------------------------------------------- /tests/test_plugins/test_factory/test_field_handlers.py: -------------------------------------------------------------------------------- 1 | import factory 2 | import pytest 3 | from pytest_factoryboy import register 4 | 5 | from mimesis.exceptions import FieldError 6 | from mimesis.plugins.factory import FactoryField 7 | 8 | 9 | class Guest: 10 | def __init__(self, full_name: str, age: int) -> None: 11 | self.age = age 12 | self.full_name = full_name 13 | 14 | 15 | @register 16 | class FactoryWithoutCustomFieldHandlers(factory.Factory): 17 | class Meta(object): 18 | model = Guest 19 | 20 | age = FactoryField("anynum") 21 | full_name = FactoryField("nickname") 22 | 23 | 24 | @register 25 | class FactoryWithCustomFieldHandlers(factory.Factory): 26 | class Meta(object): 27 | model = Guest 28 | 29 | class Params(object): 30 | field_handlers = [ 31 | ("anynum", lambda rand, **kwargs: rand.randint(1, 99)), 32 | ("nickname", lambda rand, **kwargs: rand.choice(["john", "alice"])), 33 | ] 34 | 35 | age = FactoryField("anynum") 36 | full_name = FactoryField("nickname") 37 | 38 | 39 | def test_factory_without_custom_field_handlers(factory_without_custom_field_handlers): 40 | with pytest.raises(FieldError): 41 | factory_without_custom_field_handlers() 42 | 43 | 44 | def test_factory_with_custom_field_handlers(factory_with_custom_field_handlers): 45 | guest = factory_with_custom_field_handlers() 46 | assert isinstance(guest, Guest) 47 | 48 | assert 1 <= guest.age <= 99 49 | assert guest.full_name in ["john", "alice"] 50 | -------------------------------------------------------------------------------- /tests/test_plugins/test_factory/test_field_params.py: -------------------------------------------------------------------------------- 1 | import factory 2 | import pytest 3 | from pytest_factoryboy import register 4 | 5 | from mimesis.enums import Gender 6 | from mimesis.plugins.factory import FactoryField 7 | 8 | MIN_AGE = 30 9 | MAX_AGE = 32 10 | 11 | 12 | class Guest(object): 13 | def __init__(self, full_name, age): 14 | self.full_name = full_name 15 | self.age = age 16 | 17 | 18 | @register 19 | class GuestFactory(factory.Factory): 20 | class Meta(object): 21 | model = Guest 22 | 23 | full_name = FactoryField("full_name", gender=Gender.FEMALE) 24 | age = FactoryField("integer_number", start=MIN_AGE, end=MAX_AGE) 25 | 26 | 27 | def test_guest_factory_different_data(guest_factory): 28 | guest1 = guest_factory() 29 | guest2 = guest_factory() 30 | 31 | assert isinstance(guest1, Guest) 32 | assert isinstance(guest2, Guest) 33 | assert guest1 != guest2 34 | assert guest1.full_name != guest2.full_name 35 | assert MIN_AGE <= guest1.age <= MAX_AGE 36 | assert MIN_AGE <= guest2.age <= MAX_AGE 37 | 38 | 39 | def test_guest_factory_create_batch(guest_factory): 40 | guests = guest_factory.create_batch(50) 41 | names = {guest.full_name for guest in guests} 42 | 43 | assert len(guests) == len(names) 44 | 45 | for guest in guests: 46 | assert isinstance(guest, Guest) 47 | assert MIN_AGE <= guest.age <= MAX_AGE 48 | 49 | 50 | def test_guest_factory_build_batch(guest_factory): 51 | guests = guest_factory.build_batch(50) 52 | names = {guest.full_name for guest in guests} 53 | 54 | assert len(guests) == len(names) 55 | 56 | for guest in guests: 57 | assert isinstance(guest, Guest) 58 | assert MIN_AGE <= guest.age <= MAX_AGE 59 | 60 | 61 | def test_guest_instance_data(guest): 62 | assert isinstance(guest, Guest) 63 | assert guest.full_name != "" 64 | assert MIN_AGE <= guest.age <= MAX_AGE 65 | 66 | 67 | @pytest.mark.parametrize("guest__age", [19]) 68 | def test_guest_data_overrides(guest): 69 | assert isinstance(guest, Guest) 70 | assert guest.full_name != "" 71 | assert guest.age == 19 72 | -------------------------------------------------------------------------------- /tests/test_plugins/test_factory/test_locale_override.py: -------------------------------------------------------------------------------- 1 | import string 2 | 3 | import factory 4 | from pytest_factoryboy import register 5 | 6 | from mimesis.locales import Locale 7 | from mimesis.plugins.factory import FactoryField 8 | 9 | 10 | class Person(object): 11 | def __init__(self, full_name_en: str, full_name_ru: str) -> None: 12 | self._full_name_en = full_name_en 13 | self._full_name_ru = full_name_ru 14 | 15 | @property 16 | def full_name_en(self) -> str: 17 | """Some names have special symbols in them.""" 18 | return self._full_name_en.replace(" ", "").replace("'", "") 19 | 20 | @property 21 | def full_name_ru(self) -> str: 22 | """Some names have special symbols in them.""" 23 | return self._full_name_ru.replace(" ", "").replace("'", "") 24 | 25 | 26 | @register 27 | class PersonFactory(factory.Factory): 28 | class Meta(object): 29 | model = Person 30 | 31 | full_name_en = FactoryField("full_name") 32 | full_name_ru = FactoryField("full_name", locale=Locale.RU) 33 | 34 | 35 | def test_data_with_different_locales(person): 36 | for letter in person.full_name_en: 37 | assert letter in string.ascii_letters 38 | 39 | for russian_letter in person.full_name_ru: 40 | assert russian_letter not in string.ascii_letters 41 | 42 | 43 | def test_data_with_override_locale(person_factory): 44 | with FactoryField.override_locale(Locale.RU): 45 | person = person_factory() 46 | 47 | for letter in person.full_name_en: 48 | # Default locale will be changed to overridden: 49 | assert letter not in string.ascii_letters 50 | 51 | for russian_letter in person.full_name_ru: 52 | assert russian_letter not in string.ascii_letters 53 | 54 | 55 | def test_data_with_override_defined_locale(person_factory): 56 | with FactoryField.override_locale(Locale.EN): 57 | person = person_factory() 58 | 59 | for letter in person.full_name_en: 60 | assert letter in string.ascii_letters 61 | 62 | for russian_letter in person.full_name_ru: 63 | # Keyword locale has a priority over override: 64 | assert russian_letter not in string.ascii_letters 65 | -------------------------------------------------------------------------------- /tests/test_plugins/test_factory/test_raw_factories.py: -------------------------------------------------------------------------------- 1 | import factory 2 | 3 | from mimesis.plugins.factory import FactoryField 4 | 5 | 6 | class User(object): 7 | def __init__(self, uid, email): 8 | self.uid = uid 9 | self.email = email 10 | 11 | 12 | class UserFactory(factory.Factory): 13 | class Meta(object): 14 | model = User 15 | 16 | uid = factory.Sequence(lambda order: order) 17 | email = FactoryField("email") 18 | 19 | 20 | def test_direct_factory(): 21 | users = UserFactory.create_batch(10) 22 | 23 | uids = {user.uid for user in users} 24 | emails = {user.email for user in users} 25 | 26 | assert len(users) == len(emails) 27 | assert len(users) == len(uids) 28 | 29 | 30 | def test_factory_extras(): 31 | user = UserFactory(email="custom@mail.ru") 32 | 33 | assert user.email == "custom@mail.ru" 34 | -------------------------------------------------------------------------------- /tests/test_providers/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lk-geimfari/mimesis/b981966db9b42474fd26470e35098b640d5451e9/tests/test_providers/__init__.py -------------------------------------------------------------------------------- /tests/test_providers/test_binary.py: -------------------------------------------------------------------------------- 1 | import tempfile 2 | 3 | import pytest 4 | 5 | from mimesis.enums import ( 6 | AudioFile, 7 | CompressedFile, 8 | DocumentFile, 9 | ImageFile, 10 | VideoFile, 11 | ) 12 | from mimesis.providers.binaryfile import BinaryFile 13 | 14 | 15 | class TestBinaryFile: 16 | @pytest.fixture 17 | def binary(self): 18 | return BinaryFile() 19 | 20 | @pytest.mark.parametrize( 21 | "method_name, extensions", 22 | [ 23 | ("video", (VideoFile.MP4, VideoFile.MOV)), 24 | ("audio", (AudioFile.MP3, AudioFile.AAC)), 25 | ("image", (ImageFile.PNG, ImageFile.JPG, ImageFile.GIF)), 26 | ("document", (DocumentFile.DOCX, DocumentFile.XLSX, DocumentFile.PDF)), 27 | ("compressed", (CompressedFile.ZIP, CompressedFile.GZIP)), 28 | ], 29 | ) 30 | def test_all_methods(self, binary, method_name, extensions): 31 | method = getattr(binary, method_name) 32 | with pytest.raises(TypeError): 33 | for extension in extensions: 34 | method(extension) 35 | 36 | for extension in extensions: 37 | content = method(file_type=extension) 38 | assert isinstance(content, bytes) 39 | 40 | with tempfile.TemporaryFile() as f: 41 | f.write(content) 42 | -------------------------------------------------------------------------------- /tests/test_providers/test_choice.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | from mimesis import Choice 4 | 5 | 6 | @pytest.fixture 7 | def choice(): 8 | return Choice() 9 | 10 | 11 | @pytest.mark.parametrize( 12 | "items, length", 13 | [ 14 | (["a", "b", "c", "d", "e", "f", "g"], 4), 15 | (["a", "b", "c", "d", "e", "f", "g"], 5), 16 | (["a", "b", "c", "d", "e", "f", "g"], 1), 17 | (("a", "b", "c", "d", "e", "f", "g"), 4), 18 | (("a", "b", "c", "d", "e", "f", "g"), 5), 19 | (("a", "b", "c", "d", "e", "f", "g"), 1), 20 | ("abcdefg", 4), 21 | ("abcdefg", 5), 22 | ("abcdefg", 1), 23 | ], 24 | ) 25 | def test_choice(choice, items, length): 26 | result = choice(items=items, length=length) 27 | assert len(result) == length 28 | assert type(result) is type(items) 29 | 30 | 31 | @pytest.mark.parametrize( 32 | "items", 33 | [ 34 | ["a", "b", "c", "d", "c", "b", "a"], 35 | ("a", "b", "c", "d", "c", "b", "a"), 36 | "abcdcba", 37 | ], 38 | ) 39 | def test_choice_unique(choice, items): 40 | result = choice(items=items, length=4, unique=True) 41 | assert len(result) == len(set(result)) 42 | assert type(result) is type(items) 43 | 44 | 45 | @pytest.mark.parametrize( 46 | "items", 47 | [ 48 | ["a", "b", "c", "d", "e"], 49 | ("a", "b", "c", "d", "e"), 50 | "abcde", 51 | ], 52 | ) 53 | def test_choice_one_element(choice, items): 54 | result = choice(items=items) 55 | assert isinstance(result, str) 56 | 57 | 58 | @pytest.mark.parametrize("n", range(5)) 59 | def test_choice_seed(n): 60 | choice = Choice(seed=0xF1) 61 | items = ["a", "b", "c", "d", "e", "f", "g"] 62 | 63 | result = choice(items=items) 64 | assert result == "f" 65 | 66 | 67 | def test_choice_non_sequence_items(choice): 68 | with pytest.raises(TypeError): 69 | choice(items=5) 70 | 71 | 72 | def test_choice_empty_items(choice): 73 | with pytest.raises(ValueError): 74 | choice(items=[]) 75 | 76 | 77 | def test_choice_negative_length(choice): 78 | with pytest.raises(ValueError): 79 | choice(items=("a", "b"), length=-1) 80 | 81 | 82 | def test_choice_insufficient_unique(choice): 83 | with pytest.raises(ValueError): 84 | choice(items=["a", "b"], length=3, unique=True) 85 | -------------------------------------------------------------------------------- /tests/test_providers/test_food.py: -------------------------------------------------------------------------------- 1 | import re 2 | 3 | import pytest 4 | 5 | from mimesis import Food 6 | 7 | from . import patterns 8 | 9 | 10 | class TestFood: 11 | def test_str(self, food): 12 | assert re.match(patterns.DATA_PROVIDER_STR_REGEX, str(food)) 13 | 14 | def test_vegetable(self, food): 15 | result = food.vegetable() 16 | assert result in food._dataset["vegetables"] 17 | 18 | def test_fruit(self, food): 19 | result = food.fruit() 20 | assert result in food._dataset["fruits"] 21 | 22 | def test_dish(self, food): 23 | result = food.dish() 24 | assert result in food._dataset["dishes"] 25 | 26 | def test_drink(self, food): 27 | result = food.drink() 28 | assert result in food._dataset["drinks"] 29 | 30 | def test_spices(self, food): 31 | result = food.spices() 32 | assert result in food._dataset["spices"] 33 | 34 | 35 | class TestSeededFood: 36 | @pytest.fixture 37 | def fd1(self, seed): 38 | return Food(seed=seed) 39 | 40 | @pytest.fixture 41 | def fd2(self, seed): 42 | return Food(seed=seed) 43 | 44 | def test_vegetable(self, fd1, fd2): 45 | assert fd1.vegetable() == fd2.vegetable() 46 | 47 | def test_fruit(self, fd1, fd2): 48 | assert fd1.fruit() == fd2.fruit() 49 | 50 | def test_dish(self, fd1, fd2): 51 | assert fd1.dish() == fd2.dish() 52 | 53 | def test_drink(self, fd1, fd2): 54 | assert fd1.drink() == fd2.drink() 55 | 56 | def test_spices(self, fd1, fd2): 57 | assert fd1.spices() == fd2.spices() 58 | -------------------------------------------------------------------------------- /tests/test_providers/test_path.py: -------------------------------------------------------------------------------- 1 | import re 2 | 3 | import pytest 4 | 5 | from mimesis import Path 6 | from mimesis.datasets import FOLDERS, PROGRAMMING_LANGS, PROJECT_NAMES 7 | 8 | 9 | class TestPath: 10 | def test_root(self, path): 11 | result = path.root() 12 | assert result == "C:\\" or result == "/" 13 | 14 | def test_home(self, path): 15 | result = path.home() 16 | assert result == "C:\\Users" or result == "/home" 17 | 18 | def test_user(self, path): 19 | user = path.user() 20 | 21 | pattern = r"C:\\Users\\[A-Z].*" if path.platform == "win32" else r"/home/[a-z]." 22 | 23 | result = re.search(pattern, user) 24 | assert result 25 | 26 | def directory_separator(self, path): 27 | slash_character = "" 28 | if path.platform == "win32": 29 | slash_character = "\\" 30 | elif path.platform == "linux": 31 | slash_character = "/" 32 | return slash_character 33 | 34 | def test_users_folder(self, path): 35 | folder = path.users_folder() 36 | folder = folder.split(self.directory_separator(path)) 37 | assert len(folder) == 4 38 | assert folder[3] in FOLDERS 39 | 40 | def test_dev_dir(self, path): 41 | dev_dir = path.dev_dir() 42 | dev_dir = dev_dir.split(self.directory_separator(path)) 43 | assert len(dev_dir) == 5 44 | assert dev_dir[4] in PROGRAMMING_LANGS 45 | 46 | def test_project_dir(self, path): 47 | project_path = path.project_dir() 48 | project_path = project_path.split(self.directory_separator(path)) 49 | assert len(project_path) == 6 50 | assert project_path[5] in PROJECT_NAMES 51 | 52 | 53 | class TestSeededPath: 54 | @pytest.fixture 55 | def p1(self, seed): 56 | return Path(seed=seed) 57 | 58 | @pytest.fixture 59 | def p2(self, seed): 60 | return Path(seed=seed) 61 | 62 | def test_root(self, p1, p2): 63 | assert p1.root() == p2.root() 64 | 65 | def test_home(self, p1, p2): 66 | assert p1.home() == p2.home() 67 | 68 | def test_user(self, p1, p2): 69 | assert p1.user() == p2.user() 70 | 71 | def test_users_folder(self, p1, p2): 72 | assert p1.users_folder() == p2.users_folder() 73 | 74 | def test_dev_dir(self, p1, p2): 75 | assert p1.dev_dir() == p2.dev_dir() 76 | 77 | def test_project_dir(self, p1, p2): 78 | assert p1.project_dir() == p2.project_dir() 79 | -------------------------------------------------------------------------------- /tests/test_providers/test_transport.py: -------------------------------------------------------------------------------- 1 | import re 2 | 3 | import pytest 4 | 5 | from mimesis import Transport 6 | from mimesis.datasets import ( 7 | AIRPLANES, 8 | AUTO_MANUFACTURERS, 9 | CARS, 10 | VR_CODES, 11 | VRC_BY_LOCALES, 12 | ) 13 | from mimesis.locales import Locale 14 | 15 | from . import patterns 16 | 17 | 18 | class TestTransport: 19 | @pytest.fixture 20 | def transport(self): 21 | return Transport() 22 | 23 | def test_str(self, transport): 24 | assert re.match(patterns.PROVIDER_STR_REGEX, str(transport)) 25 | 26 | def test_car(self, transport): 27 | result = transport.car() 28 | assert result in CARS 29 | 30 | def test_manufacturer(self, transport): 31 | assert transport.manufacturer() in AUTO_MANUFACTURERS 32 | 33 | def test_airplane(self, transport): 34 | result = transport.airplane() 35 | assert result in AIRPLANES 36 | 37 | @pytest.mark.parametrize("locale", Locale) 38 | def test_vehicle_registration_code(self, transport, locale): 39 | result = transport.vehicle_registration_code(locale=locale) 40 | assert result in VRC_BY_LOCALES[locale.value] 41 | 42 | def test_random_vehicle_registration_code(self, transport): 43 | result = transport.vehicle_registration_code(locale=None) 44 | assert result in VR_CODES 45 | 46 | 47 | class TestSeededTransport: 48 | @pytest.fixture 49 | def t1(self, seed): 50 | return Transport(seed=seed) 51 | 52 | @pytest.fixture 53 | def t2(self, seed): 54 | return Transport(seed=seed) 55 | 56 | def test_car(self, t1, t2): 57 | assert t1.car() == t2.car() 58 | 59 | def test_manufacturer(self, t1, t2): 60 | assert t1.manufacturer() == t2.manufacturer() 61 | 62 | def test_airplane(self, t1, t2): 63 | assert t1.airplane() == t2.airplane() 64 | 65 | @pytest.mark.parametrize( 66 | "locale", 67 | list(Locale) + [None], 68 | ) 69 | def test_vehicle_registration_code(self, t1, t2, locale): 70 | a = t1.vehicle_registration_code(locale) 71 | b = t2.vehicle_registration_code(locale) 72 | assert a == b 73 | -------------------------------------------------------------------------------- /tests/test_shortcuts.py: -------------------------------------------------------------------------------- 1 | import pytest 2 | 3 | from mimesis import shortcuts 4 | 5 | 6 | @pytest.mark.parametrize( 7 | "number, check_sum", 8 | [ 9 | ("5563455651", "2"), 10 | ("7992739871", "3"), 11 | ("5161675549", "5"), 12 | ], 13 | ) 14 | def test_luhn_checksum(number, check_sum): 15 | assert shortcuts.luhn_checksum(number) == check_sum 16 | --------------------------------------------------------------------------------