X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=Civi%2FTest.php;h=a0d67697470284b41d3fd5fc4909198b8659d3d0;hb=eb08a171fedbfad22ae2c2437d1d92dd65f80357;hp=cf9c841ab7981ccd8fdab426209df134aaf77d4e;hpb=036b1d1bf92528535670afb178d765f9715398d1;p=civicrm-core.git diff --git a/Civi/Test.php b/Civi/Test.php index cf9c841ab7..a0d6769747 100644 --- a/Civi/Test.php +++ b/Civi/Test.php @@ -182,6 +182,46 @@ class Test { return self::$singletons['data']; } + /** + * @return \Civi\Test\ExampleDataLoader + */ + public static function examples(): \Civi\Test\ExampleDataLoader { + if (!isset(self::$singletons['examples'])) { + self::$singletons['examples'] = new \Civi\Test\ExampleDataLoader(); + } + return self::$singletons['examples']; + } + + /** + * Lookup the content of an example data-set. + * + * This helper is for the common case of looking up the data for a specific example. + * If you need more detailed information (eg the list of examples or other metadata), + * then use `\Civi\Test::examples(): ExampleDataLoader`. It provides more methods. + * + * @param string $name + * Symbolic name of the data-set. + * @return array + * The example data. + */ + public static function example(string $name): array { + $result = static::examples()->getFull($name); + if (!isset($result['data'])) { + throw new \CRM_Core_Exception("Failed to load example data-set: $name"); + } + return $result['data']; + } + + /** + * @return \Civi\Test\EventChecker + */ + public static function eventChecker() { + if (!isset(self::$singletons['eventChecker'])) { + self::$singletons['eventChecker'] = new \Civi\Test\EventChecker(); + } + return self::$singletons['eventChecker']; + } + /** * Prepare and execute a batch of SQL statements. *