# Install busted with Homebrew, pacman

Elegant Lua unit testing. Version 2.3.0 via Homebrew; verified 2026-06-22.

## Install

```sh
sudo av install brew:busted
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install busted
```

  Evidence: local Homebrew formula metadata

### Linux

- pacman (92%):

```sh
sudo pacman -S busted
```

  Evidence: Arch Linux sync databases: busted from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

## Package facts

- **Package key:** brew:busted
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/busted>
- **Version:** 2.3.0
- **Source summary:** Elegant Lua unit testing
- **Homepage:** <https://lunarmodules.github.io/busted/>
- **Repository:** <https://github.com/lunarmodules/busted>
- **Upstream docs:** <https://lunarmodules.github.io/busted>
- **License:** MIT
- **Source archive:** <https://github.com/lunarmodules/busted/archive/refs/tags/v2.3.0.tar.gz>
- **Last updated:** 2026-06-22T14:02:56-07:00
- **Generated:** 2026-07-09T07:20:21+00:00

## Executables

- busted (cli)
- busted (alias)

## Dependencies

- lua

## Build dependencies

- luarocks

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-09
- Package-manager version: 2.3.0
- Package-manager updated: 2026-06-22
- Local data: ok
- Upstream repository: https://github.com/lunarmodules/busted
- Upstream latest detected: v2.3.0 (current)
## Project history and usage

busted is a Lua unit testing framework with a behavior/spec style, expressive assertions, spies, mocks, multiple output formats, and LuaRocks-first distribution. It is one of the familiar testing tools in the Lua and LuaJIT package ecosystem.

### Project history

The current repository was created in August 2012, and the project documentation and license history show its Olivine Labs origin before the repository later lived under LunarModules. The README describes a framework focused on easy-to-read specs, nested `describe` and `it` blocks, chainable assertions, tags, mocks, spies, and support for Lua 5.1+, LuaJIT, and MoonScript.

The official docs list version 2.1.1 and present busted as both a command-line runner and a library of testing conventions. The rockspec documents its LuaRocks packaging, MIT license, CLI installation, and dependencies including luassert, say, lua_cliargs, Penlight, dkjson, and related Lua modules.

### Adoption history

busted's adoption comes from being the natural test runner for many LuaRocks projects and from easy invocation in CI. The input metadata records Homebrew and Arch packaging, while the upstream README documents LuaRocks installation, Docker usage, and a GitHub Action for running busted in workflows.

### How it is used

Typical usage is to write Lua specs with `describe` and `it`, use `assert` helpers from luassert, optionally add mocks or spies, then run the `busted` CLI over a file or test directory. Output handlers include terminal, JSON, TAP, JUnit, and other CI-friendly formats.

### Why package nerds care

busted is significant because it helped give Lua projects a conventional, packageable test workflow comparable to RSpec, Jasmine, or Mocha in other ecosystems. For package maintainers, it is also the test command that turns many Lua modules from 'installs successfully' into 'can actually be verified during packaging'.

### Timeline

- 2012: Public repository created; copyright history begins with Olivine Labs.
- 2010s: busted became established as a LuaRocks-distributed Lua testing framework.
- 2020: README copyright range still referenced Olivine Labs before later LunarModules stewardship.
- 2026: The LunarModules repository and docs remain active, with Homebrew and Arch package metadata present in the input.

### Related projects

- busted is closely related to Lua, LuaJIT, LuaRocks, luassert, say, lua_cliargs, Penlight, MoonScript, luacov, TAP/JUnit output consumers, and spec-style test frameworks such as RSpec, Jasmine, and Mocha.

### Sources

- <https://github.com/lunarmodules/busted>
- <https://lunarmodules.github.io/busted>
- <https://raw.githubusercontent.com/lunarmodules/busted/master/README.md>
- <https://raw.githubusercontent.com/lunarmodules/busted/master/busted-scm-1.rockspec>
- source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: .busted
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** busted
- **Version Scheme:** 0
- **Revision:** 1
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- pacman - busted - 2.3.0-3: normalized package name match | Arch Linux sync databases: busted from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Elegant Lua unit testing (CLI) | https://lunarmodules.github.io/busted/


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [lua](https://www.automicvault.com/pkg/brew/lua/) - Runtime dependency declared by Homebrew.
- [luarocks](https://www.automicvault.com/pkg/brew/luarocks/) - Build dependency declared by Homebrew.
- [phpunit](https://www.automicvault.com/pkg/brew/phpunit/) - Shares av.db curated category or tags: cli, developer-tools, testing, unit-testing.
- [pytest](https://www.automicvault.com/pkg/brew/pytest/) - Shares av.db curated category or tags: cli, developer-tools, testing, unit-testing.
- [allure](https://www.automicvault.com/pkg/brew/allure/) - Shares av.db curated category or tags: cli, developer-tools, testing.
- [artillery](https://www.automicvault.com/pkg/brew/artillery/) - Shares av.db curated category or tags: cli, developer-tools, testing.
- [bzt](https://www.automicvault.com/pkg/brew/bzt/) - Shares av.db curated category or tags: cli, developer-tools, testing.
- [cargo-fuzz](https://www.automicvault.com/pkg/brew/cargo-fuzz/) - Shares av.db curated category or tags: cli, developer-tools, testing.
- [cargo-hack](https://www.automicvault.com/pkg/brew/cargo-hack/) - Shares av.db curated category or tags: cli, developer-tools, testing.
- [cargo-insta](https://www.automicvault.com/pkg/brew/cargo-insta/) - Shares av.db curated category or tags: cli, developer-tools, testing.
- [kyua](https://www.automicvault.com/pkg/brew/kyua/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, developer, developer-tools, lua, testing.

## Combined YAML source

View the package source record on GitHub. [combined/busted.yml](https://github.com/automic-vault/db/blob/main/combined/busted.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
