kphoen/rusty 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

kphoen/rusty

Composer 安装命令:

composer require kphoen/rusty

包简介

Documentation as tests "à la" Rust for PHP

README 文档

README

The primary way of documenting a Rust project is through annotating the source code. These annotations can be viewed as part of the documentation, but they can also be compiled and executed. They call that "documentation as tests" and their documentation is a goldmine.

Rusty is an attempt at implementing the same idea in the PHP world.

Usage

Rusty is able to extract code samples from both PHP doc-blocks and Markdown files (your documentation for instance).

Running the tests

An executable is provided to analyse the code samples scattered in your documentation and in your doc-blocks:

rusty check -v ./src/

Writing documentation as tests

A code sample usually looks like this:

/**
 * Computes the n-th Fibonacci's number.
 *
 * Examples:
 *
 * ```
 * assert(fibonacci(1) === 1);
 * assert(fibonacci(2) === 1);
 * assert(fibonacci(12) === 144);
 * ```
 *
 * ```should_throw
 * // -1 is invalid, some kind of error is expected
 * fibonacci(-1);
 * ```
 *
 * ```no_execute
 * // it would take too much time to compute, we don't want to wait that long.
 * fibonacci(10000);
 * ```
 */
function fibonacci($n)
{
    if ($n < 0) {
        throw new \DomainException();
    }

    return $n <= 2 ? 1 : fibonacci($n - 1) + fibonacci($n - 2);
}

More examples can be found in the ./examples directory.

Use rusty help check for a list of all the possible options.

Installation

Rusty can either be installed globally:

composer global require kphoen/rusty dev-master

Or locally:

composer require kphoen/rusty dev-master

Both methods will provide the rusty executable.

License

This library is under the MIT license.

统计信息

  • 总下载量: 3.79k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 48
  • 点击次数: 1
  • 依赖项目数: 12
  • 推荐数: 0

GitHub 信息

  • Stars: 48
  • Watchers: 5
  • Forks: 5
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2016-05-09