From 7ef825bd804606f7fd8d5ebba2763eb3bc25b245 Mon Sep 17 00:00:00 2001 From: Jonas Amundsen Date: Mon, 22 Apr 2024 00:49:36 +0200 Subject: [PATCH] Make `transformer` of defineParameterType optional This is to accurately reflect actual behavior [1]. This fixes #1179 [2]. [1] https://github.com/cucumber/cucumber-js/pull/2397 [2] https://github.com/badeball/cypress-cucumber-preprocessor/issues/1179 --- CHANGELOG.md | 4 ++++ lib/public-member-types.ts | 2 +- test-d/entrypoint-browser.test-d.ts | 5 +++++ test-d/entrypoint-node.test-d.ts | 5 +++++ 4 files changed, 15 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index faf778cb..00031705 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,10 @@ All notable changes to this project will be documented in this file. +## Unreleased + +- Fix type signature of `defineParameterType` to correctly reflect `transformer` property's optionality, fixes [#1179](https://github.com/badeball/cypress-cucumber-preprocessor/issues/1179). + ## v20.0.3 - Handle browser / page crash gracefully, fixes [#1172](https://github.com/badeball/cypress-cucumber-preprocessor/issues/1172). diff --git a/lib/public-member-types.ts b/lib/public-member-types.ts index 2ac5c2ed..dc829f54 100644 --- a/lib/public-member-types.ts +++ b/lib/public-member-types.ts @@ -3,7 +3,7 @@ import * as messages from "@cucumber/messages"; export interface IParameterTypeDefinition { name: string; regexp: RegExp; - transformer: (this: C, ...match: string[]) => T; + transformer?: (this: C, ...match: string[]) => T; } export interface IRunHookOptions { diff --git a/test-d/entrypoint-browser.test-d.ts b/test-d/entrypoint-browser.test-d.ts index 04742f10..eab153f9 100644 --- a/test-d/entrypoint-browser.test-d.ts +++ b/test-d/entrypoint-browser.test-d.ts @@ -140,6 +140,11 @@ defineParameterType({ }, }); +defineParameterType({ + name: "foo", + regexp: /foo/, +}); + BeforeAll(function () { expectType(this); }); diff --git a/test-d/entrypoint-node.test-d.ts b/test-d/entrypoint-node.test-d.ts index d264f4c8..847fc2c1 100644 --- a/test-d/entrypoint-node.test-d.ts +++ b/test-d/entrypoint-node.test-d.ts @@ -140,6 +140,11 @@ defineParameterType({ }, }); +defineParameterType({ + name: "foo", + regexp: /foo/, +}); + BeforeAll(function () { expectType(this); });