This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
| name | age | message | |
|---|---|---|---|
| |
.gitignore | ||
| |
.perlcriticrc | ||
| |
.perltidyrc | ||
| |
Build.PL | ||
| |
Changes | ||
| |
MANIFEST | ||
| |
MANIFEST.SKIP | ||
| |
META.yml | ||
| |
README | ||
| |
inc/ | ||
| |
lib/ | ||
| |
t/ |
README
Test::Sims is a Perl module to support the Sims testing technique to generate large, complex, interesting, semi-random yet valid data for testing purposes. Here's the slides outlining the technique: http://schwern.org/talks/Generating%20Test%20Data%20With%20The%20Sims.pdf Install as any normal Module::Build Perl module. perl Build.PL ./Build ./Build test sudo ./Build install Or for your own personal use: perl Build.PL --install_base ~ ./Build ./Build test ./Build install Here's an example of making a simple package to generate random dates. package Sim::Date; use strict; use warnings; use DateTime; use Test::Sims; # Create rand_year(), rand_month(), etc... # All exportable on demand or with the :rand tag make_rand year => [1800..2100]; make_rand month => [1..12]; make_rand day => [1..31]; make_rand hour => [0..23]; make_rand minute=> [0..59]; make_rand second=> [0..59]; sub sim_datetime { my %defaults = ( year => rand_year(), month => rand_month(), day => rand_day(), hour => rand_hour(), minute => rand_minute(), second => rand_second(), ); return DateTime->new( %defaults, @_ ); } # Export sim_datetime() export_sims(); And then using it. use Sim::Date; # Random date. my $date = sim_datetime; # Random date in the year 2009 my $date = sim_datetime( year => 2009 );








