From 38b93530b55ca7647571d2af28a923e99646df10 Mon Sep 17 00:00:00 2001 From: Tim Otten Date: Wed, 16 Sep 2020 02:58:36 -0700 Subject: [PATCH] (REF) GenerateData - Allow external control randomness --- CRM/Core/CodeGen/GenerateData.php | 9 +++++++-- sql/GenerateData.php | 5 ++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/CRM/Core/CodeGen/GenerateData.php b/CRM/Core/CodeGen/GenerateData.php index 3d7268f520..31a2352c3f 100644 --- a/CRM/Core/CodeGen/GenerateData.php +++ b/CRM/Core/CodeGen/GenerateData.php @@ -26,11 +26,16 @@ class CRM_Core_CodeGen_GenerateData { /** * Class constructor + * + * @param string|int $seed + * Some scalar value used as the starting point for random-number generation. + * @param int $time + * A timestamp; some facsimile of "now". */ - public function __construct($seed = '123456789') { + public function __construct($seed, $time) { // initialize all the vars $this->seed = $seed; - $this->time = strtotime(date('Y') . '-01-01 02:03:04'); + $this->time = $time; $this->numIndividual = self::INDIVIDUAL_PERCENT * self::NUM_CONTACT / 100; $this->numHousehold = self::HOUSEHOLD_PERCENT * self::NUM_CONTACT / 100; $this->numOrganization = self::ORGANIZATION_PERCENT * self::NUM_CONTACT / 100; diff --git a/sql/GenerateData.php b/sql/GenerateData.php index 977a251b06..6928bf57af 100644 --- a/sql/GenerateData.php +++ b/sql/GenerateData.php @@ -76,7 +76,10 @@ CRM_Core_Config::singleton(); echo ("Starting data generation on " . date("F dS h:i:s A") . "\n"); try { $scope = CRM_Core_TemporaryErrorScope::useException(); - $gcd = new CRM_Core_CodeGen_GenerateData(); + // Generate reproducible data-set + // $gcd = new CRM_Core_CodeGen_GenerateData('1234', strtotime(date('Y') . '-01-01 02:03:04')); + // Generate unique data-set + $gcd = new CRM_Core_CodeGen_GenerateData(time(), time()); $gcd->generateAll(); } catch (Exception $e) { -- 2.25.1