Ajout interface Job, enum Ability et enum Jobs / pas de test écrit
Clement COLMERAUER

Clement COLMERAUER commited on 2024-10-24 17:42:22
Showing 37 changed files, with 206 additions and 29 deletions.

... ...
@@ -0,0 +1 @@
1
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>Natural.ZERO</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">kata</a> &gt; <a href="index.html" class="el_package">re.forestier.edu.lib</a> &gt; <span class="el_class">Natural.ZERO</span></div><h1>Natural.ZERO</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">0 of 4</td><td class="ctr2">100 %</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">0</td><td class="ctr2">1</td><td class="ctr1">0</td><td class="ctr2">2</td><td class="ctr1">0</td><td class="ctr2">1</td></tr></tfoot><tbody><tr><td id="a0"><a href="Natural.java.html#L115" class="el_method">Natural.ZERO()</a></td><td class="bar" id="b0"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="4" alt="4"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">0</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">0</td><td class="ctr2" id="i0">2</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.11.202310140853</span></div></body></html>
0 2
\ No newline at end of file
... ...
@@ -0,0 +1 @@
1
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>Natural</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">kata</a> &gt; <a href="index.html" class="el_package">re.forestier.edu.lib</a> &gt; <span class="el_class">Natural</span></div><h1>Natural</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">21 of 172</td><td class="ctr2">87 %</td><td class="bar">6 of 32</td><td class="ctr2">81 %</td><td class="ctr1">5</td><td class="ctr2">31</td><td class="ctr1">5</td><td class="ctr2">50</td><td class="ctr1">1</td><td class="ctr2">15</td></tr></tfoot><tbody><tr><td id="a3"><a href="Natural.java.html#L68" class="el_method">divide(Natural)</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="85" height="10" title="17" alt="17"/></td><td class="ctr2" id="c14">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="60" height="10" title="4" alt="4"/></td><td class="ctr2" id="e7">0 %</td><td class="ctr1" id="f0">3</td><td class="ctr2" id="g2">3</td><td class="ctr1" id="h0">4</td><td class="ctr2" id="i4">4</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a7"><a href="Natural.java.html#L14" class="el_method">Natural(Integer)</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="20" height="10" title="4" alt="4"/><img src="../jacoco-resources/greenbar.gif" width="85" height="10" title="17" alt="17"/></td><td class="ctr2" id="c13">80 %</td><td class="bar" id="d1"><img src="../jacoco-resources/redbar.gif" width="15" height="10" title="1" alt="1"/><img src="../jacoco-resources/greenbar.gif" width="45" height="10" title="3" alt="3"/></td><td class="ctr2" id="e5">75 %</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g3">3</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i0">7</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a4"><a href="Natural.java.html#L89" class="el_method">equals(Object)</a></td><td class="bar" id="b2"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="24" alt="24"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d3"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="8" alt="8"/></td><td class="ctr2" id="e0">100 %</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g0">5</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i1">7</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a2"><a href="Natural.java.html#L101" class="el_method">compareTo(Natural)</a></td><td class="bar" id="b3"><img src="../jacoco-resources/greenbar.gif" width="110" height="10" title="22" alt="22"/></td><td class="ctr2" id="c1">100 %</td><td class="bar" id="d4"><img src="../jacoco-resources/greenbar.gif" width="90" height="10" title="6" alt="6"/></td><td class="ctr2" id="e1">100 %</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g1">4</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i2">7</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a9"><a href="Natural.java.html#L61" class="el_method">substract(Natural)</a></td><td class="bar" id="b4"><img src="../jacoco-resources/greenbar.gif" width="95" height="10" title="19" alt="19"/></td><td class="ctr2" id="c2">100 %</td><td class="bar" id="d2"><img src="../jacoco-resources/redbar.gif" width="15" height="10" title="1" alt="1"/><img src="../jacoco-resources/greenbar.gif" width="45" height="10" title="3" alt="3"/></td><td class="ctr2" id="e6">75 %</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g4">3</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i5">4</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a0"><a href="Natural.java.html#L53" class="el_method">add(Natural)</a></td><td class="bar" id="b5"><img src="../jacoco-resources/greenbar.gif" width="70" height="10" title="14" alt="14"/></td><td class="ctr2" id="c3">100 %</td><td class="bar" id="d5"><img src="../jacoco-resources/greenbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e2">100 %</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">2</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i6">4</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a6"><a href="Natural.java.html#L23" class="el_method">Natural(int)</a></td><td class="bar" id="b6"><img src="../jacoco-resources/greenbar.gif" width="65" height="10" title="13" alt="13"/></td><td class="ctr2" id="c4">100 %</td><td class="bar" id="d6"><img src="../jacoco-resources/greenbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e3">100 %</td><td class="ctr1" id="f6">0</td><td class="ctr2" id="g6">2</td><td class="ctr1" id="h6">0</td><td class="ctr2" id="i3">5</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a14"><a href="Natural.java.html#L41" class="el_method">valueOf(Integer)</a></td><td class="bar" id="b7"><img src="../jacoco-resources/greenbar.gif" width="55" height="10" title="11" alt="11"/></td><td class="ctr2" id="c5">100 %</td><td class="bar" id="d7"><img src="../jacoco-resources/greenbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e4">100 %</td><td class="ctr1" id="f7">0</td><td class="ctr2" id="g7">2</td><td class="ctr1" id="h7">0</td><td class="ctr2" id="i7">3</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a5"><a href="Natural.java.html#L9" class="el_method">Natural()</a></td><td class="bar" id="b8"><img src="../jacoco-resources/greenbar.gif" width="30" height="10" title="6" alt="6"/></td><td class="ctr2" id="c6">100 %</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f8">0</td><td class="ctr2" id="g8">1</td><td class="ctr1" id="h8">0</td><td class="ctr2" id="i8">3</td><td class="ctr1" id="j8">0</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a13"><a href="Natural.java.html#L48" class="el_method">valueOf(int)</a></td><td class="bar" id="b9"><img src="../jacoco-resources/greenbar.gif" width="25" height="10" title="5" alt="5"/></td><td class="ctr2" id="c7">100 %</td><td class="bar" id="d9"/><td class="ctr2" id="e9">n/a</td><td class="ctr1" id="f9">0</td><td class="ctr2" id="g9">1</td><td class="ctr1" id="h9">0</td><td class="ctr2" id="i9">1</td><td class="ctr1" id="j9">0</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a8"><a href="Natural.java.html#L6" class="el_method">static {...}</a></td><td class="bar" id="b10"><img src="../jacoco-resources/greenbar.gif" width="25" height="10" title="5" alt="5"/></td><td class="ctr2" id="c8">100 %</td><td class="bar" id="d10"/><td class="ctr2" id="e10">n/a</td><td class="ctr1" id="f10">0</td><td class="ctr2" id="g10">1</td><td class="ctr1" id="h10">0</td><td class="ctr2" id="i10">1</td><td class="ctr1" id="j10">0</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a11"><a href="Natural.java.html#L31" class="el_method">toInteger()</a></td><td class="bar" id="b11"><img src="../jacoco-resources/greenbar.gif" width="20" height="10" title="4" alt="4"/></td><td class="ctr2" id="c9">100 %</td><td class="bar" id="d11"/><td class="ctr2" id="e11">n/a</td><td class="ctr1" id="f11">0</td><td class="ctr2" id="g11">1</td><td class="ctr1" id="h11">0</td><td class="ctr2" id="i11">1</td><td class="ctr1" id="j11">0</td><td class="ctr2" id="k11">1</td></tr><tr><td id="a1"><a href="Natural.java.html#L77" class="el_method">clone()</a></td><td class="bar" id="b12"><img src="../jacoco-resources/greenbar.gif" width="20" height="10" title="4" alt="4"/></td><td class="ctr2" id="c10">100 %</td><td class="bar" id="d12"/><td class="ctr2" id="e12">n/a</td><td class="ctr1" id="f12">0</td><td class="ctr2" id="g12">1</td><td class="ctr1" id="h12">0</td><td class="ctr2" id="i12">1</td><td class="ctr1" id="j12">0</td><td class="ctr2" id="k12">1</td></tr><tr><td id="a12"><a href="Natural.java.html#L83" class="el_method">toString()</a></td><td class="bar" id="b13"><img src="../jacoco-resources/greenbar.gif" width="20" height="10" title="4" alt="4"/></td><td class="ctr2" id="c11">100 %</td><td class="bar" id="d13"/><td class="ctr2" id="e13">n/a</td><td class="ctr1" id="f13">0</td><td class="ctr2" id="g13">1</td><td class="ctr1" id="h13">0</td><td class="ctr2" id="i13">1</td><td class="ctr1" id="j13">0</td><td class="ctr2" id="k13">1</td></tr><tr><td id="a10"><a href="Natural.java.html#L36" class="el_method">toInt()</a></td><td class="bar" id="b14"><img src="../jacoco-resources/greenbar.gif" width="15" height="10" title="3" alt="3"/></td><td class="ctr2" id="c12">100 %</td><td class="bar" id="d14"/><td class="ctr2" id="e14">n/a</td><td class="ctr1" id="f14">0</td><td class="ctr2" id="g14">1</td><td class="ctr1" id="h14">0</td><td class="ctr2" id="i14">1</td><td class="ctr1" id="j14">0</td><td class="ctr2" id="k14">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.11.202310140853</span></div></body></html>
0 2
\ No newline at end of file
... ...
@@ -0,0 +1,119 @@
1
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>Natural.java</title><link rel="stylesheet" href="../jacoco-resources/prettify.css" type="text/css"/><script type="text/javascript" src="../jacoco-resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">kata</a> &gt; <a href="index.source.html" class="el_package">re.forestier.edu.lib</a> &gt; <span class="el_source">Natural.java</span></div><h1>Natural.java</h1><pre class="source lang-java linenums">package re.forestier.edu.lib;
2
+
3
+public class Natural implements Comparable&lt;Natural&gt;, Cloneable
4
+{
5
+    private int value;
6
+<span class="fc" id="L6">    public static final Natural ZERO = new ZERO();</span>
7
+
8
+    public Natural()
9
+<span class="fc" id="L9">    {</span>
10
+<span class="fc" id="L10">        this.value = 0;</span>
11
+<span class="fc" id="L11">    }</span>
12
+
13
+    private Natural(Integer i)
14
+<span class="fc" id="L14">    {</span>
15
+<span class="pc bpc" id="L15" title="1 of 2 branches missed.">        if(i == null)</span>
16
+<span class="nc" id="L16">            throw new IllegalArgumentException();</span>
17
+<span class="fc bfc" id="L17" title="All 2 branches covered.">        if(i &lt; 0)</span>
18
+<span class="fc" id="L18">            throw new IllegalArgumentException(&quot;Natural &gt;=0&quot;);</span>
19
+<span class="fc" id="L19">        this.value = i;</span>
20
+<span class="fc" id="L20">    }</span>
21
+
22
+    private Natural(int i)
23
+<span class="fc" id="L23">    {</span>
24
+<span class="fc bfc" id="L24" title="All 2 branches covered.">        if(i &lt; 0)</span>
25
+<span class="fc" id="L25">            throw new IllegalArgumentException(&quot;Natural &gt;=0&quot;);</span>
26
+<span class="fc" id="L26">        this.value = i;</span>
27
+<span class="fc" id="L27">    }</span>
28
+
29
+    public Integer toInteger()
30
+    {
31
+<span class="fc" id="L31">        return Integer.valueOf(this.value);</span>
32
+    }
33
+
34
+    public int toInt()
35
+    {
36
+<span class="fc" id="L36">        return this.value;</span>
37
+    }
38
+
39
+    public static Natural valueOf(Integer i)
40
+    {
41
+<span class="fc bfc" id="L41" title="All 2 branches covered.">        if(i == null)</span>
42
+<span class="fc" id="L42">            throw new IllegalArgumentException();</span>
43
+<span class="fc" id="L43">        return new Natural(i);</span>
44
+    }
45
+
46
+    public static Natural valueOf(int i)
47
+    {
48
+<span class="fc" id="L48">        return new Natural(i);</span>
49
+    }
50
+
51
+    public void add(Natural n)
52
+    {
53
+<span class="fc bfc" id="L53" title="All 2 branches covered.">        if(n == null)</span>
54
+<span class="fc" id="L54">            throw new IllegalArgumentException();</span>
55
+<span class="fc" id="L55">        this.value += n.toInt();</span>
56
+<span class="fc" id="L56">    }</span>
57
+
58
+
59
+    public void substract(Natural n)
60
+    {
61
+<span class="pc bpc" id="L61" title="1 of 4 branches missed.">        if(n == null || this.compareTo(n) == 1)</span>
62
+<span class="fc" id="L62">            throw new IllegalArgumentException();</span>
63
+<span class="fc" id="L63">        this.value -= n.toInt();</span>
64
+<span class="fc" id="L64">    } </span>
65
+
66
+    public void divide(Natural n)
67
+    {
68
+<span class="nc bnc" id="L68" title="All 4 branches missed.">        if(n == null || n == Natural.ZERO)</span>
69
+<span class="nc" id="L69">            throw new IllegalArgumentException();</span>
70
+<span class="nc" id="L70">        this.value /= n.toInt();</span>
71
+<span class="nc" id="L71">    }</span>
72
+
73
+
74
+    @Override
75
+    public Object clone()
76
+    {
77
+<span class="fc" id="L77">        return Natural.valueOf(this.value);</span>
78
+    }
79
+
80
+    @Override
81
+    public String toString()
82
+    {
83
+<span class="fc" id="L83">        return String.valueOf(this.value);</span>
84
+    }
85
+
86
+    @Override
87
+    public boolean equals(Object o)
88
+    {
89
+<span class="fc bfc" id="L89" title="All 2 branches covered.">        if(o == null)</span>
90
+<span class="fc" id="L90">            return false;</span>
91
+<span class="fc bfc" id="L91" title="All 2 branches covered.">        if(o == this)</span>
92
+<span class="fc" id="L92">            return true;</span>
93
+<span class="fc bfc" id="L93" title="All 2 branches covered.">        if(!(o instanceof Natural))</span>
94
+<span class="fc" id="L94">            return false;</span>
95
+<span class="fc bfc" id="L95" title="All 2 branches covered.">        return this.value == ((Natural)o).value;</span>
96
+    }
97
+
98
+    @Override
99
+    public int compareTo(Natural n)
100
+    {
101
+<span class="fc bfc" id="L101" title="All 2 branches covered.">        if(n == null)</span>
102
+<span class="fc" id="L102">            throw new IllegalArgumentException();</span>
103
+<span class="fc bfc" id="L103" title="All 2 branches covered.">        if(n.value &gt; this.value)</span>
104
+<span class="fc" id="L104">            return 1;</span>
105
+<span class="fc bfc" id="L105" title="All 2 branches covered.">        else if(n.value == this.value)</span>
106
+<span class="fc" id="L106">            return 0;</span>
107
+        else
108
+<span class="fc" id="L108">            return -1;</span>
109
+    }
110
+
111
+    private static class ZERO extends Natural
112
+    {
113
+        private ZERO()
114
+        {
115
+<span class="fc" id="L115">            super(0);</span>
116
+<span class="fc" id="L116">        }</span>
117
+    }
118
+}
119
+</pre><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.11.202310140853</span></div></body></html>
0 120
\ No newline at end of file
... ...
@@ -0,0 +1 @@
1
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>re.forestier.edu.lib</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">kata</a> &gt; <span class="el_package">re.forestier.edu.lib</span></div><h1>re.forestier.edu.lib</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">21 of 176</td><td class="ctr2">88 %</td><td class="bar">6 of 32</td><td class="ctr2">81 %</td><td class="ctr1">5</td><td class="ctr2">32</td><td class="ctr1">5</td><td class="ctr2">52</td><td class="ctr1">1</td><td class="ctr2">16</td><td class="ctr1">0</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a0"><a href="Natural.html" class="el_class">Natural</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="14" height="10" title="21" alt="21"/><img src="../jacoco-resources/greenbar.gif" width="105" height="10" title="151" alt="151"/></td><td class="ctr2" id="c1">87 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="22" height="10" title="6" alt="6"/><img src="../jacoco-resources/greenbar.gif" width="97" height="10" title="26" alt="26"/></td><td class="ctr2" id="e0">81 %</td><td class="ctr1" id="f0">5</td><td class="ctr2" id="g0">31</td><td class="ctr1" id="h0">5</td><td class="ctr2" id="i0">50</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">15</td><td class="ctr1" id="l0">0</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a1"><a href="Natural$ZERO.html" class="el_class">Natural.ZERO</a></td><td class="bar" id="b1"><img src="../jacoco-resources/greenbar.gif" width="2" height="10" title="4" alt="4"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i1">2</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td><td class="ctr1" id="l1">0</td><td class="ctr2" id="m1">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.11.202310140853</span></div></body></html>
0 2
\ No newline at end of file
... ...
@@ -0,0 +1 @@
1
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>re.forestier.edu.lib</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">kata</a> &gt; <span class="el_package">re.forestier.edu.lib</span></div><h1>re.forestier.edu.lib</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">21 of 176</td><td class="ctr2">88 %</td><td class="bar">6 of 32</td><td class="ctr2">81 %</td><td class="ctr1">5</td><td class="ctr2">32</td><td class="ctr1">5</td><td class="ctr2">52</td><td class="ctr1">1</td><td class="ctr2">16</td><td class="ctr1">0</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a0"><a href="Natural.java.html" class="el_source">Natural.java</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="14" height="10" title="21" alt="21"/><img src="../jacoco-resources/greenbar.gif" width="105" height="10" title="155" alt="155"/></td><td class="ctr2" id="c0">88 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="22" height="10" title="6" alt="6"/><img src="../jacoco-resources/greenbar.gif" width="97" height="10" title="26" alt="26"/></td><td class="ctr2" id="e0">81 %</td><td class="ctr1" id="f0">5</td><td class="ctr2" id="g0">32</td><td class="ctr1" id="h0">5</td><td class="ctr2" id="i0">52</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">16</td><td class="ctr1" id="l0">0</td><td class="ctr2" id="m0">2</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.11.202310140853</span></div></body></html>
0 2
\ No newline at end of file
... ...
@@ -41,7 +41,7 @@
41 41
 </td>
42 42
 <td>
43 43
 <div class="infoBox" id="duration">
44
-<div class="counter">0.148s</div>
44
+<div class="counter">0.173s</div>
45 45
 <p>duration</p>
46 46
 </div>
47 47
 </td>
... ...
@@ -76,7 +76,7 @@
76 76
 </thead>
77 77
 <tr>
78 78
 <td class="success">testAffichageBase()</td>
79
-<td class="success">0.148s</td>
79
+<td class="success">0.173s</td>
80 80
 <td class="success">passed</td>
81 81
 </tr>
82 82
 </table>
... ...
@@ -89,7 +89,7 @@
89 89
 <input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
90 90
 </label>
91 91
 </div>Generated by 
92
-<a href="http://www.gradle.org">Gradle 8.8</a> at 24 oct. 2024, 16:51:41</p>
92
+<a href="http://www.gradle.org">Gradle 8.8</a> at 24 oct. 2024, 17:41:14</p>
93 93
 </div>
94 94
 </div>
95 95
 </body>
... ...
@@ -41,7 +41,7 @@
41 41
 </td>
42 42
 <td>
43 43
 <div class="infoBox" id="duration">
44
-<div class="counter">0.033s</div>
44
+<div class="counter">0.015s</div>
45 45
 <p>duration</p>
46 46
 </div>
47 47
 </td>
... ...
@@ -90,19 +90,19 @@
90 90
 <tr>
91 91
 <td class="success">Main</td>
92 92
 <td class="success">testMain()</td>
93
-<td class="success">0.016s</td>
93
+<td class="success">0.005s</td>
94 94
 <td class="success">passed</td>
95 95
 </tr>
96 96
 <tr>
97 97
 <td class="success">majDeFinDeTour</td>
98 98
 <td class="success">testMajFinTour()</td>
99
-<td class="success">0.002s</td>
99
+<td class="success">0.001s</td>
100 100
 <td class="success">passed</td>
101 101
 </tr>
102 102
 <tr>
103 103
 <td class="success">Natural Tests</td>
104 104
 <td class="success">testNatural()</td>
105
-<td class="success">0.002s</td>
105
+<td class="success">0.001s</td>
106 106
 <td class="success">passed</td>
107 107
 </tr>
108 108
 <tr>
... ...
@@ -114,13 +114,13 @@
114 114
 <tr>
115 115
 <td class="success">Sample test</td>
116 116
 <td class="success">testPlayerName()</td>
117
-<td class="success">0.001s</td>
117
+<td class="success">0s</td>
118 118
 <td class="success">passed</td>
119 119
 </tr>
120 120
 <tr>
121 121
 <td class="success">removeMoney</td>
122 122
 <td class="success">testRemoveMoney()</td>
123
-<td class="success">0.007s</td>
123
+<td class="success">0.004s</td>
124 124
 <td class="success">passed</td>
125 125
 </tr>
126 126
 <tr>
... ...
@@ -132,7 +132,7 @@
132 132
 <tr>
133 133
 <td class="success">Construcor UpdatePlayer</td>
134 134
 <td class="success">testUpdatePlayer()</td>
135
-<td class="success">0.001s</td>
135
+<td class="success">0s</td>
136 136
 <td class="success">passed</td>
137 137
 </tr>
138 138
 </table>
... ...
@@ -145,7 +145,7 @@
145 145
 <input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
146 146
 </label>
147 147
 </div>Generated by 
148
-<a href="http://www.gradle.org">Gradle 8.8</a> at 24 oct. 2024, 16:51:41</p>
148
+<a href="http://www.gradle.org">Gradle 8.8</a> at 24 oct. 2024, 17:41:14</p>
149 149
 </div>
150 150
 </div>
151 151
 </body>
... ...
@@ -38,7 +38,7 @@
38 38
 </td>
39 39
 <td>
40 40
 <div class="infoBox" id="duration">
41
-<div class="counter">0.181s</div>
41
+<div class="counter">0.188s</div>
42 42
 <p>duration</p>
43 43
 </div>
44 44
 </td>
... ...
@@ -85,7 +85,7 @@
85 85
 <td>11</td>
86 86
 <td>0</td>
87 87
 <td>0</td>
88
-<td>0.181s</td>
88
+<td>0.188s</td>
89 89
 <td class="success">100%</td>
90 90
 </tr>
91 91
 </tbody>
... ...
@@ -112,7 +112,7 @@
112 112
 <td>1</td>
113 113
 <td>0</td>
114 114
 <td>0</td>
115
-<td>0.148s</td>
115
+<td>0.173s</td>
116 116
 <td class="success">100%</td>
117 117
 </tr>
118 118
 <tr>
... ...
@@ -122,7 +122,7 @@
122 122
 <td>10</td>
123 123
 <td>0</td>
124 124
 <td>0</td>
125
-<td>0.033s</td>
125
+<td>0.015s</td>
126 126
 <td class="success">100%</td>
127 127
 </tr>
128 128
 </tbody>
... ...
@@ -136,7 +136,7 @@
136 136
 <input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
137 137
 </label>
138 138
 </div>Generated by 
139
-<a href="http://www.gradle.org">Gradle 8.8</a> at 24 oct. 2024, 16:51:41</p>
139
+<a href="http://www.gradle.org">Gradle 8.8</a> at 24 oct. 2024, 17:41:14</p>
140 140
 </div>
141 141
 </div>
142 142
 </body>
... ...
@@ -40,7 +40,7 @@
40 40
 </td>
41 41
 <td>
42 42
 <div class="infoBox" id="duration">
43
-<div class="counter">0.181s</div>
43
+<div class="counter">0.188s</div>
44 44
 <p>duration</p>
45 45
 </div>
46 46
 </td>
... ...
@@ -83,7 +83,7 @@
83 83
 <td>1</td>
84 84
 <td>0</td>
85 85
 <td>0</td>
86
-<td>0.148s</td>
86
+<td>0.173s</td>
87 87
 <td class="success">100%</td>
88 88
 </tr>
89 89
 <tr>
... ...
@@ -93,7 +93,7 @@
93 93
 <td>10</td>
94 94
 <td>0</td>
95 95
 <td>0</td>
96
-<td>0.033s</td>
96
+<td>0.015s</td>
97 97
 <td class="success">100%</td>
98 98
 </tr>
99 99
 </table>
... ...
@@ -106,7 +106,7 @@
106 106
 <input id="line-wrapping-toggle" type="checkbox" autocomplete="off"/>
107 107
 </label>
108 108
 </div>Generated by 
109
-<a href="http://www.gradle.org">Gradle 8.8</a> at 24 oct. 2024, 16:51:41</p>
109
+<a href="http://www.gradle.org">Gradle 8.8</a> at 24 oct. 2024, 17:41:14</p>
110 110
 </div>
111 111
 </div>
112 112
 </body>
... ...
@@ -1,7 +1,7 @@
1 1
 <?xml version="1.0" encoding="UTF-8"?>
2
-<testsuite name="re.forestier.edu.GlobalTest" tests="1" skipped="0" failures="0" errors="0" timestamp="2024-10-24T14:51:41" hostname="a206pc27L.local.isima.fr" time="0.148">
2
+<testsuite name="re.forestier.edu.GlobalTest" tests="1" skipped="0" failures="0" errors="0" timestamp="2024-10-24T15:41:14" hostname="a206pc27L.local.isima.fr" time="0.173">
3 3
   <properties/>
4
-  <testcase name="testAffichageBase()" classname="re.forestier.edu.GlobalTest" time="0.148"/>
4
+  <testcase name="testAffichageBase()" classname="re.forestier.edu.GlobalTest" time="0.173"/>
5 5
   <system-out><![CDATA[]]></system-out>
6 6
   <system-err><![CDATA[]]></system-err>
7 7
 </testsuite>
... ...
@@ -1,16 +1,16 @@
1 1
 <?xml version="1.0" encoding="UTF-8"?>
2
-<testsuite name="re.forestier.edu.UnitTests" tests="10" skipped="0" failures="0" errors="0" timestamp="2024-10-24T14:51:41" hostname="a206pc27L.local.isima.fr" time="0.039">
2
+<testsuite name="re.forestier.edu.UnitTests" tests="10" skipped="0" failures="0" errors="0" timestamp="2024-10-24T15:41:14" hostname="a206pc27L.local.isima.fr" time="0.022">
3 3
   <properties/>
4
-  <testcase name="Main" classname="re.forestier.edu.UnitTests" time="0.016"/>
5
-  <testcase name="removeMoney" classname="re.forestier.edu.UnitTests" time="0.007"/>
4
+  <testcase name="Main" classname="re.forestier.edu.UnitTests" time="0.005"/>
5
+  <testcase name="removeMoney" classname="re.forestier.edu.UnitTests" time="0.004"/>
6 6
   <testcase name="ex &amp; lvl" classname="re.forestier.edu.UnitTests" time="0.002"/>
7 7
   <testcase name="addMoney" classname="re.forestier.edu.UnitTests" time="0.001"/>
8 8
   <testcase name="Heal and hurt" classname="re.forestier.edu.UnitTests" time="0.001"/>
9
-  <testcase name="Construcor UpdatePlayer" classname="re.forestier.edu.UnitTests" time="0.001"/>
10
-  <testcase name="majDeFinDeTour" classname="re.forestier.edu.UnitTests" time="0.002"/>
9
+  <testcase name="Construcor UpdatePlayer" classname="re.forestier.edu.UnitTests" time="0.0"/>
10
+  <testcase name="majDeFinDeTour" classname="re.forestier.edu.UnitTests" time="0.001"/>
11 11
   <testcase name="Constructor Player" classname="re.forestier.edu.UnitTests" time="0.0"/>
12
-  <testcase name="Natural Tests" classname="re.forestier.edu.UnitTests" time="0.002"/>
13
-  <testcase name="Sample test" classname="re.forestier.edu.UnitTests" time="0.001"/>
12
+  <testcase name="Natural Tests" classname="re.forestier.edu.UnitTests" time="0.001"/>
13
+  <testcase name="Sample test" classname="re.forestier.edu.UnitTests" time="0.0"/>
14 14
   <system-out><![CDATA[]]></system-out>
15 15
   <system-err><![CDATA[]]></system-err>
16 16
 </testsuite>
... ...
@@ -0,0 +1,3 @@
1
+package re.forestier.edu.rpg;
2
+
3
+public enum Ability{INT,DEF,ATK,CHA,ALC,VIS};
0 4
\ No newline at end of file
... ...
@@ -0,0 +1,9 @@
1
+package re.forestier.edu.rpg;
2
+
3
+import java.util.HashMap;
4
+
5
+public interface Job
6
+{
7
+    public static final int maxLevel = 5;
8
+    public HashMap<Ability, Integer[]> abilityPerLevel = new HashMap<Ability,Integer[]>();
9
+}
0 10
\ No newline at end of file
... ...
@@ -0,0 +1,42 @@
1
+package re.forestier.edu.rpg;
2
+
3
+import static java.util.Map.entry; 
4
+import java.util.Map;  
5
+import java.util.HashMap; 
6
+
7
+public enum Jobs implements Job
8
+{
9
+    ADVENTURER
10
+    {
11
+        public HashMap<Ability, Integer[]> abilityPerLevel = new HashMap(Map.ofEntries(
12
+            entry(Ability.INT, new Integer[]{1,2,2,2,2}),
13
+            entry(Ability.DEF, new Integer[]{1,1,1,3,4}),
14
+            entry(Ability.ATK, new Integer[]{3,3,5,5,5}),
15
+            entry(Ability.CHA, new Integer[]{2,3,3,3,3}),
16
+            entry(Ability.ALC, new Integer[]{1,2,2,2,2}),
17
+            entry(Ability.VIS, new Integer[]{0,0,0,0,1})
18
+        ));
19
+    },
20
+    ARCHER
21
+    {
22
+        public HashMap<Ability, Integer[]> abilityPerLevel = new HashMap(Map.ofEntries(
23
+            entry(Ability.INT, new Integer[]{1,1,1,1,1}),
24
+            entry(Ability.DEF, new Integer[]{0,1,1,2,2}),
25
+            entry(Ability.ATK, new Integer[]{3,3,3,3,4}),
26
+            entry(Ability.CHA, new Integer[]{1,2,2,2,2}),
27
+            entry(Ability.ALC, new Integer[]{0,0,0,0,0}),
28
+            entry(Ability.VIS, new Integer[]{3,3,3,3,3})
29
+        ));
30
+    },
31
+    DWARF
32
+    {
33
+        public HashMap<Ability, Integer[]> abilityPerLevel = new HashMap(Map.ofEntries(
34
+            entry(Ability.INT, new Integer[]{1,1,1,1,1}),
35
+            entry(Ability.DEF, new Integer[]{0,1,1,2,2}),
36
+            entry(Ability.ATK, new Integer[]{3,3,4,4,4}),
37
+            entry(Ability.CHA, new Integer[]{0,0,0,0,1}),
38
+            entry(Ability.ALC, new Integer[]{4,4,5,5,5}),
39
+            entry(Ability.VIS, new Integer[]{0,0,0,0,0})
40
+        ));
41
+    }
42
+}
0 43
\ No newline at end of file
1 44