How to remove the double quotes?
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 |
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 |
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 '18 at 12:33
cнŝdk
23.7k63052
23.7k63052
asked Nov 21 '18 at 10:40
KarlKarl
320113
320113
add a comment |
add a comment |
3 Answers
3
active
oldest
votes
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 '18 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.
– cнŝdk
Nov 21 '18 at 12:38
add a comment |
What about just slice
all, but quotes?
expect(estring).to.include(splitE.slice(1, -1));
add a comment |
I was able to remove the splitE var completely and use the suggestion by chsdk
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
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
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
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 '18 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.
– cнŝdk
Nov 21 '18 at 12:38
add a comment |
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 '18 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.
– cнŝdk
Nov 21 '18 at 12:38
add a comment |
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 '18 at 12:34
answered Nov 21 '18 at 10:54
cнŝdkcнŝdk
23.7k63052
23.7k63052
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 '18 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.
– cнŝdk
Nov 21 '18 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 '18 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.
– cнŝdk
Nov 21 '18 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 '18 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 '18 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.– cнŝdk
Nov 21 '18 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.– cнŝdk
Nov 21 '18 at 12:38
add a comment |
What about just slice
all, but quotes?
expect(estring).to.include(splitE.slice(1, -1));
add a comment |
What about just slice
all, but quotes?
expect(estring).to.include(splitE.slice(1, -1));
add a comment |
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 '18 at 10:49
Eugene MihaylinEugene Mihaylin
9581424
9581424
add a comment |
add a comment |
I was able to remove the splitE var completely and use the suggestion by chsdk
add a comment |
I was able to remove the splitE var completely and use the suggestion by chsdk
add a comment |
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 '18 at 14:24
KarlKarl
320113
320113
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
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