Skip to content

Releases: dnotes/quickpickle

[email protected]

17 Dec 08:41
ad108f3
Compare
Choose a tag to compare

Patch Changes

  • 2626333: Render empty Features and Rules without errors.
  • 4ce1543: added "data" property to World interface and variable
  • d4d5717: Fix DataTables and DocStrings replacements in Scenario Outlines

@quickpickle/[email protected]

17 Dec 08:41
ad108f3
Compare
Choose a tag to compare

Minor Changes

  • 63e01b5: Refactor for better playwright code
  • a614266: added screenshot options to playwright world config

Patch Changes

[email protected]

27 Nov 16:26
0adf8c6
Compare
Choose a tag to compare

Minor Changes

  • 2611f1d: Added support for custom parameter types, exactly as in CucumberJS.
    A simple example:

    // Step definition file
    defineParameterType({
      name: "updown",
      regexp: /(up|down)/,
    });
    Given("a number {int}", (world, num) => {
      world.number = num;
    });
    When("the number goes {updown} {int}", (world, updown, num) => {
      if (updown === "up") world.number += num;
      else world.number -= num;
    });
    Then("the number should be {int}", (world, num) => {
      expect(world.number).toBe(num);
    });
    Feature: Custom parameter types
      Scenario: The number
        Given a number 4
        When the number goes up 5
        Then the number should be 9

Patch Changes

  • a28faaa: Snippets are now well supported, producing async/await javascript with appropriate variables.
  • 0ddc22b: moved readme file for npmjs.com

@quickpickle/[email protected]

27 Nov 16:26
0adf8c6
Compare
Choose a tag to compare

Patch Changes

[email protected]

13 Nov 22:44
a7b69fe
Compare
Choose a tag to compare

Patch Changes

  • 3241e3e: remove console.log()s. /oops

@quickpickle/[email protected]

13 Nov 22:44
a7b69fe
Compare
Choose a tag to compare

Patch Changes

[email protected]

12 Nov 00:35
f5bf7a6
Compare
Choose a tag to compare

Patch Changes

  • a5742b4: Fix tagged hooks to match @cucumber/cucumber implementation.
    Tagged hooks are hooks that only run in the context of certain tags;
    for example, a BeforeAll hook that only starts the server for
    Features tagged with "@server".

    This change also adds info about the Feature to the "common" variable.

@quickpickle/[email protected]

12 Nov 00:35
f5bf7a6
Compare
Choose a tag to compare

Patch Changes

[email protected]

11 Nov 09:51
59920d1
Compare
Choose a tag to compare

Patch Changes

  • ffa86bf: Added common variable should to BeforeAll and AfterAll hooks.
    In your support files, you can get or set variables that should be
    common (shared) across all the tests in the Feature file.

    In general it is not good testing practice to use this for anything
    other than setup and teardown; for example, you might start a server
    and save the port in BeforeAll, then tear it down in AfterAll.

    Here is a ridiculous example demonstrating the functionality:

    import { BeforeAll, AfterAll, AfterStep } from "quickpickle";
    BeforeAll(async (common) => {
      common.totalSteps = 0;
    });
    AfterStep(async (world) => {
      world.common.totalSteps++;
    });
    AfterAll(async (common) => {
      expect(common.totalSteps).not.toBeFalsy();
    });
  • dee9d4b: Fixed errors in the hook implementations.

@quickpickle/[email protected]

11 Nov 09:51
59920d1
Compare
Choose a tag to compare

Patch Changes

  • ffa86bf: Added common variable should to BeforeAll and AfterAll hooks.
    In your support files, you can get or set variables that should be
    common (shared) across all the tests in the Feature file.

    In general it is not good testing practice to use this for anything
    other than setup and teardown; for example, you might start a server
    and save the port in BeforeAll, then tear it down in AfterAll.

    Here is a ridiculous example demonstrating the functionality:

    import { BeforeAll, AfterAll, AfterStep } from "quickpickle";
    BeforeAll(async (common) => {
      common.totalSteps = 0;
    });
    AfterStep(async (world) => {
      world.common.totalSteps++;
    });
    AfterAll(async (common) => {
      expect(common.totalSteps).not.toBeFalsy();
    });
  • Updated dependencies [ffa86bf]

  • Updated dependencies [dee9d4b]