0
我想在我的登录页面上基于admin-on-rest登录页面测试空的用户名文本字段。翻译是不是一个功能管理员休息测试
https://github.com/marmelab/admin-on-rest/blob/master/src/mui/auth/Login.js
我的测试用例是这样的。
import Login, { renderTextField } from '../../../modules/core/Login';
import {propTypes, reduxForm, Field, reducer as formReducer} from 'redux-form';
import redux, { createStore, combineReducers } from 'redux'
import { Provider } from 'react-redux'
describe ('<Login/>',() => {
let container
let submitting
let onSave
let store
let tn
beforeEach(()=>{
submitting = false
//tn= sinon.spy()
onSave = Promise.resolve()
})
it("shows help text when first name is set to blank",() => {
store = createStore(combineReducers({ form: formReducer }))
tn = (label) => label;
const props = {
onSave,
submitting: false,
theme: customTheme,
translate: tn,
store
}
container = mount(
<Provider store={store}>
<Login {...props}/>
</Provider>
)
const input = container.find('TextField').first()
input.simulate('blur')
console.log(input.debug())
expect(input.props.errorText).to.equal('Required')
})
})
我在redux表单验证函数中得到一个错误。
TypeError: translate is not a function
at validate (C:/src/modules/core/Login.js:165:25)
即该行的链接在上面的代码中
errors.username = translate('aor.validation.required');
如何测试呢?
非常感谢你的帮助。但我仍然得到一个警告。 “'locale'在'TranslationProvider'中被标记为必需,但其值为'undefined'”。 另外我的登录页面也有一个通知来报告登录状态。我收到一条错误“无法读取属性”通知“的未定义”。我如何更新这个全局状态变量? –