Socket
Book a DemoInstallSign in
Socket

github.com/defactosoftware/test_selector

Package Overview
Dependencies
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/defactosoftware/test_selector

Source
Go Modules
Version
v0.0.0-20240315111728-3a20ce6b1429
Version published
Created
Source

TestSelector

CircleCI Module Version Hex Docs Total Download License Last Updated

A set of Elixir helpers to set/get test selectors to/from elements in a Phoenix app (when Mix.env == :test). These selectors are hashed (scoped to the view module they are used in) for accurate selection and "leakage" prevention. See our Wiki for examples.

Why? Because we prefer reserving classes for styling, and id's have limitations because they have to be unique.

Dependencies

  • Floki v0.25.x and higher

Installation

def deps do
  [
    {:test_selector, "~> 0.3.3"}
  ]
end

Use TestSelector.HTML.Helpers to your web.ex.

  • In phoenix 1.2.0 at web/web.ex
  • In newer Phoenix versions lib/your_project/web/web.ex

Add somewhere along:

def view(opts \\ []) do
  quote do
    ...
    use Phoenix.HTML

    use TestSelector.HTML.Helpers
    ...
  end
end

Testing with Floki

In the tests import the TestSelector.Test.FlokiHelpers:

defmodule Project.Web.MyTest do
  ...

  import TestSelector.Test.FlokiHelpers
  ...
end

Tests

Run the tests:

mix test

Copyright (c) 2017 Defacto

Released under the MIT License, which can be found in the repository in LICENSE.md.

FAQs

Package last updated on 15 Mar 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts