Documentation ¶
Overview ¶
Package faker is a library for generating fake data such as names, addresses, and phone numbers.
It is a (mostly) API-compatible port of Ruby Faker gem (https://github.com/stympy/faker) to Go.
Index ¶
- Constants
- Variables
- func Fetch(path string) string
- func Letterify(s string) string
- func Numerify(s string) string
- func NumerifyAndLetterify(s string) string
- func RandomChoice(ss []string) string
- func RandomInt(min, max int) int
- func RandomInt64(min, max int64) int64
- func RandomRepeat(s string, min, max int) string
- func RandomString(n int) string
- func Regexify(s string) (string, error)
- func Seed(seed int64)
- type FakeAddress
- type FakeApp
- type FakeAvatar
- type FakeBitcoin
- type FakeBusiness
- type FakeCode
- type FakeCommerce
- type FakeCompany
- type FakeDate
- type FakeFinance
- type FakeHacker
- type FakeInternet
- type FakeLorem
- type FakeName
- type FakeNumber
- type FakePhoneNumber
- type FakeTeam
- type FakeTime
Constants ¶
const ( CC_VISA = "visa" CC_MASTERCARD = "mastercard" CC_AMERICAN_EXPRESS = "american_express" CC_DINERS_CLUB = "diners_club" CC_DISCOVER = "discover" CC_MAESTRO = "maestro" CC_SWITCH = "switch" CC_SOLO = "solo" CC_FORBRUGSFORENINGEN = "forbrugsforeningen" CC_DANKORT = "dankort" CC_LASER = "laser" )
Known credit card types.
Variables ¶
var CC_TYPES = []string{ CC_VISA, CC_MASTERCARD, CC_AMERICAN_EXPRESS, CC_DINERS_CLUB, CC_DISCOVER, CC_MAESTRO, CC_SWITCH, CC_SOLO, CC_FORBRUGSFORENINGEN, CC_DANKORT, CC_LASER, }
CC_TYPES holds a list of known credit card types.
var Locale = locales.En
Locale holds the default locale.
Functions ¶
func Fetch ¶
Fetch returns a value at given key path in default locale. If key path holds an array, it returns random array element. If value looks like a regex, it attempts to regexify it.
func NumerifyAndLetterify ¶
NumerifyAndLetterify both numerifies and letterifies s.
func RandomChoice ¶
RandomChoice returns random string from slice of strings.
func RandomInt64 ¶
RandomInt64 returns random int64 in [min, max] range.
func RandomRepeat ¶
RandomRepeat returns a new string consisting of random number of copies of the string s.
func RandomString ¶
RandomString returns a random alphanumeric string with length n.
Types ¶
type FakeAddress ¶
type FakeAddress interface { City() string // => "North Dessie" StreetName() string // => "Buckridge Lakes" StreetAddress() string // => "586 Sylvester Turnpike" SecondaryAddress() string // => "Apt. 411" BuildingNumber() string // => "754" Postcode() string // => "31340" PostcodeByState(state string) string // => "46511" ZipCode() string // ZipCode is an alias for Postcode. ZipCodeByState(state string) string // ZipCodeByState is an alias for PostcodeByState. TimeZone() string // => "Asia/Taipei" CityPrefix() string // => "East" CitySuffix() string // => "town" StreetSuffix() string // => "Square" State() string // => "Maryland" StateAbbr() string // => "IL" Country() string // => "Uruguay" CountryCode() string // => "JP" Latitude() float32 // => -38.811367 Longitude() float32 // => 89.2171 String() string // => "6071 Heaney Island Suite 553, Ebbaville Texas 37307" }
func Address ¶
func Address() FakeAddress
type FakeApp ¶
type FakeAvatar ¶
type FakeAvatar interface { Url(format string, width, height int) string // => "http://robohash.org/NX34rZw7s0VFzgWY.jpg?size=100x200" String() string // => "http://robohash.org/XRWjFigoImqdeDuA.png?size=300x300" }
func Avatar ¶
func Avatar() FakeAvatar
type FakeBitcoin ¶
type FakeBitcoin interface { Address() string // => "1GpEKM5UvD4XDLMirpNLoDnRVrGutogMj2" String() string // String is an alias for Address. }
func Bitcoin ¶
func Bitcoin() FakeBitcoin
type FakeBusiness ¶
type FakeBusiness interface { CreditCardNumber() string // => "1234-2121-1221-1211" CreditCardExpiryDate() string // => "2015-11-11" CreditCardType() string // => "mastercard" }
func Business ¶
func Business() FakeBusiness
type FakeCode ¶
type FakeCommerce ¶
type FakeCommerce interface { Color() string // => "lime" Department() string // => "Electronics, Health & Baby" ProductName() string // => "Ergonomic Granite Shoes" Price() float32 // => 97.79 }
func Commerce ¶
func Commerce() FakeCommerce
type FakeCompany ¶
type FakeCompany interface { Name() string // => "Aufderhar LLC" Suffix() string // => "Inc" CatchPhrase() string // => "Universal logistical artificial intelligence" Bs() string // => "engage distributed applications" Ein() string // => "58-6520513" DunsNumber() string // => "16-708-2968" Logo() string // => "http://www.biz-logo.com/examples/015.gif" String() string // String is an alias for Name. }
func Company ¶
func Company() FakeCompany
type FakeDate ¶
type FakeDate interface { // Between returns random time in [from, to] interval, with second resolution. Between(from, to time.Time) time.Time // Forward returns random time in [time.Now(), time.Now() + duration] interval, with second resolution. Forward(duration time.Duration) time.Time // Backward returns random time in [time.Now() - duration, time.Now()] interval, with second resolution. Backward(duration time.Duration) time.Time // Birthday returns random time so that age of the person born at that moment would be between minAge and maxAge years. Birthday(minAge, maxAge int) time.Time }
type FakeFinance ¶
type FakeFinance interface { // CreditCard returns a valid (with valid check digit) card number of one of the given types. // If no types are passed, all types in CC_TYPES are used. CreditCard(types ...string) string // => "5019-8413-2066-5594" }
func Finance ¶
func Finance() FakeFinance
type FakeHacker ¶
type FakeHacker interface { SaySomethingSmart() string // => "If we connect the bus, we can get to the XML microchip through the digital TCP sensor!" Abbreviation() string // => "HTTP" Adjective() string // => "cross-platform" Noun() string // => "interface" Verb() string // => "bypass" IngVerb() string // => "parsing" Phrases() []string /* => "If we bypass the program, we can get to the AGP protocol through the optical SDD alarm!", "We need to calculate the back-end XML microchip!", "Try to generate the GB bus, maybe it will hack the neural panel!", "You can't navigate the transmitter without synthesizing the optical SMS bus!", "Use the optical THX application, then you can override the mobile port!", "The CSS monitor is down, quantify the multi-byte bus so we can calculate the XSS bandwidth!", "Connecting the card won't do anything, we need to back up the multi-byte RSS card!", "I'll reboot the primary SMTP feed, that should monitor the XML protocol!`" */ }
func Hacker ¶
func Hacker() FakeHacker
type FakeInternet ¶
type FakeInternet interface { Email() string // => "maritza@farrell.org" FreeEmail() string // => "sven_rice@hotmail.com" SafeEmail() string // => "theron.nikolaus@example.net" UserName() string // => "micah_pfeffer" Password(min, max int) string // => "s5CzvVp6Ye" DomainName() string // => "rolfson.info" DomainWord() string // => "heller" DomainSuffix() string // => "net" MacAddress() string // => "15:a9:83:29:76:26" IpV4Address() string // => "121.204.82.227" IpV6Address() string // => "c697:392f:6a0e:bf6d:77e1:714a:10ab:0dbc" Url() string // => "http://sporerhamill.net/kyla.schmitt" Slug() string // => "officiis-commodi" }
func Internet ¶
func Internet() FakeInternet
type FakeLorem ¶
type FakeLorem interface { Character() string // => "c" Characters(num int) string // => "wqFyJIrXYfVP7cL9M" Word() string // => "veritatis" Words(num int) []string // => "omnis libero neque" Sentence(words int) string // => "Necessitatibus cum autem." // Sentences returns a slice of "num" sentences, 3 to 11 words each. Sentences(num int) []string // Paragraph returns a random text of "sentences" sentences length. Paragraph(sentences int) string // Paragraphs returns a slice of "num" paragraphs, 3 to 11 sentences each. Paragraphs(num int) []string // String returns a random sentence 3 to 11 words in length. String() string }
type FakeName ¶
type FakeNumber ¶
type FakeNumber interface { Number(digits int) string // => "43202" NumberInt(digits int) int // => 213 NumberInt32(digits int) int32 // => 92938 NumberInt64(digits int) int64 // => 1689541633257139096 Decimal(precision, scale int) string // => "879420.60" Digit() string // => "7" Hexadecimal(digits int) string // => "e7f3" Between(min, max int) string // => "-47" Positive(max int) string // => "3" Negative(min int) string // => "-16" }
func Number ¶
func Number() FakeNumber
type FakePhoneNumber ¶
type FakePhoneNumber interface { PhoneNumber() string // => "1-599-267-6597 x537" CellPhone() string // => "+49-131-0003060" AreaCode() string // => "903" ExchangeCode() string // => "574" SubscriberNumber(digits int) string // => "1512" String() string // String is an alias for PhoneNumber. }
func PhoneNumber ¶
func PhoneNumber() FakePhoneNumber