BSD Ports

devel/p5-Test-MockRandom 1.01 MidnightBSD

Replaces random number generation with non-random number generation

System
MidnightBSD
Repository
mports
Maintainer
[email protected]
License
Apache-2.0
Categories
devel, perl5

Description

This perhaps ridiculous-seeming module was created to test routines that manipulate random numbers by providing a known output from rand. Given a list of seeds with srand, it will return each in turn. After seeded random numbers are exhausted, it will always return 0. Seed numbers must be of a form that meets the expected output from rand as called with no arguments -- i.e. they must be between 0 (inclusive) and 1 (exclusive). In order to facilitate generating and testing a nearly-one number, this module exports the function oneish, which returns a number just fractionally less than one.

Depending on how this module is called with use, it will export rand to a specified package (e.g. a class being tested) effectively overriding and intercepting calls in that package to the built-in rand. It can also override rand in the current package or even globally. In all of these cases, it also exports srand and oneish to the current package in order to control the output of rand.

Alternatively, this module can be used to generate objects, with each object maintaining its own distinct seed array.

In the other systems

SystemPortVersion
MidnightBSDdevel/p5-Test-MockRandom1.01
FreeBSDdevel/p5-Test-MockRandom1.01_1
OpenBSDdevel/p5-Test-MockRandom1.01p0
DragonFlydevel/p5-Test-MockRandom1.01_1
HardenedBSDdevel/p5-Test-MockRandom1.01_1
GhostBSDdevel/p5-Test-MockRandom1.01_1

Install

Binary package:

mport install p5-Test-MockRandom

From mports:

cd /usr/mports/devel/p5-Test-MockRandom && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	p5-Test-MockRandom>0:devel/p5-Test-MockRandom

Dependencies

No port depends on this one.

Configuration

No options to configure.

USES
perl5
Service scripts
none

Files

pkg-plist 2
  • %%SITE_PERL%%/Test/MockRandom.pm
  • %%PERL5_MAN3%%/Test::MockRandom.3.gz
distinfo 1
FileSizeSHA256
Test-MockRandom-1.01.tar.gz244492614930d84fc5deac39afbc1ee86ccd39b221507f27d4ee493ca26e5c921cce0
Master sites 1
  • CPAN