Port of the famous Go fakeit library for Rust with more than 130 functions.
v1.2.0 breaks the backward compatibility with the previous versions. The chrono
package have been completely removed, so the following functions returns simplified structs:
datetime::date_range("RFC3339", "RFC3339");
datetime::date();
There is the workaround to get the same behaviour as before:
```rust extern crate fakeit; extern crate chrono;
use fakeit::datetime; use chrono::{DateTime, NaiveDateTime, Utc};
fn main() { let data = datetime::date_range("RFC3339", "RFC3339"); // OR let data = datetime::date();
let datetime = NaiveDateTime::from_timestamp_opt(data.secs, data.nsecs)
.expect("invalid or out-of-range datetime");
let dt = DateTime::<Utc>::from_utc(datetime, Utc);
println!("{}", dt.to_rfc3339());
} ```
```rust extern crate fakeit;
use fakeit::address;
fn main() { let data = address::info(); // address::Info struct let data = address::street(); // street: 1128 South North Dakota borough let data = address::streetnumber(); // streetnumber: 3155 let data = address::streetprefix(); // streetprefix: Port let data = address::streetname(); // streetname: Kansas let data = address::streetsuffix(); // streetsuffix: mouth let data = address::city(); // city: Schmelerburgh let data = address::state(); // state: Kentucky let data = address::stateabr(); // stateabr: WA let data = address::zip(); // zip: 75221 let data = address::country(); // country: Romania let data = address::countryabr(); // countryabr: BI let data = address::latitude(); // latitude: -69.14192 let data = address::latitudeinrange(-30 as f64, 30 as f64); // latitudeinrange: -18.35571 let data = address::longitude(); // longitude: 113.12952 let data = address::longitudeinrange(-30 as f64, 30 as f64); // longitudeinrange: -16.484156 } ```
```rust extern crate fakeit;
use fakeit::animal;
fn main() { let data = animal::petname(); // petname: Squeakers let data = animal::animal(); // animal: salmon let data = animal::typeof(); // typeof: fish let data = animal::farm(); // farm: Sheep let data = animal::cat(); // cat: Oriental Shorthair let data = animal::dog(); // dog: Rottweiler } ```
```rust extern crate fakeit;
use fakeit::beer;
fn main() { let data = beer::name(); // name: Sierra Nevada Bigfoot Barleywine Style Ale let data = beer::style(); // style: Porter let data = beer::hop(); // hop: Equinox let data = beer::yeast(); // yeast: 1084 - Irish Ale let data = beer::malt(); // malt: Roasted barley let data = beer::ibu(); // ibu: 75 IBU let data = beer::alcohol(); // alcohol: 2.943696 % let data = beer::blg(); // blg: 7.4607124°Blg } ```
```rust extern crate fakeit;
use fakeit::bool;
fn main() { let data = bool::bool(); // true / false } ```
```rust extern crate fakeit;
use fakeit::color;
fn main() { let data = color::full(); // full: LightYellow let data = color::hex(); // hex: #662461 let data = color::safe(); // safe: black let data = color::rgb(); // rgb: [162, 98, 22] } ```
```rust extern crate fakeit;
use fakeit::company;
fn main() { let data = company::company(); // company: Rowe-Schoen let data = company::companysuffix(); // companysuffix: Inc let data = company::buzzword(); // buzzword: systemic let data = company::bs(); // bs: strategic } ```
```rust extern crate fakeit;
use fakeit::contact;
fn main() { let data = contact::info(); // contect::Info let data = contact::phone(); // phone: 5173757868 let data = contact::phoneformatted(); // phoneformatted: 382.450.6544 let data = contact::email(); // email: benkuvalis@marks.org } ```
```rust extern crate fakeit;
use fakeit::currency;
fn main() { let data = currency::compact(); // currency::Info let data = currency::short(); // short: SRD let data = currency::long(); // long: Burundi Franc let data = currency::price(1 as f64, 123 as f64); // price: 53.7 } ```
```rust extern crate fakeit;
use fakeit::datetime;
fn main() { let data = datetime::month(); // month: 10 let data = datetime::day(); // day: 10 let data = datetime::weekday(); // weekday: 6 let data = datetime::year(); // year: 1986 let data = datetime::hour(); // hour: 10 let data = datetime::minute(); // minute: 10 let data = datetime::second(); // second: 10 let data = datetime::nanosecond(); // nanosecond: 959678991 let data = datetime::timezone(); // timezone: SA Pacific Standard Time let data = datetime::timezonefull(); // timezonefull: (UTC-04:00) Atlantic Time (Canada) let data = datetime::timezoneabv(); // timezoneabv: BST let data = datetime::timezoneoffset(); // timezoneoffset: 13 let data = datetime::date_range("RFC3339", "RFC3339"); // secs/nsecs to create chrono Datetime let data = datetime::date(); // secs/nsecs to create chrono Datetime } ```
```rust extern crate fakeit;
use fakeit::file;
fn main() { let data = file::mimetype(); // mimetype: text/x-fortran let data = file::extension(); // extension: aspx } ```
```rust extern crate fakeit;
use fakeit::generator;
fn main() { let data = generator::generate("{person.first} {person.last} {contact.email} #?#?#?".to_string()); // data: Watson Connelly baileeprosacco@smitham.biz 6d0e0a // More details about this later } ```
```rust extern crate fakeit;
use fakeit::hacker;
fn main() { let data = hacker::phrase(); // phrase: parsing the sensor won't do anything, we need to bypass the open-source AGP sensor! let data = hacker::abbreviation(); // abbreviation: PCI let data = hacker::adjective(); // adjective: bluetooth let data = hacker::noun(); // noun: protocol let data = hacker::verb(); // verb: copy let data = hacker::ingverb(); // ingverb: transmitting } ```
```rust extern crate fakeit;
use fakeit::hipster;
fn main() { let data = hipster::word(); // word: fingerstache let data = hipster::sentence(12); // sentence: Itaque aliquid id ex repudiandae adipisci quibusdam excepturi deleniti qui alias animi. let data = hipster::paragraph(3, 4, 40, " ".to_string()); // paragraph: Voluptas minima delectus voluptatibus earum rerum accusamus consequatur sunt.... } ```
```rust extern crate fakeit;
use fakeit::image;
fn main() { let data = image::url(500, 500); // url: https://picsum.photos/500/500 } ```
```rust extern crate fakeit;
use fakeit::internet;
fn main() { let data = internet::domainname(); // domainname: productvisualize.net let data = internet::httpmethod(); // httpmethod: DELETE let data = internet::domainsuffix(); // domainsuffix: biz let data = internet::ipv4address(); // ipv4address: 196.140.182.201 let data = internet::ipv6address(); // ipv6address: 2001:cafe:1248:1dc7:17dd:19f4:8798:621d let data = internet::macaddress(); // macaddress: 2D:3F:7E:5D:61:C1 let data = internet::username(); // username: Nienow1881 } ```
```rust extern crate fakeit;
use fakeit::job;
fn main() { let data = job::info(); // job::Info let data = job::title(); // title: Executive let data = job::descriptor(); // descriptor: International let data = job::level(); // level: Solutions } ```
```rust extern crate fakeit;
use fakeit::language;
fn main() { let data = language::random(); // random: Tatar let data = language::abbreviation(); // abbreviation: co let data = language::programming(); // programming: Rust } ```
```rust extern crate fakeit;
use fakeit::log_level;
fn main() { let data = loglevel::general(); // general: info let data = loglevel::syslog(); // syslog: crit let data = log_level::apache(); // apache: debug } ```
```rust extern crate fakeit;
use fakeit::name;
fn main() { let data = name::full(); // full: Keyshawn Auer let data = name::first(); // first: Brycen let data = name::last(); // last: Hartmann let data = name::prefix(); // prefix: Mr. let data = name::suffix(); // suffix: PhD } ```
```rust extern crate fakeit;
use fakeit::password;
fn main() { let data = password::generate(upper, numeric, special, num); // #9e1Vv5s&Ng8L-#9@=!6+s1+0@R } ```
```rust extern crate fakeit;
use fakeit::payment;
fn main() { let data = payment::creditcard(); // payment::CreditCard let data = payment::creditcardtype(); // creditcardtype: Discover let data = payment::creditcardnumber(); // creditcardnumber: 341545247171534 let data = payment::creditcardluhnnumber(); // @TODO let data = payment::creditcardexp(); // creditcardexp: 04/21 let data = payment::creditcardcvv(); // creditcardcvv: 537 } ```
```rust extern crate fakeit;
use fakeit::person;
fn main() { let data = person::info(); // person::Info let data = person::ssn(); // ssn: 792671651 let data = person::gender(); // gender: male } ```
```rust extern crate fakeit;
use fakeit::status_code;
fn main() { let data = statuscode::simple(); // simple: 404 let data = statuscode::general(); // general: 400 } ```
```rust extern crate fakeit;
use fakeit::unique;
fn main() { let data = unique::uuidv1(); // uuidv1: 13be40a6-1dd2-11b2-802a-010203040506 let data = unique::uuidv4(); // uuidv4: a474961e-936a-4897-966a-15fcff7bbc87 } ```
```rust extern crate fakeit;
use fakeit::unique;
fn main() { let data = useragent::chrome(); // chrome: Mozilla/5.0 (X11; Linux i686) AppleWebKit/532 (KHTML, like Gecko) Chrome/36.0.861.0 Mobile Safari/532 let data = useragent::firefox(); // firefox: Mozilla/5.0 (X11; Linux x8664; rv:7.0) Gecko/2005-5-27 Firefox/36.0 let data = useragent::safari(); // safari: Mozilla/5.0 (Windows; U; Windows NT 6.2) AppleWebKit/531.23.3 (KHTML, like Gecko) Version/4.0 Safari/531.23.3 let data = useragent::opera(); // opera: Opera/8.22 (Macintosh; PPC Mac OS X 1068; en-US) Presto/2.11.181 Version/12.00 let data = useragent::linuxplatformtoken(); // linuxplatformtoken: X11; Linux x8664 let data = useragent::macplatformtoken(); // macplatformtoken: Macintosh; U; PPC Mac OS X 1062 let data = useragent::windowsplatformtoken(); // windowsplatformtoken: Windows 98; Win 9x 4.90 let data = useragent::randomplatform(); // randomplatform: Macintosh; Intel Mac OS X 1075 } ```
```rust extern crate fakeit;
use fakeit::vehicle;
fn main() { let data = vehicle::info(); // vehicle::Info let data = vehicle::vehicletype(); // vehicletype: Passenger car mini let data = vehicle::fuel(); // fuel: Electric let data = vehicle::transmissiongear(); // transmissiongear: Automatic let data = vehicle::carmaker(); // carmaker: Chevrolet let data = vehicle::carmodel(); // carmodel: Gti } ```
```rust extern crate fakeit;
use fakeit::words;
fn main() { let data = words::word(); // word: saepe let data = words::sentence(wordcount); // sentence: Nemo vitae rerum consequuntur vero animi incidunt esse doloribus eos. let data = words::paragraph(count, sentencecount, word_count, separator); // paragraph: Minima aut numquam nihil rerum commodi pariatur dolores... let data = words::question(); // question: Placeat voluptatem at ut eveniet suscipit similique dicta quis? let data = words::quote(); // quote: "Dignissimos dolorem quam tempore excepturi facere dicta." - Willy Kihn
let opts = words::ParagraphOpts {
count: 5,
sentence_count: 4,
word_count: 11,
separator: "\n".to_string(),
};
let data = words::paragraph_generator(opts, &words::sentence); // paragraph_generator: Quisquam aut consequuntur nobis voluptas porro...
} ```