@next-k8s/tickets 1.0.26 → 1.0.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/coverage/clover.xml +158 -17
- package/coverage/coverage-final.json +11 -1
- package/coverage/lcov-report/index.html +94 -19
- package/coverage/lcov-report/src/app.ts.html +17 -17
- package/coverage/lcov-report/src/events/listeners/_queue-group-name.ts.html +88 -0
- package/coverage/lcov-report/src/events/listeners/index.html +131 -0
- package/coverage/lcov-report/src/events/listeners/order-created.ts.html +151 -0
- package/coverage/lcov-report/src/events/publishers/created.ts.html +4 -4
- package/coverage/lcov-report/src/events/publishers/index.html +1 -1
- package/coverage/lcov-report/src/events/publishers/updated.ts.html +4 -4
- package/coverage/lcov-report/src/index.html +1 -1
- package/coverage/lcov-report/src/models/index.html +1 -1
- package/coverage/lcov-report/src/models/ticket.ts.html +20 -5
- package/coverage/lcov-report/src/routes/create.ts.html +11 -11
- package/coverage/lcov-report/src/routes/find.ts.html +1 -1
- package/coverage/lcov-report/src/routes/get.ts.html +25 -10
- package/coverage/lcov-report/src/routes/index.html +8 -23
- package/coverage/lcov-report/src/routes/index.ts.html +8 -11
- package/coverage/lcov-report/src/routes/update.ts.html +12 -12
- package/coverage/lcov-report/src/test/index.html +1 -1
- package/coverage/lcov-report/src/test/utils.ts.html +3 -3
- package/coverage/lcov-report/ticket.ts.html +1 -1
- package/coverage/lcov.info +241 -17
- package/package.json +3 -3
- package/pnpm-lock.yaml +311 -18
- package/src/events/listeners/__test__/order-created.test.ts +44 -0
- package/src/events/listeners/_queue-group-name.ts +1 -0
- package/src/events/listeners/order-created.ts +22 -0
- package/src/models/ticket.ts +7 -2
- package/src/routes/__test__/get.test.ts +15 -0
- package/src/routes/create.ts +1 -1
- package/src/routes/get.ts +5 -0
- package/src/routes/index.ts +1 -2
- package/src/routes/update.ts +1 -1
- package/src/routes/__test__/find.test.ts +0 -22
- 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"> </span>
|
90
|
+
<span class="cline-any cline-yes">1x</span>
|
91
|
+
<span class="cline-any cline-neutral"> </span>
|
92
|
+
<span class="cline-any cline-neutral"> </span>
|
93
|
+
<span class="cline-any cline-yes">1x</span>
|
94
|
+
<span class="cline-any cline-neutral"> </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"> </span>
|
99
|
+
<span class="cline-any cline-neutral"> </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"> </span>
|
105
|
+
<span class="cline-any cline-yes">2x</span>
|
106
|
+
<span class="cline-any cline-neutral"> </span>
|
107
|
+
<span class="cline-any cline-neutral"> </span>
|
108
|
+
<span class="cline-any cline-neutral"> </span>
|
109
|
+
<span class="cline-any cline-yes">1x</span>
|
110
|
+
<span class="cline-any cline-neutral"> </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
|
+
|
115
|
+
import queueGroupName from './_queue-group-name'
|
116
|
+
|
117
|
+
export class OrderCreatedListener extends Listener<OrderCreatedEvent> {
|
118
|
+
readonly subject = Subjects.OrderCreated
|
119
|
+
queueGroupName = queueGroupName
|
120
|
+
|
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
|
+
|
127
|
+
msg.ack()
|
128
|
+
}
|
129
|
+
}
|
130
|
+
|
131
|
+
export default OrderCreatedListener
|
132
|
+
</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">
|
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"> </span>
|
75
|
-
<span class="cline-any cline-yes">
|
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"> </span>
|
78
78
|
<span class="cline-any cline-neutral"> </span>
|
79
|
-
<span class="cline-any cline-yes">
|
79
|
+
<span class="cline-any cline-yes">3x</span>
|
80
80
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { Publisher, Subjects, TicketCreatedEvent } from '@next-k8s/common'
|
81
81
|
|
82
82
|
export class TicketCreatedPublisher extends Publisher<TicketCreatedEvent> {
|
@@ -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
|
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
|
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">
|
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"> </span>
|
75
|
-
<span class="cline-any cline-yes">
|
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"> </span>
|
78
78
|
<span class="cline-any cline-neutral"> </span>
|
79
|
-
<span class="cline-any cline-yes">
|
79
|
+
<span class="cline-any cline-yes">3x</span>
|
80
80
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import { Publisher, Subjects, TicketUpdatedEvent } from '@next-k8s/common'
|
81
81
|
|
82
82
|
export class TicketUpdatedPublisher extends Publisher<TicketUpdatedEvent> {
|
@@ -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
|
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
|
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
|
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
|
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"> </span>
|
114
119
|
<span class="cline-any cline-neutral"> </span>
|
@@ -119,6 +124,7 @@
|
|
119
124
|
<span class="cline-any cline-neutral"> </span>
|
120
125
|
<span class="cline-any cline-neutral"> </span>
|
121
126
|
<span class="cline-any cline-neutral"> </span>
|
127
|
+
<span class="cline-any cline-neutral"> </span>
|
122
128
|
<span class="cline-any cline-yes">5x</span>
|
123
129
|
<span class="cline-any cline-neutral"> </span>
|
124
130
|
<span class="cline-any cline-neutral"> </span>
|
@@ -137,6 +143,10 @@
|
|
137
143
|
<span class="cline-any cline-neutral"> </span>
|
138
144
|
<span class="cline-any cline-neutral"> </span>
|
139
145
|
<span class="cline-any cline-neutral"> </span>
|
146
|
+
<span class="cline-any cline-neutral"> </span>
|
147
|
+
<span class="cline-any cline-neutral"> </span>
|
148
|
+
<span class="cline-any cline-neutral"> </span>
|
149
|
+
<span class="cline-any cline-neutral"> </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"> </span>
|
153
|
-
<span class="cline-any cline-yes">
|
163
|
+
<span class="cline-any cline-yes">26x</span>
|
154
164
|
<span class="cline-any cline-neutral"> </span>
|
155
165
|
<span class="cline-any cline-neutral"> </span>
|
156
166
|
<span class="cline-any cline-neutral"> </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
|
|
159
169
|
interface TicketAttributes {
|
160
|
-
title:
|
161
|
-
price:
|
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
|
+
|
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
|
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">
|
91
|
-
<span class="cline-any cline-yes">
|
92
|
-
<span class="cline-any cline-yes">
|
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"> </span>
|
94
|
-
<span class="cline-any cline-yes">
|
95
|
-
<span class="cline-any cline-yes">
|
96
|
-
<span class="cline-any cline-yes">
|
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"> </span>
|
98
|
-
<span class="cline-any cline-yes">
|
98
|
+
<span class="cline-any cline-yes">3x</span>
|
99
99
|
<span class="cline-any cline-neutral"> </span>
|
100
|
-
<span class="cline-any cline-yes">
|
100
|
+
<span class="cline-any cline-yes">3x</span>
|
101
101
|
<span class="cline-any cline-neutral"> </span>
|
102
102
|
<span class="cline-any cline-neutral"> </span>
|
103
103
|
<span class="cline-any cline-neutral"> </span>
|
@@ -110,7 +110,7 @@
|
|
110
110
|
<span class="cline-any cline-yes">10x</span>
|
111
111
|
<span class="cline-any cline-neutral"> </span>
|
112
112
|
<span class="cline-any cline-neutral"> </span>
|
113
|
-
<span class="cline-any cline-yes">
|
113
|
+
<span class="cline-any cline-yes">3x</span>
|
114
114
|
<span class="cline-any cline-neutral"> </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
|
|
@@ -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
|
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
|
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'>
|
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'>
|
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'>
|
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
|
83
|
-
<
|
84
|
-
<
|
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"> </span>
|
86
|
-
<span class="cline-any cline-yes">
|
91
|
+
<span class="cline-any cline-yes">3x</span>
|
92
|
+
<span class="cline-any cline-neutral"> </span>
|
93
|
+
<span class="cline-any cline-yes">3x</span>
|
94
|
+
<span class="cline-any cline-neutral"> </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"> </span>
|
88
|
-
<span class="cline-any cline-yes">4x</span>
|
89
99
|
<span class="cline-any cline-neutral"> </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"> </span>
|
96
106
|
<span class="cline-any cline-neutral"> </span>
|
97
|
-
<span class="cline-any cline-yes">
|
107
|
+
<span class="cline-any cline-yes">3x</span>
|
98
108
|
<span class="cline-any cline-neutral"> </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
|
|
104
114
|
const router = express.Router()
|
105
115
|
|
116
|
+
router.get('/api/tickets', async (req: Request, res: Response) => {
|
117
|
+
const tickets = await Ticket.find({})
|
118
|
+
res.send({ tickets })
|
119
|
+
})
|
120
|
+
|
106
121
|
router.get('/api/tickets/:id', async (req: Request, res: Response) => {
|
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
|
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>
|