const request = require('supertest');
const mongoose = require("mongoose");
const User = require("./User");
const app = require('./app');
// Esto soluciona un issue de Jest con las cookies en Superagent. Ver
// https://github.com/facebook/jest/issues/2549
request.agent.prototype._saveCookies = function(res) {
const cookies = res.headers['set-cookie'];
if (cookies) this.jar.setCookies(cookies[0].split(","));
const signIn = async (credentials) => {
const agent = request.agent(app);
await agent.post('/login')
describe("GET /private", () => {
test("redirects to login if not authenticated", async () => {
const response = await request(app).get('/polls');
expect(response.statusCode).toBe(302);
expect(response.headers.location).toBe("/login");
test("responds with success code if authenticated", async () => {
const user = await User.create(credentials);
const agent = await signIn(credentials);
const response = await agent.get("/private");
expect(response.statusCode).toBe(200);