Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
scratch-www
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Analytics
Analytics
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
xpstem
scratch-www
Commits
b1d71f2a
Commit
b1d71f2a
authored
Nov 01, 2019
by
Ben Wheeler
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
revised join flow tests
parent
7b2e7582
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
64 additions
and
65 deletions
+64
-65
test/unit/components/join-flow.test.jsx
test/unit/components/join-flow.test.jsx
+64
-65
No files found.
test/unit/components/join-flow.test.jsx
View file @
b1d71f2a
...
@@ -97,8 +97,8 @@ describe('JoinFlow', () => {
...
@@ -97,8 +97,8 @@ describe('JoinFlow', () => {
joinFlowInstance
.
handleRegistrationResponse
(
responseErr
,
responseBody
,
responseObj
);
joinFlowInstance
.
handleRegistrationResponse
(
responseErr
,
responseBody
,
responseObj
);
expect
(
joinFlowInstance
.
props
.
refreshSession
).
not
.
toHaveBeenCalled
();
expect
(
joinFlowInstance
.
props
.
refreshSession
).
not
.
toHaveBeenCalled
();
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
can
TryAgain
:
false
,
errorAllows
TryAgain
:
false
,
errorMsg
:
'
registration.problemsAre "username: This field is required."
'
errorMsg
:
'
registration.problemsAre
:
"username: This field is required."
'
});
});
});
});
...
@@ -120,7 +120,7 @@ describe('JoinFlow', () => {
...
@@ -120,7 +120,7 @@ describe('JoinFlow', () => {
joinFlowInstance
.
handleRegistrationResponse
(
responseErr
,
responseBody
,
responseObj
);
joinFlowInstance
.
handleRegistrationResponse
(
responseErr
,
responseBody
,
responseObj
);
expect
(
joinFlowInstance
.
props
.
refreshSession
).
not
.
toHaveBeenCalled
();
expect
(
joinFlowInstance
.
props
.
refreshSession
).
not
.
toHaveBeenCalled
();
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
can
TryAgain
:
false
,
errorAllows
TryAgain
:
false
,
errorMsg
:
null
errorMsg
:
null
});
});
});
});
...
@@ -142,7 +142,7 @@ describe('JoinFlow', () => {
...
@@ -142,7 +142,7 @@ describe('JoinFlow', () => {
joinFlowInstance
.
handleRegistrationResponse
(
responseErr
,
responseBody
,
responseObj
);
joinFlowInstance
.
handleRegistrationResponse
(
responseErr
,
responseBody
,
responseObj
);
expect
(
joinFlowInstance
.
props
.
refreshSession
).
not
.
toHaveBeenCalled
();
expect
(
joinFlowInstance
.
props
.
refreshSession
).
not
.
toHaveBeenCalled
();
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
can
TryAgain
:
false
,
errorAllows
TryAgain
:
false
,
errorMsg
:
null
errorMsg
:
null
});
});
});
});
...
@@ -164,7 +164,7 @@ describe('JoinFlow', () => {
...
@@ -164,7 +164,7 @@ describe('JoinFlow', () => {
joinFlowInstance
.
handleRegistrationResponse
(
responseErr
,
responseBody
,
responseObj
);
joinFlowInstance
.
handleRegistrationResponse
(
responseErr
,
responseBody
,
responseObj
);
expect
(
joinFlowInstance
.
props
.
refreshSession
).
not
.
toHaveBeenCalled
();
expect
(
joinFlowInstance
.
props
.
refreshSession
).
not
.
toHaveBeenCalled
();
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
can
TryAgain
:
true
errorAllows
TryAgain
:
true
});
});
});
});
...
@@ -173,7 +173,7 @@ describe('JoinFlow', () => {
...
@@ -173,7 +173,7 @@ describe('JoinFlow', () => {
joinFlowInstance
.
setState
({});
joinFlowInstance
.
setState
({});
joinFlowInstance
.
handleCaptchaError
();
joinFlowInstance
.
handleCaptchaError
();
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
can
TryAgain
:
false
,
errorAllows
TryAgain
:
false
,
errorMsg
:
'
registration.errorCaptcha
'
errorMsg
:
'
registration.errorCaptcha
'
});
});
});
});
...
@@ -214,13 +214,13 @@ describe('JoinFlow', () => {
...
@@ -214,13 +214,13 @@ describe('JoinFlow', () => {
expect
(
progressionWrapper
).
toHaveLength
(
1
);
expect
(
progressionWrapper
).
toHaveLength
(
1
);
});
});
test
(
'
when numAttempts is 0 and registrationError
can
TryAgain is true,
'
+
test
(
'
when numAttempts is 0 and registrationError
errorAllows
TryAgain is true,
'
+
'
RegistrationErrorStep receives
can
TryAgain prop with value true
'
,
()
=>
{
'
RegistrationErrorStep receives
errorAllows
TryAgain prop with value true
'
,
()
=>
{
const
joinFlowWrapper
=
getJoinFlowWrapper
();
const
joinFlowWrapper
=
getJoinFlowWrapper
();
joinFlowWrapper
.
instance
().
setState
({
joinFlowWrapper
.
instance
().
setState
({
numAttempts
:
0
,
numAttempts
:
0
,
registrationError
:
{
registrationError
:
{
can
TryAgain
:
true
,
errorAllows
TryAgain
:
true
,
errorMsg
:
'
halp there is a errors!!
'
errorMsg
:
'
halp there is a errors!!
'
}
}
});
});
...
@@ -228,13 +228,13 @@ describe('JoinFlow', () => {
...
@@ -228,13 +228,13 @@ describe('JoinFlow', () => {
expect
(
registrationErrorWrapper
.
first
().
props
().
canTryAgain
).
toEqual
(
true
);
expect
(
registrationErrorWrapper
.
first
().
props
().
canTryAgain
).
toEqual
(
true
);
});
});
test
(
'
when numAttempts is 1 and registrationError
can
TryAgain is true,
'
+
test
(
'
when numAttempts is 1 and registrationError
errorAllows
TryAgain is true,
'
+
'
RegistrationErrorStep receives
can
TryAgain prop with value true
'
,
()
=>
{
'
RegistrationErrorStep receives
errorAllows
TryAgain prop with value true
'
,
()
=>
{
const
joinFlowWrapper
=
getJoinFlowWrapper
();
const
joinFlowWrapper
=
getJoinFlowWrapper
();
joinFlowWrapper
.
instance
().
setState
({
joinFlowWrapper
.
instance
().
setState
({
numAttempts
:
1
,
numAttempts
:
1
,
registrationError
:
{
registrationError
:
{
can
TryAgain
:
true
,
errorAllows
TryAgain
:
true
,
errorMsg
:
'
halp there is a errors!!
'
errorMsg
:
'
halp there is a errors!!
'
}
}
});
});
...
@@ -242,13 +242,13 @@ describe('JoinFlow', () => {
...
@@ -242,13 +242,13 @@ describe('JoinFlow', () => {
expect
(
registrationErrorWrapper
.
first
().
props
().
canTryAgain
).
toEqual
(
true
);
expect
(
registrationErrorWrapper
.
first
().
props
().
canTryAgain
).
toEqual
(
true
);
});
});
test
(
'
when numAttempts is 2 and registrationError
can
TryAgain is true,
'
+
test
(
'
when numAttempts is 2 and registrationError
errorAllows
TryAgain is true,
'
+
'
RegistrationErrorStep receives
can
TryAgain prop with value false
'
,
()
=>
{
'
RegistrationErrorStep receives
errorAllows
TryAgain prop with value false
'
,
()
=>
{
const
joinFlowWrapper
=
getJoinFlowWrapper
();
const
joinFlowWrapper
=
getJoinFlowWrapper
();
joinFlowWrapper
.
instance
().
setState
({
joinFlowWrapper
.
instance
().
setState
({
numAttempts
:
2
,
numAttempts
:
2
,
registrationError
:
{
registrationError
:
{
can
TryAgain
:
true
,
errorAllows
TryAgain
:
true
,
errorMsg
:
'
halp there is a errors!!
'
errorMsg
:
'
halp there is a errors!!
'
}
}
});
});
...
@@ -256,13 +256,13 @@ describe('JoinFlow', () => {
...
@@ -256,13 +256,13 @@ describe('JoinFlow', () => {
expect
(
registrationErrorWrapper
.
first
().
props
().
canTryAgain
).
toEqual
(
false
);
expect
(
registrationErrorWrapper
.
first
().
props
().
canTryAgain
).
toEqual
(
false
);
});
});
test
(
'
when numAttempts is 0 and registrationError
can
TryAgain is false,
'
+
test
(
'
when numAttempts is 0 and registrationError
errorAllows
TryAgain is false,
'
+
'
RegistrationErrorStep receives
can
TryAgain prop with value false
'
,
()
=>
{
'
RegistrationErrorStep receives
errorAllows
TryAgain prop with value false
'
,
()
=>
{
const
joinFlowWrapper
=
getJoinFlowWrapper
();
const
joinFlowWrapper
=
getJoinFlowWrapper
();
joinFlowWrapper
.
instance
().
setState
({
joinFlowWrapper
.
instance
().
setState
({
numAttempts
:
0
,
numAttempts
:
0
,
registrationError
:
{
registrationError
:
{
can
TryAgain
:
false
,
errorAllows
TryAgain
:
false
,
errorMsg
:
'
halp there is a errors!!
'
errorMsg
:
'
halp there is a errors!!
'
}
}
});
});
...
@@ -304,80 +304,80 @@ describe('JoinFlow', () => {
...
@@ -304,80 +304,80 @@ describe('JoinFlow', () => {
expect
(
formDataReference
).
not
.
toEqual
(
joinFlowInstance
.
state
.
formData
);
expect
(
formDataReference
).
not
.
toEqual
(
joinFlowInstance
.
state
.
formData
);
});
});
test
(
'
get
BodyErrors
returns object of errors
'
,
()
=>
{
test
(
'
get
ErrorsFromResponse
returns object of errors
'
,
()
=>
{
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
bodyErrors
=
joinFlowInstance
.
getBodyErrors
(
null
,
responseBodyMultipleErrs
,
{
statusCode
:
200
});
const
errorsFromResponse
=
expect
(
bodyErrors
).
toEqual
({
joinFlowInstance
.
getErrorsFromResponse
(
null
,
responseBodyMultipleErrs
,
{
statusCode
:
200
});
username
:
[
'
This field is required.
'
],
expect
(
errorsFromResponse
).
toEqual
([
recaptcha
:
[
'
Incorrect, please try again.
'
]
{
});
fieldName
:
'
username
'
,
});
errorStr
:
'
This field is required.
'
},
{
test
(
'
getBodyErrors called with non-null err returns falsy
'
,
()
=>
{
fieldName
:
'
recaptcha
'
,
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
errorStr
:
'
Incorrect, please try again.
'
const
bodyErrors
=
joinFlowInstance
.
getBodyErrors
({},
responseBodyMultipleErrs
,
{
statusCode
:
200
});
}
expect
(
bodyErrors
).
toBeFalsy
(
);
]
);
});
});
test
(
'
get
BodyErrors called with non-200 status code returns fals
y
'
,
()
=>
{
test
(
'
get
ErrorsFromResponse called with non-null err returns empty arra
y
'
,
()
=>
{
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
bodyErrors
=
joinFlowInstance
.
getBodyErrors
({},
responseBodyMultipleErrs
,
{
statusCode
:
400
});
const
errorsFromResponse
=
expect
(
bodyErrors
).
toBeFalsy
();
joinFlowInstance
.
getErrorsFromResponse
({},
responseBodyMultipleErrs
,
{
statusCode
:
200
});
expect
(
errorsFromResponse
).
toEqual
([]);
});
});
test
(
'
get
SingleError returns single error, when given response body with only one error
'
,
()
=>
{
test
(
'
get
ErrorsFromResponse called with non-200 status code returns empty array
'
,
()
=>
{
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
bodyErrors
=
joinFlowInstance
.
getBodyErrors
(
null
,
responseBodySingleErr
,
{
statusCode
:
200
});
const
errorsFromResponse
=
const
singleError
=
joinFlowInstance
.
getSingleError
(
bodyErrors
);
joinFlowInstance
.
getErrorsFromResponse
({},
responseBodyMultipleErrs
,
{
statusCode
:
400
});
expect
(
singleError
).
toEqual
({
expect
(
errorsFromResponse
).
toEqual
([]);
fieldName
:
'
recaptcha
'
,
errorStr
:
'
Incorrect, please try again.
'
});
});
});
test
(
'
get
SingleError returns falsy, when given response body with multiple errors
'
,
()
=>
{
test
(
'
get
ErrorsFromResponse gets single error, when given response body with only one error
'
,
()
=>
{
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
bodyErrors
=
joinFlowInstance
.
getBodyErrors
(
null
,
responseBodyMultipleErrs
,
{
statusCode
:
200
});
const
errorsFromResponse
=
const
singleError
=
joinFlowInstance
.
getSingleError
(
bodyErrors
);
joinFlowInstance
.
getErrorsFromResponse
(
null
,
responseBodySingleErr
,
{
statusCode
:
200
}
);
expect
(
singleError
).
toBeFalsy
(
);
expect
(
errorsFromResponse
.
length
).
toEqual
(
1
);
});
});
test
(
'
getCustomErrMsg string when given response body with multiple errors
'
,
()
=>
{
test
(
'
getCustomErrMsg string when given response body with multiple errors
'
,
()
=>
{
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
bodyErrors
=
joinFlowInstance
.
getBodyErrors
(
null
,
responseBodyMultipleErrs
,
{
statusCode
:
200
});
const
errorsFromResponse
=
const
customErrMsg
=
joinFlowInstance
.
getCustomErrMsg
(
bodyErrors
);
joinFlowInstance
.
getErrorsFromResponse
(
null
,
responseBodyMultipleErrs
,
{
statusCode
:
200
});
expect
(
customErrMsg
).
toEqual
(
'
registration.problemsAre "username: This field is required.;
'
+
const
customErrMsg
=
joinFlowInstance
.
getCustomErrMsg
(
errorsFromResponse
);
expect
(
customErrMsg
).
toEqual
(
'
registration.problemsAre: "username: This field is required.;
'
+
'
recaptcha: Incorrect, please try again."
'
);
'
recaptcha: Incorrect, please try again."
'
);
});
});
test
(
'
getCustomErrMsg string when given response body with single error
'
,
()
=>
{
test
(
'
getCustomErrMsg string when given response body with single error
'
,
()
=>
{
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
bodyErrors
=
joinFlowInstance
.
getBodyErrors
(
null
,
responseBodySingleErr
,
{
statusCode
:
200
});
const
errorsFromResponse
=
const
customErrMsg
=
joinFlowInstance
.
getCustomErrMsg
(
bodyErrors
);
joinFlowInstance
.
getErrorsFromResponse
(
null
,
responseBodySingleErr
,
{
statusCode
:
200
});
expect
(
customErrMsg
).
toEqual
(
'
registration.problemsAre "recaptcha: Incorrect, please try again."
'
);
const
customErrMsg
=
joinFlowInstance
.
getCustomErrMsg
(
errorsFromResponse
);
expect
(
customErrMsg
).
toEqual
(
'
registration.problemsAre: "recaptcha: Incorrect, please try again."
'
);
});
});
test
(
'
getRegistrationSuccess
returns true when given response body with single error
'
,
()
=>
{
test
(
'
registrationIsSuccessful
returns true when given response body with single error
'
,
()
=>
{
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
success
=
joinFlowInstance
.
getRegistrationSuccess
(
null
,
responseBodySuccess
,
{
statusCode
:
200
});
const
success
=
joinFlowInstance
.
registrationIsSuccessful
(
null
,
responseBodySuccess
,
{
statusCode
:
200
});
expect
(
success
).
toEqual
(
true
);
expect
(
success
).
toEqual
(
true
);
});
});
test
(
'
getRegistrationSuccess
returns false when given status code not 200
'
,
()
=>
{
test
(
'
registrationIsSuccessful
returns false when given status code not 200
'
,
()
=>
{
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
success
=
joinFlowInstance
.
getRegistrationSuccess
(
null
,
responseBodySuccess
,
{
statusCode
:
500
});
const
success
=
joinFlowInstance
.
registrationIsSuccessful
(
null
,
responseBodySuccess
,
{
statusCode
:
500
});
expect
(
success
).
toEqual
(
false
);
expect
(
success
).
toEqual
(
false
);
});
});
test
(
'
getRegistrationSuccess
returns false when given body with success field false
'
,
()
=>
{
test
(
'
registrationIsSuccessful
returns false when given body with success field false
'
,
()
=>
{
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
success
=
joinFlowInstance
.
getRegistrationSuccess
(
null
,
responseBodySingleErr
,
{
statusCode
:
200
});
const
success
=
joinFlowInstance
.
registrationIsSuccessful
(
null
,
responseBodySingleErr
,
{
statusCode
:
200
});
expect
(
success
).
toEqual
(
false
);
expect
(
success
).
toEqual
(
false
);
});
});
test
(
'
getRegistrationSuccess
returns false when given non null err
'
,
()
=>
{
test
(
'
registrationIsSuccessful
returns false when given non null err
'
,
()
=>
{
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
success
=
joinFlowInstance
.
getRegistrationSuccess
({},
responseBodySuccess
,
{
statusCode
:
200
});
const
success
=
joinFlowInstance
.
registrationIsSuccessful
({},
responseBodySuccess
,
{
statusCode
:
200
});
expect
(
success
).
toEqual
(
false
);
expect
(
success
).
toEqual
(
false
);
});
});
...
@@ -396,7 +396,7 @@ describe('JoinFlow', () => {
...
@@ -396,7 +396,7 @@ describe('JoinFlow', () => {
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
joinFlowInstance
.
handleRegistrationResponse
(
null
,
responseBodySingleErr
,
{
statusCode
:
200
});
joinFlowInstance
.
handleRegistrationResponse
(
null
,
responseBodySingleErr
,
{
statusCode
:
200
});
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
can
TryAgain
:
false
,
errorAllows
TryAgain
:
false
,
errorMsg
:
'
registration.errorCaptcha
'
errorMsg
:
'
registration.errorCaptcha
'
});
});
});
});
...
@@ -405,8 +405,8 @@ describe('JoinFlow', () => {
...
@@ -405,8 +405,8 @@ describe('JoinFlow', () => {
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
joinFlowInstance
.
handleRegistrationResponse
(
null
,
responseBodyMultipleErrs
,
{
statusCode
:
200
});
joinFlowInstance
.
handleRegistrationResponse
(
null
,
responseBodyMultipleErrs
,
{
statusCode
:
200
});
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
can
TryAgain
:
false
,
errorAllows
TryAgain
:
false
,
errorMsg
:
'
registration.problemsAre "username: This field is required.;
'
+
errorMsg
:
'
registration.problemsAre
:
"username: This field is required.;
'
+
'
recaptcha: Incorrect, please try again."
'
'
recaptcha: Incorrect, please try again."
'
});
});
});
});
...
@@ -415,7 +415,7 @@ describe('JoinFlow', () => {
...
@@ -415,7 +415,7 @@ describe('JoinFlow', () => {
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
joinFlowInstance
.
handleRegistrationResponse
({},
responseBodyMultipleErrs
,
{
statusCode
:
200
});
joinFlowInstance
.
handleRegistrationResponse
({},
responseBodyMultipleErrs
,
{
statusCode
:
200
});
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
can
TryAgain
:
true
errorAllows
TryAgain
:
true
});
});
});
});
...
@@ -423,7 +423,7 @@ describe('JoinFlow', () => {
...
@@ -423,7 +423,7 @@ describe('JoinFlow', () => {
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
joinFlowInstance
.
handleRegistrationResponse
({},
responseBodyMultipleErrs
,
{
statusCode
:
400
});
joinFlowInstance
.
handleRegistrationResponse
({},
responseBodyMultipleErrs
,
{
statusCode
:
400
});
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
can
TryAgain
:
true
errorAllows
TryAgain
:
true
});
});
});
});
...
@@ -431,8 +431,7 @@ describe('JoinFlow', () => {
...
@@ -431,8 +431,7 @@ describe('JoinFlow', () => {
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
const
joinFlowInstance
=
getJoinFlowWrapper
().
instance
();
joinFlowInstance
.
handleRegistrationResponse
(
null
,
responseBodyMultipleErrs
,
{
statusCode
:
500
});
joinFlowInstance
.
handleRegistrationResponse
(
null
,
responseBodyMultipleErrs
,
{
statusCode
:
500
});
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
expect
(
joinFlowInstance
.
state
.
registrationError
).
toEqual
({
canTryAgain
:
false
,
errorAllowsTryAgain
:
true
errorMsg
:
null
});
});
});
});
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment