Skip to content

Releases: Seddryck/NBi

v1.24

10 Aug 21:40
Compare
Choose a tag to compare

Release 1.24

aka NBi 1.24.0

appVeyor build - nuget link - gpr link
Upgrade-Package NBi.Framework -version 1.24.0

This release 1.24 fix a bug fixes and add some enhancements from new contributors: Davijde and fmms. All these important contributions are really welcome.

What's new/fixed

Framework

  • #701 - lookup-matches assertion is now returning no error when a row from the candidate result-set has no matching key in the reference result-set.
  • #717 - Environment variables can also be gathered from the process scope

genbiL

  • #702 - Add Exception handling also for Quiet Execution

v1.23

16 Dec 11:26
Compare
Choose a tag to compare

Release 1.23

aka NBi 1.23.0

appVeyor build - nuget link - gpr link Upgrade-Package NBi.Framework -version 1.23.0

This release 1.23 extends the work on the alterations but also welcome some features and bug fixes from new contributors: lukzas, TheAutomatingMrLynch , saviourofdp or people reporting issues with the toolset and its documentation: FLandgraf, volkerheck, AnimeshRoy86, fdw. All these important contributions are really welcome.

What's new

Framework

  • #632 - query-scalar to get a Json value out of a database
  • #623 - Iterative result-set
  • #584 - Add namespaces to CSharpScalarResolver

Some new alterations to ease the writing of tests:

  • #620 - Alteration union to create a single result-set from two
  • #617 - Alteration duplicate
  • #618 - Output transformations within the duplicate alteration
  • #562 - Alteration filtering on unique-rows
  • #569 - Alteration extend supporting variables when defining the script for the new value
  • #579 - Count operation for summarization
  • #590 - Create a result-set applying a cartesian product of a sequence and a result-set

Some new native transformations to ease the transformation of data

  • #640 - Native transformation to apply a mask to a text
  • #637 - Native transformation to remove a given char from a text
  • #619 - Native transformation to divide a numeric value

bug fixes

  • #663 - run-once is broken
  • #638 - Wait for Power BI Desktop to Get Going
  • #600 - Error while trying to open Power BI Desktop
  • #612 - save suite action incorrectly serializes CSV profile properties
  • #591 - Nunit FileLoadException when using Bootstrapper in Visual Studio 2019

genbiL

  • #610 - Adding CSV profile and other small additions to genbiL

v1.22

06 Feb 16:42
Compare
Choose a tag to compare

Release 1.22

aka NBi 1.22.0

appVeyor build - nuget link - gpr link Upgrade-Package NBi.Framework -version 1.21.0

This release 1.22 extends the work on the testing of data exposed by a REST API. Many new improvements are related to existing features but are now supporting new scenarios.

What's new

Framework

  • #248 - Support rest-api with JSON content
  • #266 - Rest should support XML content-type
  • #269 - Support of JSONPath
  • #553 - Global variable value provided by custom code
  • #487 - Local-variable values provided by custom code
  • #488 -Any sequence should support a filter
  • #574 - Use variables inside node
  • #380 - Group-by should support grouping rows' logic based on predicates
  • #571 - Support an aggregation concatenating text values
  • #561 - Support conditions related to IO
  • #557 - New native transformations text-to-prefix/suffix
  • #567 - Support of variables into NCalc expressions
  • #565 - Define sequence with a query
  • #555 - Empty XML file generation

bug fixes

  • #573 - Complex alteration of a result-set including numeric and text values leading to a numeric with the wrong decimal separator
  • #578 - Name of a connection-string not correctly displayed in error message
  • #579 - xml-source file path error

genbiL

  • #582 - Load optional file for test-case

v1.21

01 Nov 12:55
Compare
Choose a tag to compare

Release 1.21

aka NBi 1.21.0

appVeyor build - nuget link - gpr link Upgrade-Package NBi.Framework -version 1.21.0

This release 1.21 extends the work on the support of data quality checks. The main achievement is the new result-set now available in the assertions. This new result-set also includes the xml-source element to source some information from an xml file. This inclusion also adds a few additional features for this source that really helps en enlarge the scope of possibilities. The availability of the element result-set in the assertions means that you can use all the features such as alterations even in the result-set defined in the assertion equal-to. Speaking about alterations, we have added a bunch of them for summarization, unstacking (kind of pivot) but also to rename or project some columns. Another new set of features concerns files and paths, NBi is now able to use a set of files as the source of an instance-settling and some native transformations should help when creating tests with a dynamic set of files. A few other enhancements focus on the native transformations and the usage of variables in many places.

What's new

Framework

  • #358 - Replace the result-set defined in the equal-to assertion by the new one
  • #527 - New result-set should support the xml-source element
  • #534 and #531- Improve management of namespaces in the xml-source
  • #543 - equal-to assertion with behavior set to single-row is now supporting columns' name and not just ordinal position of columns
  • #495 - Add support of intersection-of in addition to subset/superset
  • #411 - Add support for tolerance when using lookup-matches
  • #493 - New alteration for renaming a column of a result-set
  • #548 - New alteration for renaming supports a way to not fail when the column doesn't exist
  • #385 - New alteration to hold or remove columns of a result-set by name or index
  • #507 - New alteration to add a new column based on value of other columns and the NCalc engine
  • #536 - The new alteration to add a new column based on value of other columns should also support Native transformations engine.
  • #512 - New alteration to unstack a result-set
  • #546 - Unstack alteration should support a set of columns that must be created
  • #364 - New alteration for summarization
  • #350 - New alteration supporting lookups
  • #513 - Add support for multiple native transformations in a transform statement or alteration
  • #481 - Add support for variables in all commands of setup or cleanup
  • #481 - Add support of custom commands in setup and cleanup
  • #486 - Use filenames as the source for the value of a local-variable
  • #482 - Add support for wildcards for the tasks file-delete or file-copy
  • #485 - File-copy will now automatically create the target directory
  • #490 - Native functions to transform file to some properties
  • #489 - Native functions to support transformations of the file's path
  • #515 and #539 - Native transformations for basic arithmetic with numeric and dateTime
  • #521 and #538 - Native transformations for holding/skipping first/last chars of a text
  • #510 - Native transformations for rounding a dateTime
  • #494 and #537 - Support of variables, format and native transformations for the reference of a predicate
  • #472 - Support of a column's value for the reference of a predicate
  • #533 - Support of a column's value for the parameter of a native transformation
  • #532 - Native transformations are now supporting variables as parameters of functions
  • #496 - Format resolver is now supporting native transformations and not just a variable

bug fixes

  • #547 - single-row assertion gives false positive
  • #480 - Potential double evaluation of a variable when used in the system-under-test and the assert of the same test.
  • #517 - Using format in a parameter: casting error
  • #464 - Empty/NULL value as a part of the key
  • #511 - Regex no longer working correctly with | (or) symbol
  • #551 - Timeout in seconds and not milliseconds for queries
  • #544 - MDX query parameter interpreted as a column name for a row-context and not as a literal

genbiL

  • #504 - Add the possibility to include tests in a group and not only at the root
  • #501 - Add support to redirect generated tests to different groups with genbiL
  • #502 - Support for adding a setup or cleanup to a group through genbiL

GitHub package repository (GPR)

The different packages are now also available on GitHub package repository at https://github.com/Seddryck/NBi/packages

v1.21-rc.2

10 Oct 12:03
Compare
Choose a tag to compare
v1.21-rc.2 Pre-release
Pre-release

Release 1.21-RC.2

aka NBi 1.21.0-rc0002

appVeyor build - nuget link - gpr link Upgrade-Package NBi.Framework -version 1.21.0-rc0001

This release 1.21 extends the work on the support of data quality checks. The main achievement is the new result-set now available in the assertions. This new result-set also includes the xml-source element to source some information from an xml file. This inclusion also adds a few additional features for this source that really helps en enlarge the scope of possibilities. Availability of the result-set means that you can use all the features such as alterations even in the result-set defined in the assertion equal-to. Speaking about alterations, we have added a bunch of them for summarization, unstacking (kind of pivot) but also to rename or project some columns. Another new set of features concerns files and paths, NBi is now able to use a set of files as the source of an instance-settling and some native transformations should help when creating tests with a dynamic set of files. A few other enhancements focus on the native transformations and the usage of variables at many places.

What's new

Framework

  • #358 - Replace the result-set defined in the equal-to assertion by the new one
  • #527 - New result-set should support the xml-source element
  • #534 and #531- Improve management of namespaces in the xml-source
  • #495 - Add support of intersection-of in addition to subset/superset
  • #411 - Add support for tolerance when using lookup-matches
  • #493 - New alteration for renaming a column of a result-set
  • #385 - New alteration to hold or remove columns of a result-set by name or index
  • #507 - New alteration to add a new column based on value of other columns and the NCalc engine
  • #507 - The new alteration to add a new column based on value of other columns should also support Native transformations engine.
  • #512 - New alteration to unstack a result-set
  • #364 - New alteration for summarization
  • #350 - New alteration supporting lookups
  • #513 - Add support for multiple native transformations in a transform statement or alteration
  • #481 - Add support for variables in all commands of setup or cleanup
  • #481 - Add support of custom commands in setup and cleanup
  • #486 - Use filenames as the source for the value of a local-variable
  • #482 - Add support for wildcards for the tasks file-delete or file-copy
  • #485 - File-copy will now automatically create the target directory
  • #490 - Native functions to transform file to some properties
  • #489 - Native functions to support transformations of the file's path
  • #515 and #539 - Native transformations for basic arithmetic with numeric and dateTime
  • #521 and #538 - Native transformations for holding/skipping first/last chars of a text
  • #510 - Native transformations for rounding a dateTime
  • #494 and #537 - Support of variables, format and native transformations for the reference of a predicate
  • #472 - Support of a column's value for the reference of a predicate
  • #533 - Support of a column's value for the parameter of a native transformation
  • #496 - Format resolver should support native transformations and not just a variable

bug fixes

  • #480 - Potential double evaluation of a variable when used in the system-under-test and the assert of the same test.
  • #517 - Using format in a parameter: casting error
  • #464 - Empty/NULL value as a part of the key
  • #511 - Regex no longer working correctly with | (or) symbol

genbiL

  • #504 - Add the possibility to include tests in a group and not only at the root
  • #501 - Add support to redirect generated tests to different groups with genbiL
  • #502 - Support for adding a setup or cleanup to a group through genbiL

GitHub package repository (GPR)

The different packages are now also available on GitHub package repository at https://github.com/Seddryck/NBi/packages

v1.21-rc.1

14 Sep 20:25
Compare
Choose a tag to compare
v1.21-rc.1 Pre-release
Pre-release

Release 1.21-RC.1

aka NBi 1.21.0-rc0001

appVeyor build - nuget link - Upgrade-Package NBi.Framework -version 1.21.0-rc0001

This release 1.21 extends the work on the support of data quality checks. The main achievement is the new result-set now available in the assertions. It means that you can use all the features such as alterations even in the result-set defined in the assertion equal-to. Speaking about alterations, we have added a bunch of them for summarization, unstacking (kind of pivot) but also to rename or project some columns. Another new set of features concerns files and paths, NBi is now able to use files as the source of an instance-settlingand some native transformations should help when creating tests with a dynamic set of files. A few other enhancements concern the native transformations and the usage of variables at many places.

What's new

Framework

  • #358 - Replace the result-set defined in the equal-to assertion by the new one
  • #495 - Add support of intersection-of in addition to subset/superset
  • #411 - Add support for tolerance when using lookup-matches
  • #493 - New alteration for renaming a column of a result-set
  • #385 - New alteration to hold or remove columns of a result-set by name or index
  • #507 - New alteration to add a new column based on value of other columns
  • #512 - New alteration to unstack a result-set
  • #364 - New alteration for summarization
  • #350 - New alteration supporting lookups
  • #513 - Add support for multiple native transformations in a transform statement or alteration
  • #481 - Add support for variables in all commands of setup or cleanup
  • #481 - Add support of custom commands in setup and cleanup
  • #486 - Use filenames as the source for the value of a local-variable
  • #482 - Add support for wildcards for the tasks file-delete or file-copy
  • #485 - File-copy will now automatically create the target directory
  • #490 - Native functions to transform file to some properties
  • #489 - Native functions to support transformations of the file's path
  • #515 - Native transformations for basic arithmetic with numeric and dateTime
  • #510 - Native transformations for rounding a dateTime
  • #494 - Support of variables, format and native transformations for the reference in predicates
  • #496 - Format resolver should support native transformations and not just a variable

bug fixes

  • #480 - Potential double evaluation of a variable when used in the system-under-test and the assert of the same test.
  • #517 - Using format in a parameter: casting error
  • #464 - Empty/NULL value as a part of the key
  • #511 - Regex no longer working correctly with | (or) symbol

genbiL

  • #504 - Add the possibility to include tests in a group and not only at the root
  • #501 - Add support to redirect generated tests to different groups with genbiL
  • #502 - Support for adding a setup or cleanup to a group through genbiL

v1.20

31 May 07:46
Compare
Choose a tag to compare

Release 1.20

aka NBi 1.20.0

appVeyor build - nuget link - Upgrade-Package NBi.Framework -version 1.20.0

This release 1.20 extends the work on the support of data quality checks. This new release introduces the concept of multiple-instances for a single test definition. It means that you can run multiple the same test but with different parameters slightly affecting what is exactly tested. as an illustration, this new feature offers the opportunity to you create a single test asserting anything on all the files contained in a directory and named following a pattern of dates. To support this new major feature, we've introduced the concept of local variables. These variables are only valid in the scope of a test. The ways to define the possible values of these variables is already supporting a few use-cases such as loop with a sentinel or pre-defined lists. These variables can be used in the test but also to dynamically define traits and categories.

We've continued to work on the lookup assertions. With this release performances of the lookup-exists have been increased but we also add support to a new assertion checking that the value returned by a lookup is equal to the value contained in the result-set.

Another subset of features including on this releases are intended to improve the support of text files (csv ...). It's now possible to define a custom parser and to handle case where these files are missing.

As usual, this release also comes with some other improvements … especially around native transformations!

What's new

Framework

  • #411 - Create several cases from one test's definition
  • #431 - Support loop-sentinel with a duration step
  • #466 - Support of half-open intervals for loop-sequences
  • #434 - Support list of values when settling local-variable values
  • #441 - Use local-variables to define categories and traits or customize test's name
  • #405 - Support to check that columns resulting of a lookup match with expectations
  • #442 - Support custom parsers for flat files
  • #444 - Support a fallback to an empty result-set when a csv file is missing
  • #449 - Define a result-set as the combination of sequences
  • #443 - Support of custom conditions
  • #436 - Directly define native-transformation applying to variables at different place where variables can be consumed.
  • #468 - Native transformations available when defining expressions
  • #403 - Add native transformations for numeric
  • #403 - Add native transformations for clipping numeric and dateTime
  • #427 - Add native transformations for text
  • #435 - Add native transformations for dateTime related to month/year
  • #463 - Add a native transformation to go to next/previous day/month/year
  • #469 - Add a native transformation to set the date of a dateTime beta-available small-improvement

genbiL

  • #455 - The value of the regular expression contained in a matches-regex is now surrounded by CDATA
  • #439 - Support filter distinct when rows have arrays
  • #456 - Combination of predicates should allow for a list of less than 2 predicates

v1.20-rc.1

13 Apr 16:10
Compare
Choose a tag to compare
v1.20-rc.1 Pre-release
Pre-release

Release 1.20 (Release candidate 1)

This release 1.20 extends the work on the support of data quality checks. This new release introduces the concept of multiple-instances for a single test definition. It means that you can run multiple the same test but with different parameters slightly affecting what is exactly tested. as an illustration, this new feature offers the opportunity to you create a single test asserting anything on all the files contained in a directory and named following a pattern of dates. To support this new major feature, we've introduced the concept of local variables. These variables are only valid in the scope of a test. The ways to define the possible values of these variables is already supporting a few use-cases such as loop with a sentinel or pre-defined lists. These variables can be used in the test but also to dynamically define traits and categories.

We've continued to work on the lookup assertions. With this release performances of the lookup-exists have been increased but we also add support to a new assertion checking that the value returned by a lookup is equal to the value contained in the result-set.

Another subset of features including on this releases are intended to improve the support of text files (csv ...). It's now possible to define a custom parser and to handle case where these files are missing.

As usual, this release also comes with some other improvements … especially around native transformations!

What's new

Framework

  • #411 - Create several cases from one test's definition
  • #431 - Support loop-sentinel with a duration step
  • #466 - Support of half-open intervals for loop-sequences
  • #434 - Support list of values when settling local-variable values
  • #441 - Use local-variables to define categories and traits or customize test's name
  • #405 - Support to check that columns resulting of a lookup match with expectations
  • #442 - Support custom parsers for flat files
  • #444 - Support a fallback to an empty result-set when a csv file is missing
  • #449 - Define a result-set as the combination of sequences
  • #443 - Support of custom conditions
  • #436 - Directly define native-transformation applying to variables at different place where variables can be consumed.
  • #468 - Native transformations available when defining expressions
  • #403 - Add native transformations for numeric
  • #403 - Add native transformations for clipping numeric and dateTime
  • #427 - Add native transformations for text
  • #435 - Add native transformations for dateTime related to month/year
  • #463 - Add a native transformation to go to next/previous day/month/year
  • #469 - Add a native transformation to set the date of a dateTime beta-available small-improvement

genbiL

  • #455 - The value of the regular expression contained in a matches-regex is now surrounded by CDATA
  • #439 - Support filter distinct when rows have arrays
  • #456 - Combination of predicates should allow for a list of less than 2 predicates

v1.19

30 Dec 16:46
Compare
Choose a tag to compare

Release 1.19

This release 1.19 extends the work on the support of data quality checks. This new release introduces the support of tests around referential integrity. You can now assert if a result-set has all its foreign-keys pointing to a reference result-set (or the other way). Also interesting to note that we're expanding the usage of variables, they are now usable in more places and can be overridden in the configuration file. Another new feature, to be develop further in the next releases, is the scoring of a result-set. This feature lets you define a percentage of quality, clearly stating if a result-set is fit for purpose or not, in place of reporting a number of rows violating a predicate. This last feature is not documented in the RC.

As usual, this release also comes with some other improvements. Fifty percent of them were ideas submitted by users … thanks for sharing your ideas!

What's new

Framework

  • #352 - Add support for checking the referencial integrity of a table when defined on one or more columns
  • #413 - Support reversed lookup
  • #406 - Basic support of scoring for a result-set
  • #414 - Full support of variables for predicate’s reference
  • #421 - Add support for dynamic filename in result-set
  • #419 - You can now reference a variable as a parameter of a query in the assert block
  • #410 - Read environment variables in config/test suite
  • #409 - Override variables' value within the config file
  • #363 - New filter to reduce a result-set by selecting first/last rows
  • #415 - Support a tolerance ignore-case when comparing two textual values
  • #402 - Add some native transformations for dateTime
  • #394 - Support for Data Source using asazure protocol
  • #404 - Facilitate the embeding of NBi into an application or service
  • #365 - (bug fix) any-of's reference is converted from a list of string to a single string
  • #416 - (bug fix) Stop to throw a timeout error after 0 seconds message when the underlying reason is a syntax error in the query (was only the case for SSAS)
  • #423 - Minor improvement when dealing with errors and predicate's operand
  • #374 - (bug fix) Multiple expressions don't work with a all-rows constraint
  • #373 - Improve debugging experience for all-rows constraints with an expression

genbiL

  • #375 - Trim columns' content in genbiL
  • #389 - case cross is now supporting a join on multiple columns
  • #401 - (bug fix) genbiL adding attributes column-index and type to expression element
  • #392 - (bug fix) genbiL adding column-index to the transformation element
  • #376 - (bug fix) Action cross doesn't work when one the columns contains an array
  • #372 - (bug fix) Serialization of expression includes unexpected attributes
  • #422 - (bug fix) Incorrect serialization for csv-profile (missing-cell and empty-cell)

v1.19-rc.1

18 Nov 13:46
Compare
Choose a tag to compare
v1.19-rc.1 Pre-release
Pre-release

Release 1.19-RC1

This release 1.19 extends the work on the support of data quality checks. This new release introduces the support of tests around referential integrity. You can now assert if a result-set has all its foreign-keys pointing to a reference result-set (or the other way). Also interesting to note that we're expanding the usage of variables, they are now usable in more places and can be overridden in the configuration file. Another new feature, to be develop further in the next releases, is the scoring of a result-set. This feature lets you define a percentage of quality, clearly stating if a result-set is fit for purpose or not, in place of reporting a number of rows violating a predicate. This last feature is not documented in the RC.

As usual, this release also comes with some other improvements. Fifty percent of them were ideas submitted users … thanks for sharing your ideas!

What's new

Framework

  • #352 - Add support for checking the referencial integrity of a table when defined on one or more columns
  • #413 - Support reversed lookup
  • #406 - Basic support of scoring for a result-set
  • #414 - Full support of variables for predicate’s reference
  • #421 - Add support for dynamic filename in result-set
  • #419 - You can now reference a variable as a parameter of a query in the assert block
  • #410 - Read environment variables in config/test suite
  • #409 - Override variables' value within the config file
  • #363 - New filter to reduce a result-set by selecting first/last rows
  • #415 - Support a tolerance 'ignore-case' when comparing two textual values
  • #402 - Add some native transformations for dateTime
  • #394 - Support for Data Source using asazure protocol
  • #404 - Facilitate the embeding of NBi into an application or service
  • #365 - (bug fix) any-of's reference is converted from a list of string to a single string
  • #416 - (bug fix) Stop to throw a timeout error after 0 seconds message when the underlying reason is a syntax error in the query (was only the case for SSAS)
  • #423 - Minor improvement when dealing with errors and predicate's operand
  • #374 - (bug fix) Multiple expressions don't work with a 'all-rows' constraint
  • #373 - Improve debugging experience for 'all-rows' constraints with an expression

genbiL

  • #375 - Trim columns' content in genbiL
  • #389 - case cross is now supporting a join on multiple columns
  • #401 - (bug fix) genbiL adding attributes column-index and type to expression element
  • #392 - (bug fix) genbiL adding column-index to the transformation element
  • #376 - (bug fix) Action cross doesn't work when one the columns contains an array
  • #372 - (bug fix) Serialization of expression includes unexpected attributes
  • #422 - (bug fix) Incorrect serialization for csv-profile (missing-cell and empty-cell)