12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- var request = require('supertest');
- var path = require('path');
- var liveServer = require('..').start({
- root: path.join(__dirname, "data"),
- port: 0,
- open: false
- });
- describe('basic functional tests', function(){
- it('should respond with index.html', function(done){
- request(liveServer)
- .get('/')
- .expect('Content-Type', 'text/html; charset=UTF-8')
- .expect(/hello world/i)
- .expect(200, done);
- });
- it('should have injected script', function(done){
- request(liveServer)
- .get('/')
- .expect('Content-Type', 'text/html; charset=UTF-8')
- .expect(/<script [^]+?live reload enabled[^]+?<\/script>/i)
- .expect(200, done);
- });
- it('should inject script when tags are in CAPS', function(done){
- request(liveServer)
- .get('/index-caps.htm')
- .expect('Content-Type', 'text/html; charset=UTF-8')
- .expect(/<script [^]+?live reload enabled[^]+?<\/script>/i)
- .expect(200, done);
- });
- it('should inject to <head> when no <body>', function(done){
- request(liveServer)
- .get('/index-head.html')
- .expect('Content-Type', 'text/html; charset=UTF-8')
- .expect(/<script [^]+?live reload enabled[^]+?<\/script>/i)
- .expect(200, done);
- });
- it('should inject also svg files', function(done){
- request(liveServer)
- .get('/test.svg')
- .expect('Content-Type', 'image/svg+xml')
- .expect(function(res) {
- if (res.body.toString().indexOf("Live reload enabled") == -1)
- throw new Error("injected code not found");
- })
- .expect(200, done);
- });
- it('should not inject html fragments', function(done){
- request(liveServer)
- .get('/fragment.html')
- .expect('Content-Type', 'text/html; charset=UTF-8')
- .expect(function(res) {
- if (res.text.toString().indexOf("Live reload enabled") > -1)
- throw new Error("injected code should not be found");
- })
- .expect(200, done);
- });
- xit('should have WebSocket connection', function(done){
- done(); // todo
- });
- xit('should reload on page change', function(done){
- done(); // todo
- });
- xit('should reload (without refreshing) on css change', function(done){
- done(); // todo
- });
- });
|