70 lines
2.0 KiB
CoffeeScript
70 lines
2.0 KiB
CoffeeScript
nock = require 'nock'
|
|
expect = require("chai").should()
|
|
|
|
Asjon = require '../asjon-testing.coffee'
|
|
asjon = undefined
|
|
|
|
describe 'modulo shell', ->
|
|
before (done) ->
|
|
# Inizializzo robot
|
|
Asjon (assa) ->
|
|
asjon = assa
|
|
after asjon.after
|
|
afterEach asjon.clear
|
|
require('../scripts/shell.coffee')(asjon.robot)
|
|
done()
|
|
|
|
it 'dovrebbe non eseguire i comandi se l\'interlocutore non รจ autorizzato', (done) ->
|
|
asjon.receive (e,l) ->
|
|
l.join().should.match /BZBZ (.+)/i
|
|
done()
|
|
asjon.send 'asjon controlla gli aggiornamenti'
|
|
|
|
ss = ['Operazione in corso: ', 'Operazione "completata": ']
|
|
regexes = [/Operazione in corso: (.+)/i, /Operazione "completata": (.+)/i]
|
|
|
|
it 'dovrebbe riconoscere la stanza autorizzata', (done) ->
|
|
process.env.ADMIN_ROOM = ':mocha'
|
|
acc = 0
|
|
asjon.receive (e,l) ->
|
|
l.join().should.match regexes[acc]
|
|
acc++
|
|
if acc is 2 then done()
|
|
asjon.send 'asjon controlla gli aggiornamenti'
|
|
|
|
it 'dovrebbe eseguire i comandi corretti per installare gli aggiornamenti', (done) ->
|
|
cmd = 'git pull && npm install'
|
|
acc = 0
|
|
asjon.receive (e,l) ->
|
|
l.join().should.equal ss[acc]+cmd
|
|
acc++
|
|
if acc is 2 then done()
|
|
asjon.send 'asjon aggiornati'
|
|
|
|
it 'dovrebbe eseguire i comandi corretti per controllare gli aggiornamenti', (done) ->
|
|
cmd = 'git fetch && git status'
|
|
acc = 0
|
|
asjon.receive (e,l) ->
|
|
l.join().should.equal ss[acc]+cmd
|
|
acc++
|
|
if acc is 2 then done()
|
|
asjon.send 'asjon controlla gli aggiornamenti'
|
|
|
|
it 'dovrebbe eseguire i comandi corretti per installare le dipendenze', (done) ->
|
|
cmd = 'npm install'
|
|
acc = 0
|
|
asjon.receive (e,l) ->
|
|
l.join().should.equal ss[acc]+cmd
|
|
acc++
|
|
if acc is 2 then done()
|
|
asjon.send 'asjon installa le dipendenze'
|
|
|
|
it 'dovrebbe eseguire i comandi corretti per eseguire i test', (done) ->
|
|
cmd = 'npm test'
|
|
acc = 0
|
|
asjon.receive (e,l) ->
|
|
l.join().should.equal ss[acc]+cmd
|
|
acc++
|
|
if acc is 2 then done()
|
|
asjon.send 'asjon esegui i test'
|