2015-04-28 17:50:59 +02:00
|
|
|
nock = require 'nock'
|
|
|
|
expect = require("chai").should()
|
|
|
|
|
2017-02-27 00:27:39 +01:00
|
|
|
Asjon = require './asjon-testing.coffee'
|
2015-04-28 17:50:59 +02:00
|
|
|
asjon = undefined
|
|
|
|
|
|
|
|
describe 'modulo drone', ->
|
|
|
|
before (done) ->
|
|
|
|
# Inizializzo robot
|
|
|
|
Asjon (assa) ->
|
|
|
|
asjon = assa
|
|
|
|
after asjon.after
|
|
|
|
afterEach asjon.clear
|
|
|
|
require('../scripts/drone.coffee')(asjon.robot)
|
|
|
|
done()
|
|
|
|
|
|
|
|
it 'dovrebbe rispondere quando interrogato', (done) ->
|
|
|
|
nock('https://drone.io')
|
|
|
|
.get('/github.com/fazo96/asjon/files/coverage/coverage.json')
|
|
|
|
.reply 200, { coverage: 0, files: [] }
|
|
|
|
questions = [
|
|
|
|
"asjon mostrami la copertura dei test"
|
|
|
|
"asjon copertura dei test"
|
|
|
|
"asjon copertura"
|
|
|
|
"asjon coverage"
|
|
|
|
]
|
|
|
|
acc = 0
|
|
|
|
asjon.receive (e,l) ->
|
|
|
|
acc++
|
|
|
|
if acc is questions.length then done()
|
|
|
|
questions.map (q) -> asjon.send q
|
|
|
|
|
|
|
|
it 'dovrebbe reagire correttamente a un errore', (done) ->
|
|
|
|
nock('https://drone.io')
|
|
|
|
.get('/github.com/fazo96/asjon/files/coverage/coverage.json')
|
|
|
|
.reply 200, 'invalid answer'
|
|
|
|
asjon.receive (e,l) ->
|
2015-04-29 15:35:16 +02:00
|
|
|
l.join().should.match /^Errore: SyntaxError: Unexpected token/g
|
2015-04-28 17:50:59 +02:00
|
|
|
done()
|
|
|
|
asjon.send 'asjon coverage'
|
|
|
|
|
2015-09-24 15:26:48 +02:00
|
|
|
it 'dovrebbe reagire correttamente quando il report non รจ disponibile (404)', (done) ->
|
|
|
|
nock('https://drone.io')
|
|
|
|
.get('/github.com/fazo96/asjon/files/coverage/coverage.json')
|
|
|
|
.reply 404, '404 page not found'
|
|
|
|
asjon.receive (e,l) ->
|
|
|
|
l.join().should.match /^Coverage report non disponibile/g
|
|
|
|
done()
|
|
|
|
asjon.send 'asjon coverage'
|
|
|
|
|
2015-04-28 17:50:59 +02:00
|
|
|
it 'dovrebbe parsare correttamente il report json', (done) ->
|
|
|
|
nock('https://drone.io')
|
|
|
|
.get('/github.com/fazo96/asjon/files/coverage/coverage.json')
|
|
|
|
.replyWithFile 200, __dirname+'/coverage.json'
|
|
|
|
asjon.receive (e,l) ->
|
|
|
|
l.join().should.match /^=== Coverage: /g
|
|
|
|
done()
|
|
|
|
asjon.send 'asjon coverage'
|