2012-02-29 15:59:21 +01:00
# Framework Test Module
## Introduction
Aids core and module developers in testing their code against
a set of sample data and behaviour.
* Shows all core form fields, including their disabled and readonly state
* Shows sample GridField instance including data
* Creates sample members (to efficiently test SecurityAdmin)
* Creates a sample ModelAdmin instance (available at `admin/test` )
* (Optional) Three-step process for the [multiform ](http://www.silverstripe.org/multi-form-module/ ) module
* (Optional) Sample page for the [tagfield ](http://www.silverstripe.org/tag-field-module/ ) module
* (Optional) Sample page for the [recaptcha ](http://www.silverstripe.org/recaptcha-module/ ) module
## Usage
Simply running `dev/build` will take care of most sample data setup.
In order to use any of the optional test behaviour targeted at modules,
install the module and remove the `_manifest_exclude` file from the relevant folder.
For example, to test the tagfield module, remove the `frameworktest/code/tagfield/_manifest_exclude` file.
## More sample data
The module creates some default pages for different CMS behaviours.
The CMS is intended to be perform well with a couple of thousand pages.
If you want to test the CMS behaviour for a large and nested tree,
the module includes a simple generator task: `dev/tasks/FTPageMakerTask` .
It will create 3^5 pages by default, so takes a while to run through.
2020-11-03 05:48:30 +01:00
## Blocks
When [dnadesign/silverstripe-elemental ](https://github.com/dnadesign/silverstripe-elemental )
is installed, the `FTPageMakerTask` can also generate blocks within those pages automatically.
It has a few hardcoded sample data structures for common block types,
and randomly creates a number of blocks, as well as randomly choosing to publish them.
Relies on files and images being available to add as sample data.
Additional setup:
```
composer require dnadesign/silverstripe-elemental
composer require silverstripe/elemental-bannerblock
composer require silverstripe/elemental-fileblock
```
Usage:
```
# Generate some sample files to associate with blocks
sake dev/tasks/FTFileMakerTask
sake dev/tasks/FTPageMakerTask withBlocks=true
```
2012-02-29 15:59:21 +01:00
## Requirements
The module is intended to run against the latest core codebase,
2012-05-01 14:56:30 +02:00
but also includes branches matching earlier core releases for backwards compatibility.
## Related
2020-11-03 05:48:30 +01:00
* [zframeworktest_dbswitcher ](https://github.com/silverstripe-labs/zframeworktest_dbswitcher ) module - adds capabilities to switch the database by a query parameter for testing purposes