This release addresses #805 and introduces improvements to
the following Serenity/JS modules:
Related external tickets: jasmine/jasmine#1939
View detailed code diff on GitHub
- core:
formatted
can be configured to produce single- or multi-line descriptions (21145a3) - core:
inspected
produces a better description of functions used as parameters (15535c6) - core: 3.0 RC (469d54e), closes #805
- core: answerProxy renamed to ProxyAnswer to better reflect its purpose (a98fe41)
- core: corrected type defs of Question.as (681ce22)
- core: exported createProxyAnswer to make it easier to use (5471989)
- core: removed Loop as it will be replaced (0b63d27)
- core: removed Property as it will be replaced by new Question (fd7fa10)
- core: removed Transform and mapping functions as they'll be replaced with new Question (506eaea)
- core: renamed "Model" type to "Adapter" to better reflect its purpose (b4ea7a1), closes #805
- cucumber: support for recognising non-Serenity AssertionErrors in older version of Cucumber (31e9e99)
- deps: updated WebdriverIO (9de63d4)
- deps: web (b075b8e)
- jasmine: upgraded Jasmine to 3.10.0 (707dbff), closes jasmine/jasmine#1939
- protractor: fixed the interaction to Switch (762ca84)
- protractor: lastScriptExecution.result() returns undefined instead of null for void functions (997d87a)
- protractor: modernised ProtractorParam to return a Screenplay Model (43c2032)
- protractor: removed interaction to ResizeBrowserWindow in favour of Page.setViewportSize() (b8e471d)
- protractor: replaced obsolete "Window", replaced by "Page" in @serenity-js/web (a3442c4)
- web: added missing export (c5ffc0a), closes #805
- web: corrected timestamp rounding when retrieving the expiry date of a cookie (d636965)
- webdriverio: ensure getLastScriptExecutionResult returns undefined for void functions (aa00dfd)
- webdriverio: fixed synchronisation issue in ModalDialog (12324b2), closes #805
- webdriverio: separated UIElement.hoverOver from UIElement.scrollIntoView (cf4ca2c)
- webdriverio: updated WebdriverIO to 7.13.2 (ef79d19)
- webdriverio: updated WebdriverIO to 7.16.7 (3316e29)
- web: ensure all Web interactions extend the same base class (b358c0b)
- web: fixed the interaction to Select (10b7b74)
- web: optimised PhotoTakingStrategy (085b7f7)
- web: removed Cookie as it will be re-implemented (cb3d081)
- web: removed incorrect export (ebf80c0)
- web: removed incorrect import (90cb025)
- web: removed window-specific APIs from BrowseTheWeb that got replaced by Page (918f447), closes #805
- web: renamed Element and associated classes to PageElement to avoid name conflicts (1e4204b)
- web: renamed PageElementList to PageElements to improve readability (a9903a7), closes #805
- web: standardised getters across PageElement implementations (336472b)
- web: wordsmithing of interface names (5a1e76a)
- core: question.about creates a proxy around the answer to simplify the API (25e0841)
- core: question.about produces "props" that proxy the methods of the underlying model (f771872)
- protractor: compatibility with @serenity-js/web (9df4db2), closes #805
- protractor: removed Protractor-specific Target implementations in favour of @serenity-js/web (5cfc7e5)
- web: a common way to run the tests for all the web adapters (c7e584a)
- web: added Page.viewportSize and Page.setViewportSize methods (4cabbe2)
- web: all Screenplay APIs migrated from @serenity-js/webdriverio to @serenity-js/web (7b6b95d)
- webdriverio: support for native WebdriverIO services (8d5ad22)
- web: interaction to set a Cookie (c056439), closes #805
- web: interaction to setViewportSize of a Page (dd7f180)
- web: introduced UIElementQuestion to help ensure no NPEs in UI-related questions (fe29121)
- web: migrated Photographer from @serenity-js/protractor to @serenity-js/web (4506dac), closes #805
- web: ModalDialog available for both Protractor and WebdriverIO adapters (ef3c566), closes #805
- web: new module @serenity-js/web to provide Web-related Screenplay Pattern APIs (bead861)
- web: page provides an abstraction around browser window (2e70a3b)
- web: Page.url() and Page.title() replace Website.url() and Website.title() (49fe009), closes #805
- web: removed Target in favour of PageElement (69496c4), closes #805
- web: support for switching browsing context (a73a635), closes #805
- web: support for working with cookies (39cde6d), closes #805
- core: Introduced @serenity-js/web - a shared library for Serenity/JS Web integration
modules such as @serenity-js/protractor and @serenity-js/webdriverio. Dropped support for Node 12.