Remove mention of moosepan from README
[gitmo/moose-presentations.git] / moose-class / exercises / README
1 DIRECTORY CONTENTS
2 ==================
3
4 This tarball contains exercises for the Intro to Moose class. Here's
5 what's what ...
6
7 t/*.t - each .t file contains instructions on what the exercise is,
8 and runs the tests to check your code.
9
10 t/lib - includes a recent (enough) copy of the Test-Harness and Test-Simple
11 distributions so we're all on the same page, as well as some other modules
12 used in the tests.
13
14 t/lib/MooseClass/Tests.pm - the actual tests all live in this
15 module. It also shows many examples of how to use Moose's metaclass
16 APIs for introspection.
17
18 bin/prove - a slightly hacked version of prove that makes sure to look
19 in t/lib first. If you have a recent version of prove installed, this
20 can be ignored, but it's worth trying if you have any weird problems.
21
22 lib - this will be your working directory for most exercises. You'll
23 be creating various classes and roles in here, and then testing
24 against the test code.
25
26 answers - code that passes all the tests for each section. You can
27 look in here if you're stuck, or if you just want to see how someone
28 else did these exercises.
29
30 EXERCISES HOW-TO
31 ================
32
33 The exercises are all (except for one) designed to be done in the form
34 of writing Perl modules and running tests against them.
35
36 You will create these modules in the lib/ directory. You will often
37 find yourself changing or extending the module you created in a
38 previous exercise, so don't delete anything from this directory as you
39 go.
40
41 The instructions on each exercise are in the associated .t file.
42
43 To run the tests, simply run this command:
44
45   /path/to/perl bin/prove -lv t/test-name.t
46
47 The test file name will be something like 01-classes.t.
48
49 This command will run the tests in verbose mode so you will get clues as to
50 what exactly failed. Keep iterating on your code until the tests pass.