How to remove the double quotes?
up vote
2
down vote
favorite
I am trying to pass in
"HO_1,HO_2"
from a cucumber feature file.
I am trying to pass that value into a Chai include call, so it needs to be in the format of:
"HO_1", "HO_2"
I am currently using a split and join to create the format as such:
const splitE = (('"'+(eventTag.split(",")).join('", "')+'"'));
And this console.log
s:
"HO_1", "HO_2"
But when I then try to pass splitE into the chai call:
expect(estring).to.include(splitE);
Its trying to pass the variable in as a string and it is being passed in as
expect(estring).to.include(""HO_1", "HO_2"");
And it doesn't work, how do I remove the quotes around what I have passed?
javascript arrays node.js string chai
add a comment |
up vote
2
down vote
favorite
I am trying to pass in
"HO_1,HO_2"
from a cucumber feature file.
I am trying to pass that value into a Chai include call, so it needs to be in the format of:
"HO_1", "HO_2"
I am currently using a split and join to create the format as such:
const splitE = (('"'+(eventTag.split(",")).join('", "')+'"'));
And this console.log
s:
"HO_1", "HO_2"
But when I then try to pass splitE into the chai call:
expect(estring).to.include(splitE);
Its trying to pass the variable in as a string and it is being passed in as
expect(estring).to.include(""HO_1", "HO_2"");
And it doesn't work, how do I remove the quotes around what I have passed?
javascript arrays node.js string chai
Can you use eval on that ?
– kevinSpaceyIsKeyserSöze
Nov 21 at 10:43
add a comment |
up vote
2
down vote
favorite
up vote
2
down vote
favorite
I am trying to pass in
"HO_1,HO_2"
from a cucumber feature file.
I am trying to pass that value into a Chai include call, so it needs to be in the format of:
"HO_1", "HO_2"
I am currently using a split and join to create the format as such:
const splitE = (('"'+(eventTag.split(",")).join('", "')+'"'));
And this console.log
s:
"HO_1", "HO_2"
But when I then try to pass splitE into the chai call:
expect(estring).to.include(splitE);
Its trying to pass the variable in as a string and it is being passed in as
expect(estring).to.include(""HO_1", "HO_2"");
And it doesn't work, how do I remove the quotes around what I have passed?
javascript arrays node.js string chai
I am trying to pass in
"HO_1,HO_2"
from a cucumber feature file.
I am trying to pass that value into a Chai include call, so it needs to be in the format of:
"HO_1", "HO_2"
I am currently using a split and join to create the format as such:
const splitE = (('"'+(eventTag.split(",")).join('", "')+'"'));
And this console.log
s:
"HO_1", "HO_2"
But when I then try to pass splitE into the chai call:
expect(estring).to.include(splitE);
Its trying to pass the variable in as a string and it is being passed in as
expect(estring).to.include(""HO_1", "HO_2"");
And it doesn't work, how do I remove the quotes around what I have passed?
javascript arrays node.js string chai
javascript arrays node.js string chai
edited Nov 21 at 12:33
chŝdk
23k42852
23k42852
asked Nov 21 at 10:40
Karl
310113
310113
Can you use eval on that ?
– kevinSpaceyIsKeyserSöze
Nov 21 at 10:43
add a comment |
Can you use eval on that ?
– kevinSpaceyIsKeyserSöze
Nov 21 at 10:43
Can you use eval on that ?
– kevinSpaceyIsKeyserSöze
Nov 21 at 10:43
Can you use eval on that ?
– kevinSpaceyIsKeyserSöze
Nov 21 at 10:43
add a comment |
3 Answers
3
active
oldest
votes
up vote
0
down vote
accepted
Actually what you are trying to do is not yet supported in Chai
framework, because .include()
method accepts only one value
, so both your values
will be treated as one string
.
What you can do is to use .satisfy()
method, to check for both substrings
:
expect(estring).to.satisfy(estring =>
eventTag.split(",").some(b => estring.includes(b))
);
You can check, the Check that string contains multiple other strings open issue, in Github for further details.
Chai requires the input to be the quoted and comma separated list, "a","b" so i need to keep the quotes, just not the double quotes being passed to the function
– Karl
Nov 21 at 11:06
@Karl In that case you need to change your code to match bothsubstrings
, you can use.satisfy()
for example, I updated my answer, with a drawback for this case.
– chŝdk
Nov 21 at 12:38
add a comment |
up vote
0
down vote
What about just slice
all, but quotes?
expect(estring).to.include(splitE.slice(1, -1));
add a comment |
up vote
0
down vote
I was able to remove the splitE var completely and use the suggestion by chsdk
add a comment |
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
accepted
Actually what you are trying to do is not yet supported in Chai
framework, because .include()
method accepts only one value
, so both your values
will be treated as one string
.
What you can do is to use .satisfy()
method, to check for both substrings
:
expect(estring).to.satisfy(estring =>
eventTag.split(",").some(b => estring.includes(b))
);
You can check, the Check that string contains multiple other strings open issue, in Github for further details.
Chai requires the input to be the quoted and comma separated list, "a","b" so i need to keep the quotes, just not the double quotes being passed to the function
– Karl
Nov 21 at 11:06
@Karl In that case you need to change your code to match bothsubstrings
, you can use.satisfy()
for example, I updated my answer, with a drawback for this case.
– chŝdk
Nov 21 at 12:38
add a comment |
up vote
0
down vote
accepted
Actually what you are trying to do is not yet supported in Chai
framework, because .include()
method accepts only one value
, so both your values
will be treated as one string
.
What you can do is to use .satisfy()
method, to check for both substrings
:
expect(estring).to.satisfy(estring =>
eventTag.split(",").some(b => estring.includes(b))
);
You can check, the Check that string contains multiple other strings open issue, in Github for further details.
Chai requires the input to be the quoted and comma separated list, "a","b" so i need to keep the quotes, just not the double quotes being passed to the function
– Karl
Nov 21 at 11:06
@Karl In that case you need to change your code to match bothsubstrings
, you can use.satisfy()
for example, I updated my answer, with a drawback for this case.
– chŝdk
Nov 21 at 12:38
add a comment |
up vote
0
down vote
accepted
up vote
0
down vote
accepted
Actually what you are trying to do is not yet supported in Chai
framework, because .include()
method accepts only one value
, so both your values
will be treated as one string
.
What you can do is to use .satisfy()
method, to check for both substrings
:
expect(estring).to.satisfy(estring =>
eventTag.split(",").some(b => estring.includes(b))
);
You can check, the Check that string contains multiple other strings open issue, in Github for further details.
Actually what you are trying to do is not yet supported in Chai
framework, because .include()
method accepts only one value
, so both your values
will be treated as one string
.
What you can do is to use .satisfy()
method, to check for both substrings
:
expect(estring).to.satisfy(estring =>
eventTag.split(",").some(b => estring.includes(b))
);
You can check, the Check that string contains multiple other strings open issue, in Github for further details.
edited Nov 21 at 12:34
answered Nov 21 at 10:54
chŝdk
23k42852
23k42852
Chai requires the input to be the quoted and comma separated list, "a","b" so i need to keep the quotes, just not the double quotes being passed to the function
– Karl
Nov 21 at 11:06
@Karl In that case you need to change your code to match bothsubstrings
, you can use.satisfy()
for example, I updated my answer, with a drawback for this case.
– chŝdk
Nov 21 at 12:38
add a comment |
Chai requires the input to be the quoted and comma separated list, "a","b" so i need to keep the quotes, just not the double quotes being passed to the function
– Karl
Nov 21 at 11:06
@Karl In that case you need to change your code to match bothsubstrings
, you can use.satisfy()
for example, I updated my answer, with a drawback for this case.
– chŝdk
Nov 21 at 12:38
Chai requires the input to be the quoted and comma separated list, "a","b" so i need to keep the quotes, just not the double quotes being passed to the function
– Karl
Nov 21 at 11:06
Chai requires the input to be the quoted and comma separated list, "a","b" so i need to keep the quotes, just not the double quotes being passed to the function
– Karl
Nov 21 at 11:06
@Karl In that case you need to change your code to match both
substrings
, you can use .satisfy()
for example, I updated my answer, with a drawback for this case.– chŝdk
Nov 21 at 12:38
@Karl In that case you need to change your code to match both
substrings
, you can use .satisfy()
for example, I updated my answer, with a drawback for this case.– chŝdk
Nov 21 at 12:38
add a comment |
up vote
0
down vote
What about just slice
all, but quotes?
expect(estring).to.include(splitE.slice(1, -1));
add a comment |
up vote
0
down vote
What about just slice
all, but quotes?
expect(estring).to.include(splitE.slice(1, -1));
add a comment |
up vote
0
down vote
up vote
0
down vote
What about just slice
all, but quotes?
expect(estring).to.include(splitE.slice(1, -1));
What about just slice
all, but quotes?
expect(estring).to.include(splitE.slice(1, -1));
answered Nov 21 at 10:49
Eugene Mihaylin
9251324
9251324
add a comment |
add a comment |
up vote
0
down vote
I was able to remove the splitE var completely and use the suggestion by chsdk
add a comment |
up vote
0
down vote
I was able to remove the splitE var completely and use the suggestion by chsdk
add a comment |
up vote
0
down vote
up vote
0
down vote
I was able to remove the splitE var completely and use the suggestion by chsdk
I was able to remove the splitE var completely and use the suggestion by chsdk
answered Nov 21 at 14:24
Karl
310113
310113
add a comment |
add a comment |
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53410281%2fhow-to-remove-the-double-quotes%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Can you use eval on that ?
– kevinSpaceyIsKeyserSöze
Nov 21 at 10:43