Commit | Line | Data |
afaa1345 |
1 | DIRECTORY CONTENTS |
2 | ================== |
3 | |
ee0589c0 |
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 | |
7485293a |
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. |
ee0589c0 |
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 | |
ee0589c0 |
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 |
afaa1345 |
28 | else did these exercises. |
29 | |
afaa1345 |
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 | |
3fd49fc9 |
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. |