initial commit
[urisagit/Sort-Maker.git] / slides / slides / slide-0112.html
CommitLineData
7468c584 1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<HTML>
3<HEAD>
4<TITLE> Tests and Benchmarks </TITLE>
5</HEAD>
6<H3 ALIGN=CENTER>1.12: Tests and Benchmarks </H3>
7<TABLE ALIGN="CENTER" BORDER=0 WIDTH="95%">
8 <TR>
9 <TD WIDTH="25%" ALIGN="LEFT">
10 <A HREF="slide-0111.html">Prev</A>
11 Next
12 <A HREF="index.html">Index</A>
13 <TD ALIGN="CENTER">
14 Sort::Maker
15 <TD WIDTH="25%" ALIGN="RIGHT">Page 12/12
16 </TR>
17</TABLE>
18<HR WIDTH="95%">
19<UL>
20<li> Test system is table driven
21
22<li> Scripts can do both tests and benchmarks
23
24<li> Provide a set of data
25
26<UL>
27<li> Manually
28
29</UL>
30<UL>
31<li> Generate in place with map
32
33</UL>
34<UL>
35<li> Generate with a anonymous sub
36
37</UL>
38<li> Provide a hand written 'golden' sort sub
39
40<li> Provide the arguments to make_sorter()
41
42<li> Many tests are in but more are wanted
43
44<UL>
45<li> Send in tests if you want
46
47</UL>
48<li> More complex tests are needed
49
50<PRE>
51 {
52 skip =&gt; 0,
53 name =&gt; 'arrays of multiple strings',
54 source =&gt; 1,
55 data =&gt; [ map {
56 [ rand_token( 8, 20 ), rand_token( 8, 20 ), ]
57 } 1 .. 100
58 ],
59 gold =&gt; sub { $a-&gt;[0] cmp $b-&gt;[0] ||
60 $a-&gt;[1] cmp $b-&gt;[1] },
61 args =&gt; [ qw( string $_-&gt;[0] string $_-&gt;[1] ) ],
62 },
63
64</PRE></UL>
65<HR WIDTH="95%">
66<TABLE ALIGN="CENTER" BORDER=0 WIDTH="95%">
67 <TR>
68 <TD WIDTH="30%" ALIGN="LEFT">
69 <A HREF="slide-0111.html">Prev</A>
70 Next
71 <A HREF="index.html">Index</A>
72 <TD ALIGN="CENTER">
73 YAPC::NA 2004, Buffalo, NY
74 <TD WIDTH="25%" ALIGN="RIGHT">Page 12/12
75 </TR>
76
77 <TR>
78 <TD ALIGN="CENTER" COLSPAN="3">
79 <FONT SIZE="-3">&copy; 2004 Uri Guttman</FONT>
80 </TR>
81
82</TABLE>
83</HTML>