Liveman
view release on metacpan or search on metacpan
lib/Liveman.md view on Meta::CPAN
'abbc' # ^-> ab
'abc' # ⣠ab
```
### `like` ends with nonextrapolate-string
СкалÑÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ заканÑиваÑÑÑÑ Ð½ÐµÑкÑÑÑаполиÑованой ÑÑокой:
```perl
'abbc' # $-> bc
'abc' # ⥠bc
```
### `like` inners with nonextrapolate-string
СкалÑÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ ÑодеÑжаÑÑ Ð½ÐµÑкÑÑÑаполиÑованÑÑ ÑÑокÑ:
```perl
'abbc' # *-> bb
'abc' # ⥵ b
```
### `like` throw begins with nonextrapolate-string
ÐÑклÑÑение должно наÑинаÑÑÑÑ Ñ Ð½ÐµÑкÑÑÑаполиÑованой ÑÑоки:
```perl
1/0 # @-> Illegal division by zero
1/0 # ⯠Illegal division by zero
```
### `like` throw begins with extrapolate-string
ÐÑклÑÑение должно наÑинаÑÑÑÑ Ñ ÑкÑÑÑаполиÑованой ÑÑоки:
```perl
my $by = 'by';
1/0 # @=> Illegal division $by zero
1/0 # ⤯ Illegal division $by zero
```
### `like` throw
ÐÑклÑÑение должно бÑÑÑ ÑопоÑÑовимо Ñ ÑегÑлÑÑнÑм вÑÑажением:
```perl
1/0 # @~> division\s*by\s*zero
1/0 # â division\s*by\s*zero
```
### `unlike` throw
ÐÑклÑÑение не должно бÑÑÑ ÑопоÑÑовимо Ñ ÑегÑлÑÑнÑм вÑÑажением (но оно должно имеÑÑ Ð¼ÐµÑÑо):
```perl
1/0 # <~@ auto
1/0 # â auto
```
## EMBEDDING FILES
ÐаждÑй ÑеÑÑ Ð²ÑполнÑеÑÑÑ Ð²Ð¾ вÑеменном каÑалоге, коÑоÑÑй ÑдалÑеÑÑÑ Ð¸ ÑоздаеÑÑÑ Ð¿Ñи запÑÑке ÑеÑÑа.
ФоÑÐ¼Ð°Ñ ÑÑого каÑалога: /tmp/.liveman/*project*/*path-to-test*/.
Раздел кода в ÑÑÑоке Ñ Ð¿ÑеÑикÑом md-Ñайла **File `path`:** запиÑеÑÑÑ Ð² Ñайл пÑи ÑеÑÑиÑовании во вÑÐµÐ¼Ñ Ð²ÑполнениÑ.
Раздел кода в пÑеÑикÑной ÑÑÑоке md-Ñайла **File `path` is:** бÑÐ´ÐµÑ ÑÑавниваÑÑÑÑ Ñ Ñайлом меÑодом `Test::More::is`.
Файл experiment/test.txt:
```text
hi!
```
Файл experiment/test.txt ÑвлÑеÑÑÑ:
```text
hi!
```
**Ðнимание!** ÐÑÑÑÐ°Ñ ÑÑÑока Ð¼ÐµÐ¶Ð´Ñ Ð¿ÑеÑикÑом и кодом не допÑÑкаеÑÑÑ!
ÐÑи пÑеÑикÑÑ Ð¼Ð¾Ð³ÑÑ Ð±ÑÑÑ ÐºÐ°Ðº на английÑком, Ñак и на ÑÑÑÑком (`File [path](https://metacpan.org/pod/path):` и `File [path](https://metacpan.org/pod/path) is:`).
# METHODS
## new (%param)
ÐонÑÑÑÑкÑоÑ. ÐÐ¼ÐµÐµÑ Ð°ÑгÑменÑÑ:
1. `files` (array_ref) â ÑпиÑок md-Ñайлов Ð´Ð»Ñ Ð¼ÐµÑодов `transforms` и `tests`.
1. `open` (boolean) â оÑкÑÑÑÑ Ð¿Ð¾ÐºÑÑÑие в бÑаÑзеÑе. ÐÑли на компÑÑÑеÑе ÑÑÑановлен бÑаÑÐ·ÐµÑ **opera**, Ñо бÑÐ´ÐµÑ Ð¸ÑполÑзоваÑÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° `opera` Ð´Ð»Ñ Ð¾ÑкÑÑÑиÑ. ...
1. `force_compile` (boolean) â не пÑовеÑÑÑÑ Ð²ÑÐµÐ¼Ñ Ð¼Ð¾Ð´Ð¸ÑикаÑии md-Ñайлов.
1. `options` â добавиÑÑ Ð¿Ð°ÑамеÑÑÑ Ð² командной ÑÑÑоке Ð´Ð»Ñ Ð¿ÑовеÑки или доказаÑелÑÑÑва.
1. `prove` â иÑполÑзоваÑÑ Ð´Ð¾ÐºÐ°Ð·Ð°ÑелÑÑÑво (ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ `prove` Ð´Ð»Ñ Ð·Ð°Ð¿ÑÑка ÑеÑÑов), а не ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ `yath`.
## test_path ($md_path)
ÐолÑÑиÑÑ Ð¿ÑÑÑ Ðº `t/**.t`-ÑÐ°Ð¹Ð»Ñ Ð¸Ð· пÑÑи к `lib/**.md`-ÑайлÑ:
```perl
Liveman->new->test_path("lib/PathFix/RestFix.md") # => t/path-fix/rest-fix.t
```
## transform ($md_path, [$test_path])
ÐомпилиÑÑÐµÑ `lib/**.md`-Ñайл в `t/**.t`-Ñайл.
Ð Ñак же заменÑÐµÑ **pod**-докÑменÑаÑÐ¸Ñ Ð² ÑекÑии `__END__` в `lib/**.pm`-Ñайле и ÑоздаÑÑ `lib/**.pm`-Ñайл, еÑли ÑÐ¾Ñ ÑÑÑеÑÑвÑеÑ, а инаÑе â ÑоздаÑÑ Ñайл`lib/**.pod`.
ÐÑи вÑзове `transform` в `SYNOPSYS` бÑл Ñоздан Ñайл `lib/Example.pod`.
Файл lib/Example.pod ÑвлÑеÑÑÑ:
```pod
Twice two:
2*2 # -> 2+2
```
Создадим `lib/Example.pm` и вÑзовем `transform`:
( run in 1.032 second using v1.01-cache-2.11-cpan-71847e10f99 )