require('../test_utils.js')() var tests = [ 'list servers', 'list services', 'list listeners RW-Split-Router', 'list monitors', 'list sessions', 'list filters', 'list modules', 'list users', 'list commands', 'show server server1', 'show service RW-Split-Router', 'show monitor MariaDB-Monitor', 'show session 5', 'show filter Hint', 'show module readwritesplit', 'show maxscale', 'show logging', 'show commands readwritesplit', ] describe("Diagnostic Commands", function() { before(startMaxScale) tests.forEach(function(i) { it(i, function() { return doCommand(i) .should.be.fulfilled }); }) after(stopMaxScale) }); describe("MXS-1656: `list servers` with GTIDs", function() { before(startMaxScale) doCheck = function() { return doCommand('list servers --tsv') .then((res) => { // Check that at least 5 columns are returned with the last column consisting of // empty strings. This is because the test setup uses file and position based // replication. res = res.split('\n').map(i => i.split('\t')).map(i => i[5]) _.uniq(res).should.deep.equal(['']) }) } it('Lists monitored servers', function() { return doCheck() }); it('Lists unmonitored servers', function() { return doCommand('unlink monitor MariaDB-Monitor server1 server2 server3 server4') .then(() => doCheck()) }); it('Lists partially monitored servers', function() { return doCommand('link monitor MariaDB-Monitor server1 server3') .then(() => doCheck()) }); after(stopMaxScale) });