0

Function that I want to test

function setWebsite(website){

    curWebsite = website;
    var r = /:\/\/(.[^/]+)/;
    myWebsite = website.replace(/^(https?:\/\/)?(www\.)?/,'');
    return myWebsite;

  }

code in test folder

const { setWebsite } = require('./popup');
test('should give current website name', () => {
    const text = setWebsite('https://www.youtube.com/');
    expect(text).toBe('youtube');

});

Error message

TypeError: setWebsite is not a function
4

1 回答 1

0

为了在另一个文件中使用函数,您需要将其导出:

function setWebsite(website) {

  curWebsite = website;
  var r = /:\/\/(.[^/]+)/;
  myWebsite = website.replace(/^(https?:\/\/)?(www\.)?/, '');
  return myWebsite;

}

module.exports.setWebsite = setWebsite;

你需要一个模块而不是一个函数:

const popupModule = require('./popup');
test('should give current website name', () => {
    const text = popupModule.setWebsite('https://www.youtube.com/');
    expect(text).toBe('youtube');

});
于 2020-03-27T18:43:00.747 回答