/* eslint-disable no-unused-expressions */ 'use strict' const chai = require('chai') const expect = chai.expect const request = require('supertest') const series = require('async/series') const loginUtils = require('./utils/login') const serversUtils = require('./utils/servers') const videosUtils = require('./utils/videos') describe('Test a client controllers', function () { let server = null before(function (done) { this.timeout(120000) series([ function (next) { serversUtils.flushTests(next) }, function (next) { serversUtils.runServer(1, function (server1) { server = server1 next() }) }, function (next) { loginUtils.loginAndGetAccessToken(server, function (err, token) { if (err) throw err server.accessToken = token next() }) }, function (next) { const videoAttributes = { name: 'my super name for pod 1', description: 'my super description for pod 1' } videosUtils.uploadVideo(server.url, server.accessToken, videoAttributes, next) }, function (next) { videosUtils.getVideosList(server.url, function (err, res) { if (err) throw err const videos = res.body.data expect(videos.length).to.equal(1) server.video = videos[0] next() }) } ], done) }) it('It should have valid opengraph tags on the watch page with video id', function (done) { request(server.url) .get('/videos/watch/' + server.video.id) .expect(200, function (err, res) { if (err) throw err expect(res.text).to.contain('') expect(res.text).to.contain('') done() }) }) it('It should have valid opengraph tags on the watch page with video uuid', function (done) { request(server.url) .get('/videos/watch/' + server.video.uuid) .expect(200, function (err, res) { if (err) throw err expect(res.text).to.contain('') expect(res.text).to.contain('') done() }) }) after(function (done) { process.kill(-server.app.pid) // Keep the logs if the test failed if (this.ok) { serversUtils.flushTests(done) } else { done() } }) })