Skip to content

Releases: tarantool/luatest

1.3.1

26 Nov 14:45

Choose a tag to compare

Overview

This release fixes a bug in assert_covers introduced in 1.3.0.

Changes

  • Fixed a bug when assert_covers didn't check array items for coverage and instead treated arrays as scalars (gh-439).

1.3.0

25 Nov 14:14

Choose a tag to compare

Overview

The most notable improvement introduced in this release is the ability to create a test cluster that isn't attached to a test group. This allows to create more than one test cluster in the same test or use the same test cluster in different tests. Another major improvement is the new, more convenient way to modify the configuration of a test cluster. Also, this release includes a few bug fixes in various test helpers. Note that one of the fixes changes the way assert_covers treats arrays: they are now treated as scalar values, which may break existing tests.

Changes

  • Fixed a bug when assert_covers treats arrays as maps (gh-405).
  • Added the ability to keep and adjust cluster declarative configuration with cluster:modify_config() and apply it later via cluster:apply_config_changes() without passing an explicit configuration (gh-426).
  • Added an option to create Cluster objects without global hook management, allowing tests to keep clusters alive between test runs (gh-414).
  • Fixed a bug where URI search would terminate prematurely when multiple replicasets existed (gh-427).
  • Fixed cbuilder:set_instance_option() to reuse existing instances found in a provided configuration and error when a target instance is missing. Also, cbuilder:add_instance() now rejects duplicate instance names across groups and replicasets (gh-404).

1.2.1

02 Sep 23:54

Choose a tag to compare

Overview

This is a minor release that fixes a bug in Server:grep_log().

Changes

  • Fixed a bug when Server:grep_log() didn't consider the reset option.

1.2.0

25 Jul 07:55

Choose a tag to compare

Overview

This is a minor release that fixes a bug in server:grep_log() and adds some new functionality to cluster:sync().

Changes

  • Fixed a bug when server:grep_log() failed to find a string logged in server:exec() called immediately before it (gh-421).
  • Fixed a bug when it wasn't possible to reload the cluster config with cluster:reload() after removing an instance with cluster:sync(). Also added an option to cluster:sync() to start/stop added/removed instances (gh-423).

1.1.0

08 Apr 13:28

Choose a tag to compare

Overview

This release introduces unified logging (gh-324) and support for Tarantool 3.0 (gh-363). Also, it includes a few bug fixes and some minor usability improvements.

Changes

  • Added logging to unified file (gh-324).
  • Added memory leak detection during server process execution (gh-349).
  • Added assert_error_covers.
  • Added more logs (gh-326).
  • Added justrun helper as a tarantool runner and output catcher (gh-365).
  • Changed error message for too long Unix domain socket paths (gh-341).
  • Added cbuilder helper as a declarative configuration builder (gh-366).
  • Made assert_error_* additionally check error trace if required.
  • Added --list-test-cases and --run-test-case CLI options.
  • Introduced preloaded hooks (gh-380).
  • Added treegen helper as a tree generator (gh-364).
  • Added support for declarative configuration to server.lua (gh-367).
  • Made assert_covers recursive (gh-379).
  • Added alias --no-capture for the option -c (gh-391).
  • Fixed reporting of an assertion failure in Server:exec() in case verbose error serialization is enabled in Tarantool (gh-376).
  • Added assert_items_exclude.
  • Stripped useless ... lines from error trace.
  • Fixed error trace reporting for functions executed with Server:exec() (gh-396).
  • Removed pretty-printing of luatest.log arguments.
  • Added cluster helper as a tool for managing a Tarantool cluster (gh-368).
  • Fixed Server:grep_log() to work with a server instance started using the cluster helper (gh-389).
  • Fixed Server:grep_log() to work with a stopped server instance (gh-397).

1.0.1

26 Jan 12:43

Choose a tag to compare

Overview

This release includes several bug fixes and improvements.

Changes

  • Fixed incorrect Unix domain socket path length check (gh-341).
  • Now net_box_uri can be accepted as a table (gh-342).
  • Fixed returning values from Server:exec() if some of them are nil (gh-350).
  • Introduce luatest.log helper (gh-326).

1.0.0

23 Nov 10:47

Choose a tag to compare

Overview

This release extends server.lua API and introduces new modules. Also, it includes several useful features and major bug fixes.

Changes

  • Extend server.lua API:
    • Update parameters of the Server:new() function:
      • The alias parameter defaults to 'server'.
      • The command parameter is optional.
      • The workdir parameter is optional.
      • New parameter datadir (optional).
      • New parameter box_cfg (optional).
    • Add waiting until the started server is ready.
    • Add waiting until the process of the stopped server is terminated.
    • Add new functions:
      • Server.build_listen_uri()
      • Server:drop()
      • Server:wait_until_ready()
      • Server:get_instance_id()
      • Server:get_instance_uuid()
      • Server:grep_log()
      • Server:assert_follows_upstream()
      • Server:get_election_term()
      • Server:wait_for_election_term()
      • Server:wait_for_election_state()
      • Server:wait_for_election_leader()
      • Server:wait_until_election_leader_found()
      • Server:get_synchro_queue_term()
      • Server:wait_for_synchro_queue_term()
      • Server:play_wal_until_synchro_queue_is_busy()
      • Server:get_vclock()
      • Server:get_downstream_vclock()
      • Server:wait_for_vclock()
      • Server:wait_for_downstream_to()
      • Server:wait_for_vclock_of()
      • Server:update_box_cfg()
      • Server:get_box_cfg()
  • Add new module replica_proxy.lua.
  • Add new module replica_set.lua.
  • Add new module tarantool.lua.
  • Check docs generation with LDoc.
  • Add the --repeat-group (-R) option to run tests in a circle within the
    group.
  • Forbid negative values for the --repeat (-r) option.
  • Change the coverage_report parameter type to boolean in the Server:new()
    function.
  • Print Tarantool version used by luatest.
  • Auto-require the luatest module in the Server:exec() function where it is
    available via the corresponding upvalue.
  • Raise an error when non-array arguments passed to the Server:exec()
    function.
  • Save server artifacts (logs, snapshots, etc.) to the ${VARDIR}/artifacts
    directory if the test fails.
  • Fix requiring the internal test helper when running tests.
  • Fix collecting coverage if the tarantool binary has a suffix.