Skip to content

Releases: Ragin-LundF/bbd-cucumber-gherkin-lib

Release 1.42.0

17 Jan 09:08
b1b9b70
Compare
Choose a tag to compare

An issue was fixed, which prevented overwriting the Accept-Language, Content-Type, and Accept headers.

Release 1.41.0

10 Jan 13:21
31758d6
Compare
Choose a tag to compare

Updated libraries

  • Spring Boot updated to 2.6.2
  • Cucumber updated to 7.2.2

Extended Polling

Polling now allows also to check for the HTTP code only.

Unauthorized Example

Scenario: Polling unauthorized until response code is correct with long config
  Given that a requests polls every 1 seconds
  And that a requests polls for 5 times
  And that the API path is "/api/v1/polling"
  When executing a GET poll request until the response code is 200

Authorized Example

Scenario: Polling authorized until response code is correct with short config
  Given that a request polls every 1 seconds for 5 times
  And that the API path is "/api/v1/pollingAuth"
  When executing an authorized GET poll request until the response code is 200

Examples can be found at src/test/resources/features/polling/.

Extended Header Manipulation

Prefix for Header manipulation

Scenario: Add custom header with prefix
  Given I set the header "X-My-Custom-Header" to "ABC_DEF" prefixed by "PRE_"

This sets the header X-My-Custom-Header to the value of ABC_DEF with the prefix PRE_.
The prefix and the value can be also a variable name from the context.

Please have a look to the examples at: src/test/resources/features/header/

Release 1.40.0

11 Dec 16:03
5825385
Compare
Choose a tag to compare

Updated libraries

  • Spring Boot updated to 2.6.1
  • Cucumber updated to 7.1.0

Release 1.39.0

28 Oct 11:19
d249b0c
Compare
Choose a tag to compare

Updated libraries

  • Spring Boot updated to 2.5.6 because of a memory leak in tomcat
  • Cucumber updated to 7.0.0

Enhancements

Added check for headers

If it is required to check if a HTTP header contains a special value, this can be done with the following sentence:

And I ensure, that the header "<header name>" is equal to "<header values>"

Be aware, that headers are always an array.
If there are more header values you want to check, please add them comma separated.

Example:

Scenario: Check a header
  When executing an authorized GET call to "/api/v1/header"
  Then I ensure that the status code of the response is 200
  And I ensure, that the header "X-TEST-HEADER" is equal to "present"

This might be used to check if XSS headers are set for example.

See src/test/resources/features/header/header.feature

Release 1.37.0

05 Oct 07:24
be3476a
Compare
Choose a tag to compare

Updated libraries

  • Spring Boot updated to 2.5.5
  • Cucumber-JVM updated to 6.11.0

Release 1.36.0

21 Jul 08:14
bf72000
Compare
Choose a tag to compare

Updated libraries

  • Spring updated to 2.5.2
    • With the Spring update Liquibase will also be updated to 4.3.5
  • Cucumber-JVM updated to 6.10.4
  • JSON-Unit updated to 2.27.0

Small enhancements

A user token can be resolved also from a context map. If nothing was found there, it uses the given one.
This refers to the following sentences:

  • that the following users and tokens are existing
  • that the user is {string}

In general the ScenarioStateContext class has now a new method called resolveEntry(key: String).
This method tries to read the value from the context map for the given key.
If the key was not found, it returns the key itself.
This may be helpful for own sentences based on the context map.

Possibility to wait

There is a new sentence that allows you to wait sometime before proceeding:

  Scenario: Wait for something
    Then I wait for 1000 ms

Examples at:
src/test/resources/features/performance/performance.feature

Release 1.35.0 - Date utils

01 May 18:15
62c0683
Compare
Choose a tag to compare

Introduction of date util sentences and extended date validators.

This version introduces some Given sentences to create a date in the past or future.
In addition, there is a new matcher that allows comparing this date with a JSON date or a datetime.

Read more at:
docs/date_operations.md.

Examples at:
src/test/resources/features/date_operations/date_operations.feature

Release 1.34.1

23 Apr 08:26
3886858
Compare
Choose a tag to compare

An issue with the new configuration was fixed.

The introduction of the BddProperties class made some problems with not configured properties.

Please ensure also, that you've put the library on the configuration scan path:

@ConfigurationPropertiesScan({
        "com.ragin.bdd", "configuration.com.ragin.bdd"
})

Release 1.34.0 - Maven Central and Spring Update

22 Apr 23:16
Compare
Choose a tag to compare

Updates

This release updates the Spring dependency to 2.4.5.

It is recommended to update the project also to this version.

New groupId and Maven Central deployment

Because of the deprecation of jcenter, the artifacts are now published on Maven Central.

To be able to do that, the groupId has to be changed to:

Maven

<dependency>
	<groupId>io.github.ragin-lundf</groupId>
	<artifactId>bdd-cucumber-gherkin-lib</artifactId>
	<version>${version.bdd-cucumber-gherkin-lib}</version>
	<scope>test</scope>
</dependency>

Gradle

dependencies {
    testImplementation "io.github.ragin-lundf:bdd-cucumber-gherkin-lib:${version.bdd-cucumber-gherkin-lib}"
}

Release 1.33.0

21 Apr 13:18
32df174
Compare
Choose a tag to compare

Re-Release of 1.32.0

This is a re-release of 1.32.0, because of some issues with jcenter.