@next-k8s/tickets 1.0.26 → 1.0.27

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/coverage/clover.xml +158 -17
  3. package/coverage/coverage-final.json +11 -1
  4. package/coverage/lcov-report/index.html +94 -19
  5. package/coverage/lcov-report/src/app.ts.html +17 -17
  6. package/coverage/lcov-report/src/events/listeners/_queue-group-name.ts.html +88 -0
  7. package/coverage/lcov-report/src/events/listeners/index.html +131 -0
  8. package/coverage/lcov-report/src/events/listeners/order-created.ts.html +151 -0
  9. package/coverage/lcov-report/src/events/publishers/created.ts.html +4 -4
  10. package/coverage/lcov-report/src/events/publishers/index.html +1 -1
  11. package/coverage/lcov-report/src/events/publishers/updated.ts.html +4 -4
  12. package/coverage/lcov-report/src/index.html +1 -1
  13. package/coverage/lcov-report/src/models/index.html +1 -1
  14. package/coverage/lcov-report/src/models/ticket.ts.html +20 -5
  15. package/coverage/lcov-report/src/routes/create.ts.html +11 -11
  16. package/coverage/lcov-report/src/routes/find.ts.html +1 -1
  17. package/coverage/lcov-report/src/routes/get.ts.html +25 -10
  18. package/coverage/lcov-report/src/routes/index.html +8 -23
  19. package/coverage/lcov-report/src/routes/index.ts.html +8 -11
  20. package/coverage/lcov-report/src/routes/update.ts.html +12 -12
  21. package/coverage/lcov-report/src/test/index.html +1 -1
  22. package/coverage/lcov-report/src/test/utils.ts.html +3 -3
  23. package/coverage/lcov-report/ticket.ts.html +1 -1
  24. package/coverage/lcov.info +241 -17
  25. package/package.json +3 -3
  26. package/pnpm-lock.yaml +311 -18
  27. package/src/events/listeners/__test__/order-created.test.ts +44 -0
  28. package/src/events/listeners/_queue-group-name.ts +1 -0
  29. package/src/events/listeners/order-created.ts +22 -0
  30. package/src/models/ticket.ts +7 -2
  31. package/src/routes/__test__/get.test.ts +15 -0
  32. package/src/routes/create.ts +1 -1
  33. package/src/routes/get.ts +5 -0
  34. package/src/routes/index.ts +1 -2
  35. package/src/routes/update.ts +1 -1
  36. package/src/routes/__test__/find.test.ts +0 -22
  37. package/src/routes/find.ts +0 -11
@@ -0,0 +1,131 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/events/listeners</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../../prettify.css" />
9
+ <link rel="stylesheet" href="../../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../../index.html">All files</a> src/events/listeners</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">92.85% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>13/14</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">0% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>0/1</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">100% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>2/2</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">100% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>13/13</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <div class="pad1">
66
+ <table class="coverage-summary">
67
+ <thead>
68
+ <tr>
69
+ <th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
70
+ <th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
71
+ <th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
72
+ <th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
73
+ <th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
74
+ <th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
75
+ <th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
76
+ <th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
77
+ <th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
78
+ <th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
79
+ </tr>
80
+ </thead>
81
+ <tbody><tr>
82
+ <td class="file high" data-value="_queue-group-name.ts"><a href="_queue-group-name.ts.html">_queue-group-name.ts</a></td>
83
+ <td data-value="100" class="pic high">
84
+ <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
85
+ </td>
86
+ <td data-value="100" class="pct high">100%</td>
87
+ <td data-value="1" class="abs high">1/1</td>
88
+ <td data-value="100" class="pct high">100%</td>
89
+ <td data-value="0" class="abs high">0/0</td>
90
+ <td data-value="100" class="pct high">100%</td>
91
+ <td data-value="0" class="abs high">0/0</td>
92
+ <td data-value="100" class="pct high">100%</td>
93
+ <td data-value="1" class="abs high">1/1</td>
94
+ </tr>
95
+
96
+ <tr>
97
+ <td class="file high" data-value="order-created.ts"><a href="order-created.ts.html">order-created.ts</a></td>
98
+ <td data-value="92.3" class="pic high">
99
+ <div class="chart"><div class="cover-fill" style="width: 92%"></div><div class="cover-empty" style="width: 8%"></div></div>
100
+ </td>
101
+ <td data-value="92.3" class="pct high">92.3%</td>
102
+ <td data-value="13" class="abs high">12/13</td>
103
+ <td data-value="0" class="pct low">0%</td>
104
+ <td data-value="1" class="abs low">0/1</td>
105
+ <td data-value="100" class="pct high">100%</td>
106
+ <td data-value="2" class="abs high">2/2</td>
107
+ <td data-value="100" class="pct high">100%</td>
108
+ <td data-value="12" class="abs high">12/12</td>
109
+ </tr>
110
+
111
+ </tbody>
112
+ </table>
113
+ </div>
114
+ <div class='push'></div><!-- for sticky footer -->
115
+ </div><!-- /wrapper -->
116
+ <div class='footer quiet pad2 space-top1 center small'>
117
+ Code coverage generated by
118
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
119
+ at Fri Jul 15 2022 16:01:42 GMT-0500 (Central Daylight Time)
120
+ </div>
121
+ <script src="../../../prettify.js"></script>
122
+ <script>
123
+ window.onload = function () {
124
+ prettyPrint();
125
+ };
126
+ </script>
127
+ <script src="../../../sorter.js"></script>
128
+ <script src="../../../block-navigation.js"></script>
129
+ </body>
130
+ </html>
131
+
@@ -0,0 +1,151 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/events/listeners/order-created.ts</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../../prettify.css" />
9
+ <link rel="stylesheet" href="../../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../../index.html">All files</a> / <a href="index.html">src/events/listeners</a> order-created.ts</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">92.3% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>12/13</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">0% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>0/1</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">100% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>2/2</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">100% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>12/12</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <pre><table class="coverage">
66
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
+ <a name='L2'></a><a href='#L2'>2</a>
68
+ <a name='L3'></a><a href='#L3'>3</a>
69
+ <a name='L4'></a><a href='#L4'>4</a>
70
+ <a name='L5'></a><a href='#L5'>5</a>
71
+ <a name='L6'></a><a href='#L6'>6</a>
72
+ <a name='L7'></a><a href='#L7'>7</a>
73
+ <a name='L8'></a><a href='#L8'>8</a>
74
+ <a name='L9'></a><a href='#L9'>9</a>
75
+ <a name='L10'></a><a href='#L10'>10</a>
76
+ <a name='L11'></a><a href='#L11'>11</a>
77
+ <a name='L12'></a><a href='#L12'>12</a>
78
+ <a name='L13'></a><a href='#L13'>13</a>
79
+ <a name='L14'></a><a href='#L14'>14</a>
80
+ <a name='L15'></a><a href='#L15'>15</a>
81
+ <a name='L16'></a><a href='#L16'>16</a>
82
+ <a name='L17'></a><a href='#L17'>17</a>
83
+ <a name='L18'></a><a href='#L18'>18</a>
84
+ <a name='L19'></a><a href='#L19'>19</a>
85
+ <a name='L20'></a><a href='#L20'>20</a>
86
+ <a name='L21'></a><a href='#L21'>21</a>
87
+ <a name='L22'></a><a href='#L22'>22</a>
88
+ <a name='L23'></a><a href='#L23'>23</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
89
+ <span class="cline-any cline-neutral">&nbsp;</span>
90
+ <span class="cline-any cline-yes">1x</span>
91
+ <span class="cline-any cline-neutral">&nbsp;</span>
92
+ <span class="cline-any cline-neutral">&nbsp;</span>
93
+ <span class="cline-any cline-yes">1x</span>
94
+ <span class="cline-any cline-neutral">&nbsp;</span>
95
+ <span class="cline-any cline-yes">1x</span>
96
+ <span class="cline-any cline-yes">2x</span>
97
+ <span class="cline-any cline-yes">2x</span>
98
+ <span class="cline-any cline-neutral">&nbsp;</span>
99
+ <span class="cline-any cline-neutral">&nbsp;</span>
100
+ <span class="cline-any cline-yes">2x</span>
101
+ <span class="cline-any cline-yes">2x</span>
102
+ <span class="cline-any cline-yes">2x</span>
103
+ <span class="cline-any cline-yes">2x</span>
104
+ <span class="cline-any cline-neutral">&nbsp;</span>
105
+ <span class="cline-any cline-yes">2x</span>
106
+ <span class="cline-any cline-neutral">&nbsp;</span>
107
+ <span class="cline-any cline-neutral">&nbsp;</span>
108
+ <span class="cline-any cline-neutral">&nbsp;</span>
109
+ <span class="cline-any cline-yes">1x</span>
110
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { Listener, NotFoundError, OrderCreatedEvent, Subjects } from '@next-k8s/common'
111
+ import { Message } from 'node-nats-streaming'
112
+ import Ticket from '../../models/ticket'
113
+ import TicketUpdatedPublisher from '../publishers/updated'
114
+ &nbsp;
115
+ import queueGroupName from './_queue-group-name'
116
+ &nbsp;
117
+ export class OrderCreatedListener extends Listener&lt;OrderCreatedEvent&gt; {
118
+ readonly subject = Subjects.OrderCreated
119
+ queueGroupName = queueGroupName
120
+ &nbsp;
121
+ async onMessage (data: OrderCreatedEvent['data'], msg: Message) {
122
+ const ticket = await Ticket.findById(data.ticket.id)
123
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (!ticket) <span class="cstat-no" title="statement not covered" >throw new NotFoundError('Ticket not found')</span>
124
+ ticket.set({ orderId: data.id })
125
+ await ticket.save()
126
+ &nbsp;
127
+ msg.ack()
128
+ }
129
+ }
130
+ &nbsp;
131
+ export default OrderCreatedListener
132
+ &nbsp;</pre></td></tr></table></pre>
133
+
134
+ <div class='push'></div><!-- for sticky footer -->
135
+ </div><!-- /wrapper -->
136
+ <div class='footer quiet pad2 space-top1 center small'>
137
+ Code coverage generated by
138
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
139
+ at Fri Jul 15 2022 16:01:42 GMT-0500 (Central Daylight Time)
140
+ </div>
141
+ <script src="../../../prettify.js"></script>
142
+ <script>
143
+ window.onload = function () {
144
+ prettyPrint();
145
+ };
146
+ </script>
147
+ <script src="../../../sorter.js"></script>
148
+ <script src="../../../block-navigation.js"></script>
149
+ </body>
150
+ </html>
151
+
@@ -70,13 +70,13 @@
70
70
  <a name='L5'></a><a href='#L5'>5</a>
71
71
  <a name='L6'></a><a href='#L6'>6</a>
72
72
  <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">4x</span>
73
+ <a name='L8'></a><a href='#L8'>8</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">3x</span>
74
74
  <span class="cline-any cline-neutral">&nbsp;</span>
75
- <span class="cline-any cline-yes">4x</span>
75
+ <span class="cline-any cline-yes">3x</span>
76
76
  <span class="cline-any cline-yes">10x</span>
77
77
  <span class="cline-any cline-neutral">&nbsp;</span>
78
78
  <span class="cline-any cline-neutral">&nbsp;</span>
79
- <span class="cline-any cline-yes">4x</span>
79
+ <span class="cline-any cline-yes">3x</span>
80
80
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { Publisher, Subjects, TicketCreatedEvent } from '@next-k8s/common'
81
81
  &nbsp;
82
82
  export class TicketCreatedPublisher extends Publisher&lt;TicketCreatedEvent&gt; {
@@ -91,7 +91,7 @@ export default TicketCreatedPublisher
91
91
  <div class='footer quiet pad2 space-top1 center small'>
92
92
  Code coverage generated by
93
93
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
94
- at Tue Jul 12 2022 12:57:10 GMT-0500 (Central Daylight Time)
94
+ at Fri Jul 15 2022 16:01:42 GMT-0500 (Central Daylight Time)
95
95
  </div>
96
96
  <script src="../../../prettify.js"></script>
97
97
  <script>
@@ -116,7 +116,7 @@
116
116
  <div class='footer quiet pad2 space-top1 center small'>
117
117
  Code coverage generated by
118
118
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
119
- at Tue Jul 12 2022 12:57:10 GMT-0500 (Central Daylight Time)
119
+ at Fri Jul 15 2022 16:01:42 GMT-0500 (Central Daylight Time)
120
120
  </div>
121
121
  <script src="../../../prettify.js"></script>
122
122
  <script>
@@ -70,13 +70,13 @@
70
70
  <a name='L5'></a><a href='#L5'>5</a>
71
71
  <a name='L6'></a><a href='#L6'>6</a>
72
72
  <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">4x</span>
73
+ <a name='L8'></a><a href='#L8'>8</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">3x</span>
74
74
  <span class="cline-any cline-neutral">&nbsp;</span>
75
- <span class="cline-any cline-yes">4x</span>
75
+ <span class="cline-any cline-yes">3x</span>
76
76
  <span class="cline-any cline-yes">1x</span>
77
77
  <span class="cline-any cline-neutral">&nbsp;</span>
78
78
  <span class="cline-any cline-neutral">&nbsp;</span>
79
- <span class="cline-any cline-yes">4x</span>
79
+ <span class="cline-any cline-yes">3x</span>
80
80
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { Publisher, Subjects, TicketUpdatedEvent } from '@next-k8s/common'
81
81
  &nbsp;
82
82
  export class TicketUpdatedPublisher extends Publisher&lt;TicketUpdatedEvent&gt; {
@@ -91,7 +91,7 @@ export default TicketUpdatedPublisher
91
91
  <div class='footer quiet pad2 space-top1 center small'>
92
92
  Code coverage generated by
93
93
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
94
- at Tue Jul 12 2022 12:57:10 GMT-0500 (Central Daylight Time)
94
+ at Fri Jul 15 2022 16:01:42 GMT-0500 (Central Daylight Time)
95
95
  </div>
96
96
  <script src="../../../prettify.js"></script>
97
97
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at Tue Jul 12 2022 12:57:10 GMT-0500 (Central Daylight Time)
104
+ at Fri Jul 15 2022 16:01:42 GMT-0500 (Central Daylight Time)
105
105
  </div>
106
106
  <script src="../prettify.js"></script>
107
107
  <script>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at Tue Jul 12 2022 12:57:10 GMT-0500 (Central Daylight Time)
104
+ at Fri Jul 15 2022 16:01:42 GMT-0500 (Central Daylight Time)
105
105
  </div>
106
106
  <script src="../../prettify.js"></script>
107
107
  <script>
@@ -108,7 +108,12 @@
108
108
  <a name='L43'></a><a href='#L43'>43</a>
109
109
  <a name='L44'></a><a href='#L44'>44</a>
110
110
  <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">5x</span>
111
+ <a name='L46'></a><a href='#L46'>46</a>
112
+ <a name='L47'></a><a href='#L47'>47</a>
113
+ <a name='L48'></a><a href='#L48'>48</a>
114
+ <a name='L49'></a><a href='#L49'>49</a>
115
+ <a name='L50'></a><a href='#L50'>50</a>
116
+ <a name='L51'></a><a href='#L51'>51</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">5x</span>
112
117
  <span class="cline-any cline-yes">5x</span>
113
118
  <span class="cline-any cline-neutral">&nbsp;</span>
114
119
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -119,6 +124,7 @@
119
124
  <span class="cline-any cline-neutral">&nbsp;</span>
120
125
  <span class="cline-any cline-neutral">&nbsp;</span>
121
126
  <span class="cline-any cline-neutral">&nbsp;</span>
127
+ <span class="cline-any cline-neutral">&nbsp;</span>
122
128
  <span class="cline-any cline-yes">5x</span>
123
129
  <span class="cline-any cline-neutral">&nbsp;</span>
124
130
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -137,6 +143,10 @@
137
143
  <span class="cline-any cline-neutral">&nbsp;</span>
138
144
  <span class="cline-any cline-neutral">&nbsp;</span>
139
145
  <span class="cline-any cline-neutral">&nbsp;</span>
146
+ <span class="cline-any cline-neutral">&nbsp;</span>
147
+ <span class="cline-any cline-neutral">&nbsp;</span>
148
+ <span class="cline-any cline-neutral">&nbsp;</span>
149
+ <span class="cline-any cline-neutral">&nbsp;</span>
140
150
  <span class="cline-any cline-yes">15x</span>
141
151
  <span class="cline-any cline-yes">15x</span>
142
152
  <span class="cline-any cline-yes">15x</span>
@@ -150,16 +160,17 @@
150
160
  <span class="cline-any cline-yes">5x</span>
151
161
  <span class="cline-any cline-yes">5x</span>
152
162
  <span class="cline-any cline-neutral">&nbsp;</span>
153
- <span class="cline-any cline-yes">20x</span>
163
+ <span class="cline-any cline-yes">26x</span>
154
164
  <span class="cline-any cline-neutral">&nbsp;</span>
155
165
  <span class="cline-any cline-neutral">&nbsp;</span>
156
166
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import mongoose, { ObjectId } from 'mongoose'
157
167
  import { updateIfCurrentPlugin } from 'mongoose-update-if-current'
158
168
  &nbsp;
159
169
  interface TicketAttributes {
160
- title: String;
161
- price: Number;
170
+ title: string;
171
+ price: number;
162
172
  owner: string;
173
+ orderId?: string;
163
174
  createdAt?: Date;
164
175
  updatedAt?: Date;
165
176
  }
@@ -178,6 +189,10 @@ const ticketSchema = new mongoose.Schema({
178
189
  owner: {
179
190
  type: mongoose.Schema.Types.ObjectId,
180
191
  required: true
192
+ },
193
+ &nbsp;
194
+ orderId: {
195
+ type: String
181
196
  }
182
197
  }, {
183
198
  toJSON: {
@@ -205,7 +220,7 @@ export default class Ticket extends TicketModel {
205
220
  <div class='footer quiet pad2 space-top1 center small'>
206
221
  Code coverage generated by
207
222
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
208
- at Tue Jul 12 2022 12:57:10 GMT-0500 (Central Daylight Time)
223
+ at Fri Jul 15 2022 16:01:42 GMT-0500 (Central Daylight Time)
209
224
  </div>
210
225
  <script src="../../prettify.js"></script>
211
226
  <script>
@@ -87,17 +87,17 @@
87
87
  <a name='L22'></a><a href='#L22'>22</a>
88
88
  <a name='L23'></a><a href='#L23'>23</a>
89
89
  <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">4x</span>
91
- <span class="cline-any cline-yes">4x</span>
92
- <span class="cline-any cline-yes">4x</span>
90
+ <a name='L25'></a><a href='#L25'>25</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">3x</span>
91
+ <span class="cline-any cline-yes">3x</span>
92
+ <span class="cline-any cline-yes">3x</span>
93
93
  <span class="cline-any cline-neutral">&nbsp;</span>
94
- <span class="cline-any cline-yes">4x</span>
95
- <span class="cline-any cline-yes">4x</span>
96
- <span class="cline-any cline-yes">4x</span>
94
+ <span class="cline-any cline-yes">3x</span>
95
+ <span class="cline-any cline-yes">3x</span>
96
+ <span class="cline-any cline-yes">3x</span>
97
97
  <span class="cline-any cline-neutral">&nbsp;</span>
98
- <span class="cline-any cline-yes">4x</span>
98
+ <span class="cline-any cline-yes">3x</span>
99
99
  <span class="cline-any cline-neutral">&nbsp;</span>
100
- <span class="cline-any cline-yes">4x</span>
100
+ <span class="cline-any cline-yes">3x</span>
101
101
  <span class="cline-any cline-neutral">&nbsp;</span>
102
102
  <span class="cline-any cline-neutral">&nbsp;</span>
103
103
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -110,7 +110,7 @@
110
110
  <span class="cline-any cline-yes">10x</span>
111
111
  <span class="cline-any cline-neutral">&nbsp;</span>
112
112
  <span class="cline-any cline-neutral">&nbsp;</span>
113
- <span class="cline-any cline-yes">4x</span>
113
+ <span class="cline-any cline-yes">3x</span>
114
114
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import express, { Request, Response } from 'express'
115
115
  import { body } from 'express-validator'
116
116
  import { requireAuth, validateRequest } from '@next-k8s/common'
@@ -130,7 +130,7 @@ router.post('/api/tickets', requireAuth, validateInput, validateRequest, async (
130
130
  const { title, price } = req.body
131
131
  const ticket = new Ticket({ title, price, owner: req.currentUser!.id })
132
132
  await ticket.save()
133
- new TicketCreatedPublisher(natsClient.client).publish({ id: ticket.id, title: ticket.title, price: ticket.price, owner: ticket.owner })
133
+ new TicketCreatedPublisher(natsClient.client).publish({ id: ticket.id, version: ticket.version, title: ticket.title, price: ticket.price, owner: ticket.owner })
134
134
  res.status(201).send({ ticket })
135
135
  })
136
136
  &nbsp;
@@ -142,7 +142,7 @@ export default router
142
142
  <div class='footer quiet pad2 space-top1 center small'>
143
143
  Code coverage generated by
144
144
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
145
- at Tue Jul 12 2022 12:57:10 GMT-0500 (Central Daylight Time)
145
+ at Fri Jul 15 2022 16:01:42 GMT-0500 (Central Daylight Time)
146
146
  </div>
147
147
  <script src="../../prettify.js"></script>
148
148
  <script>
@@ -103,7 +103,7 @@ export default router
103
103
  <div class='footer quiet pad2 space-top1 center small'>
104
104
  Code coverage generated by
105
105
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
106
- at Tue Jul 12 2022 12:57:10 GMT-0500 (Central Daylight Time)
106
+ at Wed Jul 13 2022 20:58:50 GMT-0500 (Central Daylight Time)
107
107
  </div>
108
108
  <script src="../../prettify.js"></script>
109
109
  <script>
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>14/14</span>
28
+ <span class='fraction'>18/18</span>
29
29
  </div>
30
30
 
31
31
 
@@ -39,14 +39,14 @@
39
39
  <div class='fl pad1y space-right2'>
40
40
  <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>2/2</span>
42
+ <span class='fraction'>4/4</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>11/11</span>
49
+ <span class='fraction'>14/14</span>
50
50
  </div>
51
51
 
52
52
 
@@ -79,13 +79,23 @@
79
79
  <a name='L14'></a><a href='#L14'>14</a>
80
80
  <a name='L15'></a><a href='#L15'>15</a>
81
81
  <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">4x</span>
83
- <span class="cline-any cline-yes">4x</span>
84
- <span class="cline-any cline-yes">4x</span>
82
+ <a name='L17'></a><a href='#L17'>17</a>
83
+ <a name='L18'></a><a href='#L18'>18</a>
84
+ <a name='L19'></a><a href='#L19'>19</a>
85
+ <a name='L20'></a><a href='#L20'>20</a>
86
+ <a name='L21'></a><a href='#L21'>21</a>
87
+ <a name='L22'></a><a href='#L22'>22</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">3x</span>
88
+ <span class="cline-any cline-yes">3x</span>
89
+ <span class="cline-any cline-yes">3x</span>
85
90
  <span class="cline-any cline-neutral">&nbsp;</span>
86
- <span class="cline-any cline-yes">4x</span>
91
+ <span class="cline-any cline-yes">3x</span>
92
+ <span class="cline-any cline-neutral">&nbsp;</span>
93
+ <span class="cline-any cline-yes">3x</span>
94
+ <span class="cline-any cline-neutral">&nbsp;</span>
95
+ <span class="cline-any cline-yes">3x</span>
96
+ <span class="cline-any cline-yes">1x</span>
97
+ <span class="cline-any cline-yes">1x</span>
87
98
  <span class="cline-any cline-neutral">&nbsp;</span>
88
- <span class="cline-any cline-yes">4x</span>
89
99
  <span class="cline-any cline-neutral">&nbsp;</span>
90
100
  <span class="cline-any cline-yes">4x</span>
91
101
  <span class="cline-any cline-yes">4x</span>
@@ -94,7 +104,7 @@
94
104
  <span class="cline-any cline-yes">2x</span>
95
105
  <span class="cline-any cline-neutral">&nbsp;</span>
96
106
  <span class="cline-any cline-neutral">&nbsp;</span>
97
- <span class="cline-any cline-yes">4x</span>
107
+ <span class="cline-any cline-yes">3x</span>
98
108
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { BadRequestError, NotFoundError } from '@next-k8s/common'
99
109
  import express, { Request, Response } from 'express'
100
110
  import { isValidObjectId } from 'mongoose'
@@ -103,6 +113,11 @@ import Ticket from '../models/ticket'
103
113
  &nbsp;
104
114
  const router = express.Router()
105
115
  &nbsp;
116
+ router.get('/api/tickets', async (req: Request, res: Response) =&gt; {
117
+ const tickets = await Ticket.find({})
118
+ res.send({ tickets })
119
+ })
120
+ &nbsp;
106
121
  router.get('/api/tickets/:id', async (req: Request, res: Response) =&gt; {
107
122
  if (!isValidObjectId(req.params.id)) throw new BadRequestError('Invalid Ticket ID')
108
123
  const ticket = await Ticket.findById(req.params.id)
@@ -118,7 +133,7 @@ export default router
118
133
  <div class='footer quiet pad2 space-top1 center small'>
119
134
  Code coverage generated by
120
135
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
121
- at Tue Jul 12 2022 12:57:10 GMT-0500 (Central Daylight Time)
136
+ at Fri Jul 15 2022 16:01:42 GMT-0500 (Central Daylight Time)
122
137
  </div>
123
138
  <script src="../../prettify.js"></script>
124
139
  <script>