summaryrefslogtreecommitdiff
path: root/posts/2009-05-22-modules-i-like---module-setup.org
diff options
context:
space:
mode:
authorFranck Cuny <franck.cuny@gmail.com>2016-08-10 14:33:04 -0700
committerFranck Cuny <franck.cuny@gmail.com>2016-08-10 20:17:56 -0700
commit8d7d02f42c3947f756c18cb4d37d9d97fbd0d27d (patch)
treea6cecddaaea7e87d901a6c28bebe3a531438f24b /posts/2009-05-22-modules-i-like---module-setup.org
parentMerge branch 'convert-to-org' (diff)
downloadlumberjaph-8d7d02f42c3947f756c18cb4d37d9d97fbd0d27d.tar.gz
convert back to md
Diffstat (limited to 'posts/2009-05-22-modules-i-like---module-setup.org')
-rw-r--r--posts/2009-05-22-modules-i-like---module-setup.org83
1 files changed, 0 insertions, 83 deletions
diff --git a/posts/2009-05-22-modules-i-like---module-setup.org b/posts/2009-05-22-modules-i-like---module-setup.org
deleted file mode 100644
index 2bbca9f..0000000
--- a/posts/2009-05-22-modules-i-like---module-setup.org
+++ /dev/null
@@ -1,83 +0,0 @@
-[[http://search.cpan.org/perldoc?Module::Setup][Module::Setup]] by
-[[http://blog.yappo.jp/][Yappo]] is a really nice module. I don't like
-[[http://search.cpan.org/perldoc?Module::Starter][Module::Starter]],
-it's not easy to create template to make it do what you need. With
-Module::Setup you can create flavors for any type of modules you want.
-Most of the modules I create for work use Moose, and I like to use
-Test::Class too. I've created a Moose flavor for creating this kind of
-modules.
-
-*** Creating a Moose flavor for Module::Setup
-
-First, you tell it to init a new flavor:
-
-#+BEGIN_EXAMPLE
- module-setup --init moose
-#+END_EXAMPLE
-
-Module::Setup ask what is your favorite SCM. For me, it's git. It will
-create files in /$HOME/.module-setup/flavors/moose//.
-
-Start by editing
-*$HOME/.module-setup/flavors/moose/template/lib/\_\_\_\_var-module\_path-var\_\_\_\_.pm*
-to make it look like this
-
-#+BEGIN_SRC perl
- - use strict;
- - use warnings;
- + use Moose;
-#+END_SRC
-
-Add *requires 'Moose'* in *Makefile.PL*. Create a
-**t/tests/Test/\_\_\_\_var-module\_path-var\_\_\_\_.pm** file with the
-following content:
-
-#+BEGIN_SRC perl
- package Test :: [%module %];
-
- use strict;
- use warnings;
- use base 'Test::Class';
- use Test::Exception;
- use Test::More;
-
- sub class {'[% module %]'}
-
- sub startup : Tests(startup => 1) {
- my $test = shift;
- use_ok $test->class, "use ok";
- }
-
- sub shutdown : Tests(shutdown) {
- my $test = shift;
- }
-
- sub constructor : Tests(1) {
- my $test = shift;
- can_ok $test->class, 'new';
- }
-
- 1;
-#+END_SRC
-
-You will have a Test::Class test ready with basic tests already
-implemented.
-
-If you want to share this template at $work, easy:
-
-#+BEGIN_EXAMPLE
- module-setup --pack DevMoose moose > DevMoose.pm
-#+END_EXAMPLE
-
-You just have to send DevMoose.pm to who need it, and he will be able to
-import it with
-
-#+BEGIN_EXAMPLE
- module-setup --init --flavor-class=+DevMoose moose
-#+END_EXAMPLE
-
-Now you can create a new module
-
-#+BEGIN_EXAMPLE
- module-setup MY::AWESOME::MODULE moose
-#+END_EXAMPLE