Metadata-Version: 2.4
Name: robotframework-mimesislibrary
Version: 1.0.0
Summary: Robot Framework keyword library wrapper for the Mimesis fake data generator
Project-URL: Homepage, https://github.com/your-org/robotframework-mimesislibrary
Project-URL: Repository, https://github.com/your-org/robotframework-mimesislibrary
Project-URL: Bug Tracker, https://github.com/your-org/robotframework-mimesislibrary/issues
Project-URL: Documentation, https://your-org.github.io/robotframework-mimesislibrary/
Author: robotframework-mimesis contributors
License: MIT License
        
        Copyright (c) 2026 robotframework-mimesislibrary contributors
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
License-File: LICENSE
Keywords: data,fake,keywords,mimesis,robotframework,synthetic,testing
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: Robot Framework
Classifier: Framework :: Robot Framework :: Library
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Software Development :: Testing
Requires-Python: >=3.10
Requires-Dist: mimesis>=18.0
Requires-Dist: robotframework>=5.0
Provides-Extra: dev
Requires-Dist: docutils>=0.20; extra == 'dev'
Requires-Dist: mypy>=1.10; extra == 'dev'
Requires-Dist: pytest-cov>=5.0; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.5; extra == 'dev'
Description-Content-Type: text/markdown

# robotframework-mimesislibrary

A [Robot Framework](https://robotframework.org/) keyword library that wraps the [Mimesis](https://mimesis.name/) fake data generator, providing over 100 keywords to generate synthetic data directly in your test suites.

## Installation

```bash
pip install robotframework-mimesislibrary
```

## Quick Start

```robotframework
*** Settings ***
Library    MimesisLibrary

*** Test Cases ***
Generate Person Data
    ${name}=      Fake Full Name
    ${email}=     Fake Email
    ${phone}=     Fake Phone Number
    Log Many      ${name}    ${email}    ${phone}

Use Per-Keyword Locale
    ${arabic_name}=    Fake First Name    locale=AR
    ${french_city}=    Fake City          locale=FR
    ${turkish_name}=   Fake Full Name     locale=TR
    Log Many           ${arabic_name}     ${french_city}    ${turkish_name}

Generate Internet Data
    ${ip}=     Fake IPv4
    ${url}=    Fake URL
    ${mac}=    Fake MAC Address
    Log Many   ${ip}    ${url}    ${mac}

Generate Unique ID
    ${uuid}=    Fake UUID
    ${token}=   Fake Token Hex
    Log Many    ${uuid}    ${token}
```

## Import Options

```robotframework
# Use default locale (English)
Library    MimesisLibrary

# Use a specific default locale
Library    MimesisLibrary    locale=TR

# Use with a fixed seed for reproducible data
Library    MimesisLibrary    locale=EN    seed=42
```

## Keyword Categories

| Category | Example Keywords |
|----------|-----------------|
| **Person** | `Fake First Name`, `Fake Full Name`, `Fake Email`, `Fake Password` |
| **Address** | `Fake City`, `Fake Country`, `Fake Street Name`, `Fake Zip Code` |
| **Internet** | `Fake IPv4`, `Fake URL`, `Fake MAC Address`, `Fake User Agent` |
| **Code** | `Fake EAN`, `Fake IMEI`, `Fake ISBN`, `Fake UUID` |
| **Cryptographic** | `Fake UUID`, `Fake Token Hex`, `Fake MD5`, `Fake SHA256` |
| **Datetime** | `Fake Date`, `Fake Time`, `Fake Datetime`, `Fake Timezone` |
| **Finance** | `Fake Bank Account`, `Fake Currency Code`, `Fake Cryptocurrency` |
| **Payment** | `Fake Credit Card Number`, `Fake CVV` |
| **Food** | `Fake Dish`, `Fake Drink`, `Fake Fruit`, `Fake Vegetable` |
| **Text** | `Fake Word`, `Fake Sentence`, `Fake Color`, `Fake Quote` |
| **Numeric** | `Fake Integer`, `Fake Float` |
| **Hardware** | `Fake CPU`, `Fake GPU`, `Fake RAM Size` |
| **Transport** | `Fake Car`, `Fake VIN`, `Fake Airplane` |
| **Development** | `Fake Programming Language`, `Fake OS`, `Fake License` |
| **Science** | `Fake Chemical Element`, `Fake Measure Unit` |
| **Path** | `Fake Root Path`, `Fake Project Dir` |

## Supported Locales

Mimesis supports 30+ locales. Locale-dependent keywords (Person, Address, Food, Text, Finance, Datetime) accept a `locale` parameter:

```robotframework
${name}=    Fake First Name    locale=TR    # Turkish
${name}=    Fake First Name    locale=AR    # Arabic
${name}=    Fake First Name    locale=JA    # Japanese
${name}=    Fake First Name    locale=DE    # German
${name}=    Fake First Name    locale=FR    # French
${name}=    Fake First Name    locale=RU    # Russian
```

Locale-independent keywords (`Fake UUID`, `Fake IPv4`, `Fake Integer`, etc.) ignore the `locale` parameter.

## Reproducible Data with Seeds

```robotframework
Library    MimesisLibrary    seed=42

*** Test Cases ***
Reproducible Test
    ${name}=    Fake First Name    # Always returns the same value
```

## HTML Documentation

Generate the full keyword reference in HTML format:

```bash
python -m robot.libdoc MimesisLibrary docs/index.html
```

## Development Setup

```bash
git clone https://github.com/your-org/robotframework-mimesislibrary
cd robotframework-mimesislibrary
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
pip install -e ".[dev]"

# Run tests
make test

# Generate docs
make docs
```

## License

MIT License — see [LICENSE](LICENSE) for details.
