asjon/test/circolari.coffee
2015-04-28 14:07:22 +02:00

62 lines
2.1 KiB
CoffeeScript

nock = require 'nock'
expect = require("chai").should()
Asjon = require '../asjon-testing.coffee'
asjon = undefined
describe 'modulo circolari', ->
before (done) ->
# Inizializzo robot
Asjon (assa) ->
asjon = assa
after asjon.after
afterEach asjon.clear
require('../scripts/circolari.coffee')(asjon.robot)
done()
it 'dovrebbe contattare l\'indirizzo corretto', (done) ->
nock('http://galileicrema.it')
.get('/Intraitis/comunicazioni/ComVis.asp?PerChi=Tutti')
.reply 200, '<html></html>'
ss = [/sto controllando le circolari/i,/errore/i]
acc = 0
asjon.receive (e,l) ->
l.join().should.match ss[acc]
acc++
if acc is 2 then done()
asjon.send 'asjon quali sono le ultime circolari?'
it 'dovrebbe parsare correttamente le circolari', (done) ->
nock('http://galileicrema.it')
.get('/Intraitis/comunicazioni/ComVis.asp?PerChi=Tutti')
.replyWithFile 200, __dirname+'/circolari.html'
expected = '(274) (27/4/2015) SIMULAZIONE PROVE ESAME DI STATO\n(273) (27/4/2015) PROGETTO CAMPIONI SENZA TRUCCO'
ss = ['sto controllando le circolari...',expected]
acc = 0
asjon.receive (e,l) ->
l.join().should.equal ss[acc]
acc++
if acc is 2 then done()
asjon.send 'asjon quali sono le ultime 2 circolari?'
it 'dovrebbe accettare correttamente il numero di circolari da visualizzare', (done) ->
nock('http://galileicrema.it')
.get('/Intraitis/comunicazioni/ComVis.asp?PerChi=Tutti')
.replyWithFile 200, __dirname+'/circolari.html'
ss = 'sto controllando le circolari...'
acc = 0
asjon.receive (e,l) ->
if acc is 0
l.join().should.equal ss
else
l.join().split('\n').length.should.equal 5
acc++
if acc is 2 then done()
asjon.send 'asjon quali sono le ultime 5 circolari?'
it 'dovrebbe linkare correttamente il numero di circolari', (done) ->
asjon.receive (e,l) ->
l.join().should.equal 'http://galileicrema.it/Intraitis/documenti/comunicazioni/2014/Circolare228.pdf'
done()
asjon.send 'asjon linkami la circolare 228'