🎁 Get the FREE AI Skills Starter GuideSubscribe →
BytesAgainBytesAgain
🦀 ClawHub✦ BytesAgain

Assert

by @bytesagain3

Assertion patterns reference — guard clauses, preconditions, invariants, and contract programming. Use when writing defensive code, validating inputs, or imp...

Versionv1.0.0
Downloads366
Installs1
TERMINAL
clawhub install assert

📖 About This Skill


name: "assert" version: "1.0.0" description: "Assertion patterns reference — guard clauses, preconditions, invariants, and contract programming. Use when writing defensive code, validating inputs, or implementing design-by-contract." author: "BytesAgain" homepage: "https://bytesagain.com" source: "https://github.com/bytesagain/ai-skills" tags: [assert, assertion, precondition, invariant, contract, defensive, testing] category: "devtools"

Assert — Assertion Patterns Reference

Quick-reference skill for assertion techniques, design-by-contract, and defensive programming patterns.

When to Use

  • Writing precondition checks for function inputs
  • Implementing class invariants and postconditions
  • Choosing between assertions and exceptions
  • Applying design-by-contract methodology
  • Understanding assertion behavior across languages
  • Commands

    intro

    scripts/script.sh intro
    

    Overview of assertions — purpose, philosophy, and when to use them vs exceptions.

    preconditions

    scripts/script.sh preconditions
    

    Precondition patterns: validating inputs, guard clauses, and fail-fast design.

    postconditions

    scripts/script.sh postconditions
    

    Postcondition patterns: validating outputs and return value contracts.

    invariants

    scripts/script.sh invariants
    

    Class and loop invariants — maintaining consistent state throughout execution.

    languages

    scripts/script.sh languages
    

    Assertion syntax and behavior in Python, Java, C, JavaScript, Rust, Go.

    contracts

    scripts/script.sh contracts
    

    Design-by-contract methodology — Bertrand Meyer's approach and modern implementations.

    antipatterns

    scripts/script.sh antipatterns
    

    Common assertion mistakes: side effects, catching AssertionError, using in production flow.

    strategies

    scripts/script.sh strategies
    

    Assertion strategies for different contexts: unit tests, production code, APIs, libraries.

    help

    scripts/script.sh help
    

    version

    scripts/script.sh version
    


    *Powered by BytesAgain | bytesagain.com | hello@bytesagain.com*

    ⚡ When to Use

    TriggerAction
    - Implementing class invariants and postconditions
    - Choosing between assertions and exceptions
    - Applying design-by-contract methodology
    - Understanding assertion behavior across languages