HTMLTestIdentifiers provides the basic functionality to add data-testid
attribute depending on configuration.
Installation
The package can be installed by adding html_test_identifiers to your list of dependencies in mix.exs:
[
{:html_test_identifiers, github: "mirego/html_test_identifiers", tag: "v0.1.1"}
]
end
Configuration
Add the following to your config files if you want data-testid included in your release :
Add the following to your config files if you don't want data_testid attribute to be included in your release :
If there is no configuration, HTMLTestIdentifiers.NoTestID will be used by default
Usage
HTMLTestIdentifiers.testid_attribute("hello")
# => "data-testid=\"hello\"
HTMLTestIdentifiers.testid_key("hello")
# => "hello"
# With `config :html_test_identifiers, provider: HTMLTestIdentifiers.NoTestID`
HTMLTestIdentifiers.testid_attribute("hello")
# => nil
HTMLTestIdentifiers.testid_key("hello")
# => nil
You can also import the module in a view helpers module:
import HTMLTestIdentifiers
end
Considering .eex file content
<%= content_tag :p, "paragraph text content", data_testid: testid_key("paragraph-id") %>
with config :html_test_identifiers, provider: HTMLTestIdentifiers.TestID, resulting HTML will be
<p data-testid="paragraph-id">paragraph text contentp>
with config :html_test_identifiers, provider: HTMLTestIdentifiers.NoTestID, resulting HTML will be
<p>paragraph text contentp>
Contributors
- @romarickb
License
html_test_identifiers is (c) 2019 Mirego and may be freely distributed under the New BSD license. See the LICENSE.md file.
About Mirego
Mirego is a team of passionate people who believe that work is a place where you can innovate and have fun. We're a team of talented people who imagine and build beautiful Web and mobile applications. We come together to share ideas and change the world.
We also love open-source software and we try to give back to the community as much as we can.