3 Commits

Author SHA1 Message Date
Mats Kindahl
58b1eb83d4 Add TimescaleNode subclasses for TAP Testing
Use subclassing to inherit from `PostgresNode` and create a hierarchy
containing `AccessNode` and `DataNode` to simplify creating tests with
multiple nodes.

Also, two new functions are added:

`TimescaleNode::create`: Creates the new node by calling
`get_new_node`, `init` and `start` in that order.

`AccessNode::add_data_node`: Adds a new data node to the access node.

Also rewrite the test to use the new hierarchy.
2021-05-21 13:20:24 +02:00
Mats Kindahl
551ac56937 Add Perl code check GitHub action
Add a run of `perltidy` to make sure that all the Perl code is
correctly formatted. Also fix the formatting of one file that did not
follow the style in `scripts/perltidyrc`.
2021-05-21 12:50:51 +02:00
Nikhil
4efa51cd8d Add tap tests infrastructure support
The TAP testing PG framework meets our requirements for doing
multinode/stand-alone-binaries testing for scenarios which need
individual multiple PG instances (multi-node testing is a prime
example).

This commit adds the necessary wrappers to allow the use of the TAP
testing framework in timescale code base. The README in "test/perl"
directory gives a fair idea of how to write tap tests. A simple tap
test has been added to provide a reference point for developers to
write new ones.

One can go to "build/tsl/test" and invoke "make checkprove" to see
the tap test in action.

Also includes changes for enabling github CI to run these taptests by
installing the requisite dependencies.

Includes changes to license checking scripts to handle new *.pl and
*.pm files.

Also added a new scripts/perltidyrc to aid in formatting of these
files.
2021-05-19 13:49:02 +05:30