Fake

Build Status Latest Version

A Rust library for generating fake data.

Installation

Add fake to your Cargo.toml toml [dependencies] fake = "*"

Usage

```rust // Use macro style

[macro_use]

extern crate fake;

fake!(Internet.freeemail); fake!(Company.name); fake!(Name.name); fake!(Name.name in zhtw)

// Use function call style use fake::faker::*;

Faker::free_email();

// In case multiple candidates available ::name(); ::name();

// Switch locales use fake::locales::zh_tw; println!("{}", ::name()); ```

Lorem

rust println!("{:?}", fake!(Lorem.word)); println!("{:?}", fake!(Lorem.words(10))); println!("{:?}", fake!(Lorem.sentence(4, 6))); println!("{:?}", fake!(Lorem.sentences(10))); println!("{:?}", fake!(Lorem.paragraph(7, 3))); println!("{:?}", fake!(Lorem.paragraphs(3)));

Name

```rust println!("{:?}", fake!(Name.firstname)); println!("{:?}", fake!(Name.lastname)); println!("{:?}", fake!(Name.name)); println!("{:?}", fake!(Name.namewithmiddle)); println!("{:?}", fake!(Name.titledescriptor)); println!("{:?}", fake!(Name.titlelevel)); println!("{:?}", fake!(Name.title_job)); println!("{:?}", fake!(Name.title));

println!("{}", fake!(zhtw; Name.firstname)); println!("{}", fake!(zhtw; Name.lastname)); println!("{}", fake!(zh_tw; Name.name)); ```

Number

rust println!("{:?}", fake!(Number.digit)); println!("{:?}", fake!(Number.number(10))); println!("{:?}", fake!(Number.between(5, 10))); println!("{:?}", fake!(Number.between(5.0_f32, 10.0_f32)));

Boolean

rust println!("{:?}", fake!(Boolean.boolean));

Internet

rust println!("{:?}", fake!(Internet.free_email_provider)); println!("{:?}", fake!(Internet.domain_suffix)); println!("{:?}", fake!(Internet.user_name)); println!("{:?}", fake!(Internet.free_email)); println!("{:?}", fake!(Internet.safe_email));

Company

rust println!("{:?}", fake!(Company.suffix)); println!("{:?}", fake!(Company.name)); println!("{:?}", fake!(Company.buzzword)); println!("{:?}", fake!(Company.catch_phase)); println!("{:?}", fake!(Company.bs)); println!("{:?}", fake!(Company.profession)); println!("{:?}", fake!(Company.industry));

Address

rust println!("{:?}", fake!(Address.time_zone)); println!("{:?}", fake!(Address.city_prefix)); println!("{:?}", fake!(Address.city_suffix)); println!("{:?}", fake!(Address.street_suffix)); println!("{:?}", fake!(Address.state)); println!("{:?}", fake!(Address.state_abbr)); println!("{:?}", fake!(Address.city)); println!("{:?}", fake!(Address.street_name)); println!("{:?}", fake!(Address.building_number)); println!("{:?}", fake!(Address.street_address)); println!("{:?}", fake!(Address.secondary_address)); println!("{:?}", fake!(Address.zip)); println!("{:?}", fake!(Address.postcode)); println!("{:?}", fake!(Address.latitude)); println!("{:?}", fake!(Address.longitude));

Phone Number

rust println!("{:?}", fake!(PhoneNumber.phone_number)); //N => [1..9], # => [0..9] println!("{:?}", fake!(PhoneNumber.phone_number_with_format("N###-####"))); println!("{:?}", fake!(PhoneNumber.cell_number));

Contributing

What can you help

  1. Add locales
  2. Add new faker
  3. Report bugs

How

  1. Fork the repo.
  2. Add a test for your change.
  3. Make the test. cargo test
  4. Push to your fork and submit a pull request.

LICENSE

The MIT License (MIT)