The navList.js is correct when I run npm run watch
.
But when I try to run npm test
, the log only shows setArticleGroup: 1
( setArticleGroup: 2
and setArticleGroup: 3
are missing ).
I realize that getArticlesFromDatabase
is not work in test, why is this the case?
navList.test.js
it('function setArticleGroup() ', function () {
let app = shallow(<NavList sieve="info" />);
});
navList.js
import {getArticlesFromDatabase} from '../csrfData';
setArticleGroup(){
let that = this;
console.log('setArticleGroup: 1 ');
getArticlesFromDatabase.then(function(value) {
console.log('setArticleGroup: 2 ');
...//skip
that.setState({'articleGroup':articleGroup},()=>{
console.log('setArticleGroup: 3 ',articleGroup);
});
});
}
csrfData.js
var getArticlesFromDatabase = new Promise(function(resolve, reject) {
let articles;
axios.get('../api/articles/get-articles-list').then(response=>{
articles = response.data.list;
resolve(articles);
}).catch(function (error) {
console.log(error);
});
});
export {getArticlesFromDatabase,testCsrfData};