# `Volt.Test.Sigils`
[🔗](https://github.com/elixir-volt/volt/blob/v0.15.5/lib/volt/test/sigils.ex#L1)

Convenience sigils for JavaScript, TypeScript, JSX, TSX, CSS, and HTML test fixtures.

These sigils are intentionally small: they return normalized source strings for
ExUnit tests and examples. Use the optional `v` modifier to validate JS/TS-like
snippets with OXC at runtime.

    import Volt.Test.Sigils

    source = ~TS"const answer: number = 42"

    assert source =~ "answer"

    # Validate parser compatibility when the snippet is expected to be valid.
    source = ~TS"export const value: string = "ok""v

The multi-letter sigils are intentionally uppercase, which means Elixir does
not process escapes or interpolation before the source reaches Volt. This is
usually what JS/TS fixtures want.

# `sigil_CSS`

Returns normalized CSS source.

# `sigil_HTML`

Returns normalized HTML source.

# `sigil_JS`

Returns normalized JavaScript source. Use `v` to validate with OXC.

# `sigil_JSX`

Returns normalized JSX source. Use `v` to validate with OXC.

# `sigil_TS`

Returns normalized TypeScript source. Use `v` to validate with OXC.

# `sigil_TSX`

Returns normalized TSX source. Use `v` to validate with OXC.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
