Aion-Enum
view release on metacpan or search on metacpan
t/aion/enum.t view on Meta::CPAN
use common::sense; use open qw/:std :utf8/; use Carp qw//; use Cwd qw//; use File::Basename qw//; use File::Find qw//; use File::Slurper qw//; use File::Spec qw//; use File::Path qw//; use Scalar::Util qw//; use Test::More 0.98; BEGIN { $SIG{__DI...
# # NAME
#
# Aion::Enum - пеÑеÑиÑÐ»ÐµÐ½Ð¸Ñ Ð² ÑÑиле ÐÐÐ, когда каждое пеÑеÑÑление ÑвлÑеÑÑÑ Ð¾Ð±ÑекÑом
#
# # VERSION
#
# 0.0.2
#
# # SYNOPSIS
#
# Файл lib/StatusEnum.pm:
#@> lib/StatusEnum.pm
#>> package StatusEnum;
#>>
#>> use Aion::Enum;
#>>
#>> # Active status
#>> case active => 1, 'Active';
#>>
#>> # Passive status
#>> case passive => 2, 'Passive';
#>>
#>> 1;
#@< EOF
#
subtest 'SYNOPSIS' => sub {
use StatusEnum;
::is scalar do {&StatusEnum::active->does('Aion::Enum')}, "1", '&StatusEnum::active->does(\'Aion::Enum\') # => 1';
::is scalar do {StatusEnum->active->name}, "active", 'StatusEnum->active->name # => active';
::is scalar do {StatusEnum->passive->value}, "2", 'StatusEnum->passive->value # => 2';
::is scalar do {StatusEnum->active->alias}, "Active status", 'StatusEnum->active->alias # => Active status';
::is scalar do {StatusEnum->passive->stash}, "Passive", 'StatusEnum->passive->stash # => Passive';
::is_deeply scalar do {[ StatusEnum->cases ]}, scalar do {[StatusEnum->active, StatusEnum->passive]}, '[ StatusEnum->cases ] # --> [StatusEnum->active, StatusEnum->passive]';
::is_deeply scalar do {[ StatusEnum->names ]}, scalar do {[qw/active passive/]}, '[ StatusEnum->names ] # --> [qw/active passive/]';
::is_deeply scalar do {[ StatusEnum->values ]}, scalar do {[qw/1 2/]}, '[ StatusEnum->values ] # --> [qw/1 2/]';
::is_deeply scalar do {[ StatusEnum->aliases ]}, scalar do {['Active status', 'Passive status']}, '[ StatusEnum->aliases ] # --> [\'Active status\', \'Passive status\']';
::is_deeply scalar do {[ StatusEnum->stashes ]}, scalar do {[qw/Active Passive/]}, '[ StatusEnum->stashes ] # --> [qw/Active Passive/]';
#
# # DESCRIPTION
#
# `Aion::Enum` позволÑÐµÑ ÑоздаваÑÑ Ð¿ÐµÑеÑиÑлениÑ-обÑекÑÑ. ÐаннÑе пеÑеÑиÑÐ»ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð³ÑÑ ÑодеÑжаÑÑ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸ÑелÑнÑе меÑÐ¾Ð´Ñ Ð¸ ÑвойÑÑва. РниÑ
можно до...
#
# Ðажной оÑобенноÑÑÑÑ ÑвлÑеÑÑÑ ÑоÑ
Ñанение поÑÑдка пеÑеÑиÑлениÑ.
#
# `Aion::Enum` подобен пеÑеÑиÑлениÑм из php8, но Ð¸Ð¼ÐµÐµÑ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸ÑелÑнÑе ÑвойÑÑва `alias` и `stash`.
#
# # SUBROUTINES
#
# ## case ($name, [$value, [$stash]])
#
# СоздаÑÑ Ð¿ÐµÑеÑиÑление: его конÑÑанÑÑ.
#
::done_testing; }; subtest 'case ($name, [$value, [$stash]])' => sub {
package OrderEnum {
use Aion::Enum;
( run in 2.016 seconds using v1.01-cache-2.11-cpan-d8267643d1d )