Невозможно передать параметр из запроса API извне - PullRequest
0 голосов
/ 04 апреля 2019

Приведенный ниже код представляет собой простой тест мокко, в котором я пытаюсь передать значение переменной my_token, чтобы использовать ее в различных тестах. Перепробовал все возможности, но это не работает. Не уверен, что я делаю не так!

var supertest = require('supertest'),
    api = supertest('www.xyz.com');

    var my_token = 'DID NOT WORK';

    describe('get collars list', function(done) {   

        before(function(done) {
            api.post('/api/v2/auth')
                .send({username:"SP",password:"**"})
                .set('Content-Type', 'application/json')
                .expect(200)
                .end(function (err, res) {                  

                my_token = "worked"

                done();
            });
            console.log ('passing value to the test :  '+ my_token );
        });  

     it('should login', function(done) {     
       console.log (' token passed to test  : ' + my_token);
     });
    });

1 Ответ

0 голосов
/ 04 апреля 2019

Вам не нужно done в тестовом примере, который не включает асинхронную операцию.

Это должно работать.

var supertest = require("supertest"),
  api = supertest("www.xyz.com");

var my_token = "DID NOT WORK";

describe("get collars list", function(done) {
  before(function(done) {
    api
      .post("/api/v2/auth")
      .send({ username: "SP", password: "**" })
      .set("Content-Type", "application/json")
      .expect(200)
      .end(function(err, res) {
        my_token = "worked";

        done();
      });
    console.log("passing value to the test :  " + my_token);
  });

  it("should login", function() {
    console.log(" token passed to test  : " + my_token);
  });
});
...