MaxScale/maxctrl/test/special.js
Markus Mäkelä 80569dd5a9 MXS-1300: Correct test case descriptions
The test descriptions now describe the expected logical outcome of the
test, not the operation being done.
2017-08-09 11:39:25 +03:00

83 lines
2.7 KiB
JavaScript

require('../test_utils.js')()
describe("Library invocation", function() {
before(startMaxScale)
var ctrl = require('../lib/core.js')
it('extra options', function() {
var opts = { extra_args: [ '--quiet'] }
return ctrl.execute('list servers'.split(' '), opts)
.should.be.fulfilled
})
it('no options', function() {
return ctrl.execute('list servers'.split(' '))
.should.be.fulfilled
})
it('multiple hosts', function() {
var opts = { extra_args: [ '--quiet', '--hosts', '127.0.0.1:8989', 'localhost:8989'] }
return ctrl.execute('list servers'.split(' '), opts)
.should.be.fulfilled
})
it('no hosts', function() {
var opts = { extra_args: [ '--quiet', '--hosts'] }
return ctrl.execute('list servers'.split(' '), opts)
.should.be.rejected
})
it('TSV output', function() {
var opts = { extra_args: [ '--quiet', '--tsv'] }
return ctrl.execute('list servers'.split(' '), opts)
.then(function() {
return ctrl.execute('show server server1'.split(' '), opts)
})
.should.be.fulfilled
})
it('secure mode', function() {
// The test is run in HTTP mode so a HTTPS request should fail
var opts = { extra_args: [ '--quiet', '--secure'] }
return ctrl.execute('list servers'.split(' '), opts)
.should.be.rejected
})
// These should be last
it('user credentials', function() {
var opts1 = { extra_args: [ '--quiet'] }
var opts2 = { extra_args: [ '--quiet', '--user', 'test', '--password', 'test'] }
return ctrl.execute('create user test test'.split(' '), opts1)
.then(function() {
return ctrl.execute('alter maxscale admin_auth true'.split(' '), opts1)
})
.then(function() {
return ctrl.execute('list servers'.split(' '), opts2)
})
.should.be.fulfilled
})
it('reject on bad user credentials', function() {
var opts = { extra_args: [ '--quiet', '--user', 'not-a-user', '--password', 'not-a-password'] }
return ctrl.execute('list servers'.split(' '), opts)
.should.be.rejected
})
it('command help', function() {
var opts = { extra_args: [ '--quitet'] }
return ctrl.execute('help list'.split(' '), opts)
.should.be.fulfilled
})
it('reject on connection failure', function() {
stopMaxScale()
.then(function() {
return ctrl.execute('list servers'.split(' '))
.should.be.rejected
})
})
after(stopMaxScale)
});