Ingo Schommer
efd8f65c33
Merge pull request #91 from jeffreyguo/pulls/email-from-to-titled
...
Find email by title then check the recipents
2016-01-08 10:43:29 +13:00
Ingo Schommer
676b2a4344
Merge pull request #96 from IgorNadj/patch-detect-404
...
ENH: adding wrapper around visit to detect 404s
2016-01-08 10:41:15 +13:00
Jeffrey Guo
299cde3c90
add condition to prevent running endTestSession() twice
...
reformatted with space indent
2015-12-21 10:54:10 +13:00
Ingo Schommer
f41bb0fc53
Merge pull request #101 from benmanu/pulls/state-yml-fixture
...
FIX: params isn't defined in this context
2015-12-09 08:58:41 +13:00
Ben Manu
15f1a083fc
FIX: params isn't defined in this context, may be carry over from PHPUnit sessions. Changing context to $state to match other env values.
2015-12-08 11:10:19 +13:00
Ingo Schommer
cfd1044ae5
Merge pull request #100 from scott1702/confirming-element-click
...
Add ability to confirm/dismiss dialogs after clicking in elements
2015-10-22 16:29:44 +13:00
scott1702
33eb0adf0c
Add ability to confirm/dismiss dialogs after clicking in elements
2015-10-22 16:27:48 +13:00
scott1702
b2ff3e73ad
Add double click action
2015-10-22 16:13:47 +13:00
Ingo Schommer
d39c8ebd29
Fix nested folder fixture creation
...
Fixes regression caused by 8d49da2609
prepareAsset('Folder','some/folder') would create some/folder/folder due to wrong ParentID relations.
Also set the 'ID' of folders to avoid creating them again.
2015-10-22 13:27:09 +13:00
Ingo Schommer
8d49da2609
Fixed Folder::find_or_make() use
2015-10-19 10:55:56 +13:00
Damian Mooyman
15b491ed74
API Update for filesystem refactor
2015-10-16 10:53:37 +13:00
Igor Nadj
8088c29f5a
ENH: adding safety try-catch blocks to prevent whole test suite from falling over
2015-09-10 14:32:09 +12:00
Igor Nadj
ed391da991
ENH: adding wrapper around visit to detect 404s
2015-09-09 16:59:06 +12:00
Ingo Schommer
661bfe9a89
Comply with moved use_test_manifest() method
...
Moved from TestRunner to SapphireTest in 4.0.
2015-08-28 16:50:51 +12:00
Igor
2ff6ddeaaa
FIX logic error where a variable is used for two purposes
...
The issue that prompted this change was that at line 361, if an exception needed to be thrown, it would be thrown with $field being a NodeElement rather than a string, causing a Catchable Fatal Error to be thrown in ElementNotFoundException::__construct#46 (can't convert object of type NodeElement to string).
2015-08-24 14:27:56 +12:00
Jeffrey Guo
64c4819e68
make matched email simple
2015-08-06 14:42:02 +12:00
Jeffrey Guo
3b6b525e8c
update the params to be array on sending email
2015-07-28 09:14:08 +12:00
Jeffrey Guo
117c1ef662
email contains plain text
2015-07-02 14:12:10 +12:00
Ingo Schommer
88dabf555a
Fixed "wait" step, merge regression from df4a859
2015-04-21 15:26:15 +12:00
madmatt
6da19dac18
Fix step when multiple relations exist between the two joined objects
2015-04-21 14:38:58 +12:00
Ingo Schommer
0cdfb2e116
Graceful handling of regions which aren't CSS selectors
...
The dual use of regions (CSS selector and natural language name)
causes some difficulties in processing. Since the CSS selector
is tried first, we need to ensure the underlying logic
doesn't bail on invald selector syntax.
See https://github.com/silverstripe-labs/silverstripe-behat-extension/pull/84
2015-04-08 08:19:34 +12:00
Ingo Schommer
7db12fc9bb
Unit tests
2015-04-07 23:15:22 +12:00
Ingo Schommer
4297e36762
Allow updating of fixtures in creation steps if they already exist
2015-02-15 21:47:22 +13:00
Ingo Schommer
7e8eaae73a
Save ParentID alongside first record write to avoid validation errors
2015-02-15 21:47:20 +13:00
Ingo Schommer
4dece01c34
Allow "given ... has data" notation for fixtures
...
Makes more sense in english when the fixture has already been created beforehand
2015-02-15 21:39:06 +13:00
Damian Mooyman
f3c5df7957
Merge pull request #80 from silverstripe-iterators/pulls/password-complexity
...
More complex password default to comply with custom authenticators
2015-01-12 09:48:58 +13:00
Jeffrey Guo
df4a859dbc
Scroll to page top/bottom or an element
...
Amended by @chillu, see https://github.com/silverstripe-labs/silverstripe-behat-extension/pull/74
2015-01-08 00:03:23 +13:00
Ingo Schommer
fcdfb04825
More complex password default to comply with custom authenticators
...
Changed from 'secret' to 'Secret!123'.
For example, the CWP default configuration increases the required
complexity to include uppercase letters, see https://gitlab.cwp.govt.nz/cwp/cwp-core/blob/master/_config.php#L134
This should not impact existing tests since the password is only used
indirectly, through "Given I login with ADMIN permissions".
2015-01-06 14:22:15 +13:00
Ben Manu
13271a8a6d
FIX: adding caller class parameter to DataObject get
2015-01-06 10:51:41 +13:00
Jeffrey Guo
9a51b32196
Updated and added new step to check the email contains text
...
add text to readme for pull request 3635 in framework
2014-11-27 17:58:11 +13:00
Ingo Schommer
752abd4447
Note about publication state on child pages
2014-11-11 15:59:24 +13:00
Sean Harvey
61e7bb44cf
Revert "Allow setting create_temp_database to false to stop temp db creation"
2014-10-09 09:55:00 +13:00
Sean Harvey
9c3319a342
Allow setting create_temp_database to false to stop temp db creation
...
TestSessionEnvironment by default will create a temporary database for
use with behat tests, but this may not be required.
e.g. in your behat.yml:
```
default:
...
extensions:
...
SilverStripe\BehatExtension\Extension:
create_temp_database: false
```
2014-10-08 19:59:06 +13:00
Sriram Venkatesh
e1d42b89fe
Formatting Cleanup
2014-10-01 02:20:40 +13:00
Sriram Venkatesh
6f648a418a
Fixes #27 : I wait for the text/element
2014-10-01 01:44:30 +13:00
Ingo Schommer
060f45f2cc
Merge pull request #73 from jeffreyguo/pulls/cms-modal
...
Handle modal dialogue which will block all tests in the cms
2014-09-23 22:20:23 +12:00
Jeffrey Guo
54eaa63845
Handle modal dialogue which will block all tests in the cms
...
updated as an afterScenario event
2014-09-22 17:32:46 +12:00
Ingo Schommer
dd2f51fa74
Merge pull request #71 from jeffreyguo/pulls/jserror-2
...
Fixed issue on removing a DOM attribute
2014-09-09 08:18:09 +12:00
Jeffrey Guo
cfbf61f60c
wait for DOM to remove attribute
...
use window.jQuery instead of $
updated to removeAttr method
2014-09-08 16:45:23 +12:00
Ingo Schommer
83a72210cd
Merge pull request #69 from jeffreyguo/pulls/assign-object-to-object
...
Assign one object to another object
2014-09-05 09:48:20 +12:00
Ingo Schommer
6e13a68762
Merge pull request #70 from jeffreyguo/pulls/jserror
...
wait for DOM to remove attribute
2014-09-05 09:46:24 +12:00
Jeffrey Guo
8ea981519e
wait for DOM to remove attribute
...
use window.jQuery instead of $
2014-09-04 14:10:25 +12:00
Jeffrey Guo
67eca1fcff
assign one object to another
...
corrected name convention and sql issue
corrected grammar in description
2014-09-03 17:00:29 +12:00
Ingo Schommer
16d5a0099b
Merge pull request #67 from tractorcow/pulls/refactor-resize
...
Refactor default screen resize into SilverStripeContext
2014-09-02 08:47:31 +12:00
Ingo Schommer
d139eb82e0
Merge pull request #60 from jeffreyguo/pulls/text-before-after
...
check a text is before or after another text
2014-08-22 09:04:47 +12:00
Jeffrey Guo
9ba5043871
check a text is before or after another text
...
added comments for each step
check a text is before or after another text in an element
2014-08-21 18:22:22 +12:00
Damian Mooyman
c0801a63ef
Refactor default screen resize into SilverStripeContext
2014-08-14 16:21:31 +12:00
Damian Mooyman
01b129de35
Ensure that the window is maximised prior to running each step
2014-08-11 17:58:02 +12:00
Damian Mooyman
bc3b0b4cd5
API Support extended JS error reporting
2014-08-08 16:50:10 +12:00
Fred Condo
81f292a2b5
Make SiteTree reference conditional
...
This makes the boilerplate code compatible for testing
framework-only sites.
2014-07-16 17:01:45 -07:00
Ingo Schommer
8956b2d4fa
More resilient login form detection (works with absolute URLs and GET params)
2014-07-01 19:13:32 +12:00
Damian Mooyman
042989e270
BUG Fix js change event not triggering
2014-06-26 09:22:18 +12:00
Sean Harvey
223bb9ec22
Fixing call to protected method elementNotFound.
...
elementNotFound() is protected, it can't be called from outside.
Throw an ElementNotFoundException instead.
2014-06-25 13:47:35 +12:00
Ingo Schommer
3fe596be63
Fix quoting in getRegionObj()
...
Based on work by @jeffreyguo.
See https://github.com/silverstripe-labs/silverstripe-behat-extension/pull/53/commits
2014-06-18 12:58:37 +12:00
Sean Harvey
2dbd92b16b
Merge pull request #51 from silverstripe-labs/pulls/table
...
Step definitions for table interactions
2014-06-17 13:43:29 +12:00
Ingo Schommer
74116566f3
Merge pull request #47 from silverstripe-labs/develop
...
Update to mink 1.6 and remove custom fork
2014-06-13 15:37:05 +12:00
Ingo Schommer
ff86bde036
Step definitions for table interactions
...
Moved from framework module which had GridField specific steps under the same naming.
Made them more versatile, working for both GridField and other <table> nodes.
2014-06-13 15:05:32 +12:00
Jeffrey Guo
27a381f4e0
handle single quote with build-in way in getRegionObj
2014-06-12 14:51:01 +12:00
Ingo Schommer
1af1620fb4
Merge pull request #36 from jeffreyguo/pulls/find-email-by-title
...
add new step definition to identify multiple emails by from to and title
2014-06-04 13:26:48 +12:00
Ingo Schommer
0694d4e3a3
Merge pull request #39 from srizzling/pulls/fill-in-field-region
...
Adding support to fill in field in a specfic region
2014-06-04 13:24:50 +12:00
Damian Mooyman
0050149bfa
Update to mink 1.6 and remove custom fork
...
Add javascript-workaround for selecting hidden elements
2014-05-30 16:27:47 +12:00
Jeffrey Guo
86d8139f1b
find radiobutton by its type
2014-05-23 11:16:50 +12:00
Sean Harvey
b789a3b67c
Adding "I follow the link "test", dismissing the dialog" step
2014-05-16 10:35:07 +12:00
Sriram Venkatesh
5e58444e07
Adding support to fill in field in a specfic region
2014-05-07 16:07:21 +12:00
Ingo Schommer
10da00c796
Guard against older jQuery versions
2014-05-07 10:47:29 +12:00
Damian Mooyman
a7ae2497d4
API Allow "I select the * radio button"
2014-05-05 13:05:15 +12:00
Jeffrey Guo
29d99e884f
add new step definition to identify multiple emails by title
2014-05-01 10:28:20 +12:00
Ingo Schommer
68524346c6
Merge pull request #35 from jeffreyguo/pulls/test-mailer-update
...
Get the latest email from the email
2014-04-30 17:53:15 +12:00
Jeffrey Guo
4f7b794d9c
get the last one email
2014-04-30 17:30:50 +12:00
Ingo Schommer
3b8518e4ab
NEW Set current date and time through Behat
2014-04-16 11:14:42 +12:00
Ingo Schommer
d313b4ccce
Merge pull request #32 from tractorcow/pulls/asset-fixture
...
API Allow usage of assets with modified / created date specification
2014-04-16 11:12:27 +12:00
madmatt
1a1d5bdead
FIX: Invalid Exception throw results in CI failures
2014-04-15 23:56:03 +12:00
Damian Mooyman
2520cb1bbf
API Allow usage of assets with modified / created date specification
2014-04-15 09:25:32 +12:00
Sriram Venkatesh
2294ee92a2
Session in undefined
2014-04-09 13:06:35 +12:00
Ingo Schommer
2ec760cb1d
Improved region support, added "see text in region" step
2014-04-09 10:31:41 +12:00
Ingo Schommer
6a7df2f702
More resistant login form detection
...
Had some issues with multiple login forms on the same page,
e.g. for social login, or with duplicated hidden login forms
in the header.
2014-04-07 18:08:56 +12:00
Ingo Schommer
6f0cc7f68e
Support multiple login forms on a page
...
Thanks to Jeffrey Guo for contributing.
2014-04-07 13:03:40 +12:00
Sean Harvey
c8120b2785
Don't validate passwords when writing a fake password
...
Stops existing password validators causing issues with logging in fake
users, as "secret" might not meet complexity requirements.
2014-04-02 22:09:22 +13:00
Ingo Schommer
8211d3f5fc
More versatile "press button/link, confirming dialog"
2014-03-31 14:30:49 +13:00
Ingo Schommer
e55c6bb22a
Fixed key/value confusion on fixture label mapping
2014-03-30 23:02:57 +13:00
Ingo Schommer
415a7d3c87
Allow fields and buttons to be disabled in behat steps
2014-03-26 13:35:41 +13:00
Sriram Venkatesh
2acd0889d4
Find Link in Region
2014-03-19 17:09:43 +13:00
Ingo Schommer
41cdc87eae
Import DB and fixtures as a separate step
...
Usually triggered by manual test session environment runs
2014-03-19 08:42:23 +13:00
Will Rossiter
21b05999ee
Prevent undefined method on error
2014-03-03 22:11:04 +13:00
Ingo Schommer
ca455423ef
Changes required for persisting state directly on disk
...
applyState() used to persist in memory, which could lead
to outdated state depending on execution flow between CLI
and web requests. Since state is now in a JSON object,
it also fixes the array access.
2014-03-01 18:26:21 +13:00
Ingo Schommer
a40896db8b
Using TestSessionEnvironment for saving emails
...
Easier debugging through JSON file inspection,
which can be logged in its entirety more easily
than a database table. It also keeps data in one place.
2014-03-01 14:47:12 +13:00
Ingo Schommer
a0517d7680
Better email assertions
2014-02-27 23:02:43 +13:00
Ingo Schommer
d09f2353e6
Negation for email assertions
2014-02-26 14:25:53 +13:00
Ingo Schommer
d003707894
BEHAT_SCREEN_SIZE env var
2014-02-25 11:33:12 +13:00
Ingo Schommer
7f3cc3b6b9
Using CLI to start test session rather than browser
...
Now possible because we don't rely on browser session state
to link up state to CLI (recent changes in testsession module).
2014-02-24 22:54:12 +13:00
Sam Minnee
5a7d25e530
FIX: Use executeScript() because we discard the return value.
...
evaluateScript() injects 'return ' into the executed script, which often breaks multi-line code.
executeScript() is better
2014-02-13 18:08:28 +13:00
Sriram Venkatesh
f7125a9eff
Added a step for creating a breakpoint
2014-02-12 15:09:19 +13:00
Ingo Schommer
0be032261a
Calling destructor on fatal errors
...
Avoids leaving TESTS_RUNNING.js around
2014-02-09 18:56:40 +13:00
Ingo Schommer
0308dee0dc
Merge pull request #23 from madmatt/pulls/TestSessionEnvironment
...
Update SilverStripeAwareInitializer to use new TestSessionEnvironment class
2014-02-09 18:47:13 +13:00
Mateusz Uzdowski
77d5a3d2e9
NEW Add generic checks for fields being enabled/disabled.
2014-02-07 15:04:43 +13:00
madmatt
d61760ddc6
Update SilverStripeAwareInitializer to use new TestSessionEnvironment class.
...
This change is designed to be merged in at the same time as the matching
testsession PR (silverstripe-labs/silverstripe-testsession#7 ) is merged in, as
it relies on changes introduced in that PR to function.
This updates the behat-extension to use the new file-based capabilities of the
testsession module. Instead of creating a temp database, it will create an
entire testsession in the initializer, and then continue on as per normal. When
Behat runs end, the cleanup code will completely remove the testsession state,
instead of just removing the temp database. This may mean in the future that
you can hook into the TestSessionEnvironment via extensions, and connect to
other test services during a testsession, then cleanup after yourself on ending
a test session.
API CHANGES:
- Remove SilverStripeAwareInitializer::initializeTempDb()
- Remove SilverStripeAwareInitializer::deleteTempDb()
2014-02-05 11:57:46 +13:00
Ingo Schommer
db5dfa0e01
Merge pull request #19 from madmatt/pulls/fix-fixture-parentid
...
Fix FixtureContext::prepareAsset() assuming Parent exists
2014-01-30 15:06:39 -08:00
Matt
fe77d1dacb
In stepCreateRecordWithTable, if a fixture already exists then update that record
...
rather than create a new, identical fixture.
2014-01-31 10:01:31 +13:00
Sriram Venkatesh
26f47d9d58
General Coding Convention Changes
2014-01-27 10:50:20 +13:00
Sriram Venkatesh
f5957a0586
Click first visable link
2014-01-27 10:42:14 +13:00