@next-k8s/tickets 1.0.27 → 1.0.28
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 +67 -45
- package/coverage/coverage-final.json +9 -8
- package/coverage/lcov-report/events/listeners/_queue-group-name.ts.html +88 -0
- package/coverage/lcov-report/events/listeners/index.html +131 -0
- package/coverage/lcov-report/events/listeners/order-created.ts.html +157 -0
- package/coverage/lcov-report/events/publishers/index.html +116 -0
- package/coverage/lcov-report/events/publishers/updated.ts.html +106 -0
- package/coverage/lcov-report/index.html +18 -18
- package/coverage/lcov-report/models/index.html +116 -0
- package/coverage/lcov-report/models/ticket.ts.html +235 -0
- package/coverage/lcov-report/src/app.ts.html +1 -1
- package/coverage/lcov-report/src/events/listeners/_queue-group-name.ts.html +2 -2
- package/coverage/lcov-report/src/events/listeners/index.html +26 -11
- package/coverage/lcov-report/src/events/listeners/order-cancelled.ts.html +157 -0
- package/coverage/lcov-report/src/events/listeners/order-created.ts.html +19 -13
- package/coverage/lcov-report/src/events/publishers/created.ts.html +2 -2
- package/coverage/lcov-report/src/events/publishers/index.html +1 -1
- package/coverage/lcov-report/src/events/publishers/updated.ts.html +5 -5
- 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 +12 -15
- package/coverage/lcov-report/src/routes/create.ts.html +7 -7
- package/coverage/lcov-report/src/routes/get.ts.html +1 -1
- package/coverage/lcov-report/src/routes/index.html +7 -7
- package/coverage/lcov-report/src/routes/index.ts.html +1 -1
- package/coverage/lcov-report/src/routes/update.ts.html +9 -6
- package/coverage/lcov-report/src/test/index.html +1 -1
- package/coverage/lcov-report/src/test/utils.ts.html +2 -2
- package/coverage/lcov.info +96 -62
- package/package.json +3 -3
- package/src/events/listeners/__test__/order-cancelled.test.ts +50 -0
- package/src/events/listeners/__test__/order-created.test.ts +7 -1
- package/src/events/listeners/order-cancelled.ts +24 -0
- package/src/events/listeners/order-created.ts +2 -0
- package/src/index.ts +5 -0
- package/src/models/ticket.ts +0 -1
- package/src/routes/__test__/update.test.ts +15 -0
- package/src/routes/update.ts +1 -0
| @@ -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 Fri Jul 15 2022  | 
| 104 | 
            +
                            at Fri Jul 15 2022 21:51:54 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 Fri Jul 15 2022  | 
| 104 | 
            +
                            at Fri Jul 15 2022 21:51:54 GMT-0500 (Central Daylight Time)
         | 
| 105 105 | 
             
                        </div>
         | 
| 106 106 | 
             
                    <script src="../../prettify.js"></script>
         | 
| 107 107 | 
             
                    <script>
         | 
| @@ -112,9 +112,8 @@ | |
| 112 112 | 
             
            <a name='L47'></a><a href='#L47'>47</a>
         | 
| 113 113 | 
             
            <a name='L48'></a><a href='#L48'>48</a>
         | 
| 114 114 | 
             
            <a name='L49'></a><a href='#L49'>49</a>
         | 
| 115 | 
            -
            <a name='L50'></a><a href='#L50'>50</a>
         | 
| 116 | 
            -
            < | 
| 117 | 
            -
            <span class="cline-any cline-yes">5x</span>
         | 
| 115 | 
            +
            <a name='L50'></a><a href='#L50'>50</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">6x</span>
         | 
| 116 | 
            +
            <span class="cline-any cline-yes">6x</span>
         | 
| 118 117 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 119 118 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 120 119 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| @@ -124,8 +123,8 @@ | |
| 124 123 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 125 124 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 126 125 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 126 | 
            +
            <span class="cline-any cline-yes">6x</span>
         | 
| 127 127 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 128 | 
            -
            <span class="cline-any cline-yes">5x</span>
         | 
| 129 128 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 130 129 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 131 130 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| @@ -146,21 +145,20 @@ | |
| 146 145 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 147 146 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 148 147 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 148 | 
            +
            <span class="cline-any cline-yes">16x</span>
         | 
| 149 | 
            +
            <span class="cline-any cline-yes">16x</span>
         | 
| 150 | 
            +
            <span class="cline-any cline-yes">16x</span>
         | 
| 149 151 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 150 | 
            -
            <span class="cline-any cline-yes">15x</span>
         | 
| 151 | 
            -
            <span class="cline-any cline-yes">15x</span>
         | 
| 152 | 
            -
            <span class="cline-any cline-yes">15x</span>
         | 
| 153 152 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 154 153 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 155 154 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 155 | 
            +
            <span class="cline-any cline-yes">6x</span>
         | 
| 156 | 
            +
            <span class="cline-any cline-yes">6x</span>
         | 
| 156 157 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 157 | 
            -
            <span class="cline-any cline-yes"> | 
| 158 | 
            -
            <span class="cline-any cline-yes"> | 
| 158 | 
            +
            <span class="cline-any cline-yes">6x</span>
         | 
| 159 | 
            +
            <span class="cline-any cline-yes">6x</span>
         | 
| 159 160 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 160 | 
            -
            <span class="cline-any cline-yes"> | 
| 161 | 
            -
            <span class="cline-any cline-yes">5x</span>
         | 
| 162 | 
            -
            <span class="cline-any cline-neutral"> </span>
         | 
| 163 | 
            -
            <span class="cline-any cline-yes">26x</span>
         | 
| 161 | 
            +
            <span class="cline-any cline-yes">38x</span>
         | 
| 164 162 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 165 163 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 166 164 | 
             
            <span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import mongoose, { ObjectId } from 'mongoose'
         | 
| @@ -170,7 +168,6 @@ interface TicketAttributes { | |
| 170 168 | 
             
              title: string;
         | 
| 171 169 | 
             
              price: number;
         | 
| 172 170 | 
             
              owner: string;
         | 
| 173 | 
            -
              orderId?: string;
         | 
| 174 171 | 
             
              createdAt?: Date;
         | 
| 175 172 | 
             
              updatedAt?: Date;
         | 
| 176 173 | 
             
            }
         | 
| @@ -220,7 +217,7 @@ export default class Ticket extends TicketModel { | |
| 220 217 | 
             
                        <div class='footer quiet pad2 space-top1 center small'>
         | 
| 221 218 | 
             
                            Code coverage generated by
         | 
| 222 219 | 
             
                            <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
         | 
| 223 | 
            -
                            at Fri Jul 15 2022  | 
| 220 | 
            +
                            at Fri Jul 15 2022 21:51:54 GMT-0500 (Central Daylight Time)
         | 
| 224 221 | 
             
                        </div>
         | 
| 225 222 | 
             
                    <script src="../../prettify.js"></script>
         | 
| 226 223 | 
             
                    <script>
         | 
| @@ -102,12 +102,12 @@ | |
| 102 102 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 103 103 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 104 104 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 105 | 
            -
            <span class="cline-any cline-yes"> | 
| 106 | 
            -
            <span class="cline-any cline-yes"> | 
| 107 | 
            -
            <span class="cline-any cline-yes"> | 
| 108 | 
            -
            <span class="cline-any cline-yes"> | 
| 109 | 
            -
            <span class="cline-any cline-yes"> | 
| 110 | 
            -
            <span class="cline-any cline-yes"> | 
| 105 | 
            +
            <span class="cline-any cline-yes">11x</span>
         | 
| 106 | 
            +
            <span class="cline-any cline-yes">11x</span>
         | 
| 107 | 
            +
            <span class="cline-any cline-yes">11x</span>
         | 
| 108 | 
            +
            <span class="cline-any cline-yes">11x</span>
         | 
| 109 | 
            +
            <span class="cline-any cline-yes">11x</span>
         | 
| 110 | 
            +
            <span class="cline-any cline-yes">11x</span>
         | 
| 111 111 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 112 112 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 113 113 | 
             
            <span class="cline-any cline-yes">3x</span>
         | 
| @@ -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 Fri Jul 15 2022  | 
| 145 | 
            +
                            at Fri Jul 15 2022 21:51:54 GMT-0500 (Central Daylight Time)
         | 
| 146 146 | 
             
                        </div>
         | 
| 147 147 | 
             
                    <script src="../../prettify.js"></script>
         | 
| 148 148 | 
             
                    <script>
         | 
| @@ -133,7 +133,7 @@ export default router | |
| 133 133 | 
             
                        <div class='footer quiet pad2 space-top1 center small'>
         | 
| 134 134 | 
             
                            Code coverage generated by
         | 
| 135 135 | 
             
                            <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
         | 
| 136 | 
            -
                            at Fri Jul 15 2022  | 
| 136 | 
            +
                            at Fri Jul 15 2022 21:51:54 GMT-0500 (Central Daylight Time)
         | 
| 137 137 | 
             
                        </div>
         | 
| 138 138 | 
             
                    <script src="../../prettify.js"></script>
         | 
| 139 139 | 
             
                    <script>
         | 
| @@ -25,14 +25,14 @@ | |
| 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'>64/64</span>
         | 
| 29 29 | 
             
                        </div>
         | 
| 30 30 |  | 
| 31 31 |  | 
| 32 32 | 
             
                        <div class='fl pad1y space-right2'>
         | 
| 33 33 | 
             
                            <span class="strong">100% </span>
         | 
| 34 34 | 
             
                            <span class="quiet">Branches</span>
         | 
| 35 | 
            -
                            <span class='fraction'> | 
| 35 | 
            +
                            <span class='fraction'>6/6</span>
         | 
| 36 36 | 
             
                        </div>
         | 
| 37 37 |  | 
| 38 38 |  | 
| @@ -46,7 +46,7 @@ | |
| 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'>54/54</span>
         | 
| 50 50 | 
             
                        </div>
         | 
| 51 51 |  | 
| 52 52 |  | 
| @@ -129,13 +129,13 @@ | |
| 129 129 | 
             
            	<div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
         | 
| 130 130 | 
             
            	</td>
         | 
| 131 131 | 
             
            	<td data-value="100" class="pct high">100%</td>
         | 
| 132 | 
            -
            	<td data-value=" | 
| 132 | 
            +
            	<td data-value="26" class="abs high">26/26</td>
         | 
| 133 133 | 
             
            	<td data-value="100" class="pct high">100%</td>
         | 
| 134 | 
            -
            	<td data-value=" | 
| 134 | 
            +
            	<td data-value="4" class="abs high">4/4</td>
         | 
| 135 135 | 
             
            	<td data-value="100" class="pct high">100%</td>
         | 
| 136 136 | 
             
            	<td data-value="2" class="abs high">2/2</td>
         | 
| 137 137 | 
             
            	<td data-value="100" class="pct high">100%</td>
         | 
| 138 | 
            -
            	<td data-value=" | 
| 138 | 
            +
            	<td data-value="21" class="abs high">21/21</td>
         | 
| 139 139 | 
             
            	</tr>
         | 
| 140 140 |  | 
| 141 141 | 
             
            </tbody>
         | 
| @@ -146,7 +146,7 @@ | |
| 146 146 | 
             
                        <div class='footer quiet pad2 space-top1 center small'>
         | 
| 147 147 | 
             
                            Code coverage generated by
         | 
| 148 148 | 
             
                            <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
         | 
| 149 | 
            -
                            at Fri Jul 15 2022  | 
| 149 | 
            +
                            at Fri Jul 15 2022 21:51:54 GMT-0500 (Central Daylight Time)
         | 
| 150 150 | 
             
                        </div>
         | 
| 151 151 | 
             
                    <script src="../../prettify.js"></script>
         | 
| 152 152 | 
             
                    <script>
         | 
| @@ -85,7 +85,7 @@ export default [getTicket, createTicket, updateTicket] | |
| 85 85 | 
             
                        <div class='footer quiet pad2 space-top1 center small'>
         | 
| 86 86 | 
             
                            Code coverage generated by
         | 
| 87 87 | 
             
                            <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
         | 
| 88 | 
            -
                            at Fri Jul 15 2022  | 
| 88 | 
            +
                            at Fri Jul 15 2022 21:51:54 GMT-0500 (Central Daylight Time)
         | 
| 89 89 | 
             
                        </div>
         | 
| 90 90 | 
             
                    <script src="../../prettify.js"></script>
         | 
| 91 91 | 
             
                    <script>
         | 
| @@ -25,14 +25,14 @@ | |
| 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'>26/26</span>
         | 
| 29 29 | 
             
                        </div>
         | 
| 30 30 |  | 
| 31 31 |  | 
| 32 32 | 
             
                        <div class='fl pad1y space-right2'>
         | 
| 33 33 | 
             
                            <span class="strong">100% </span>
         | 
| 34 34 | 
             
                            <span class="quiet">Branches</span>
         | 
| 35 | 
            -
                            <span class='fraction'> | 
| 35 | 
            +
                            <span class='fraction'>4/4</span>
         | 
| 36 36 | 
             
                        </div>
         | 
| 37 37 |  | 
| 38 38 |  | 
| @@ -46,7 +46,7 @@ | |
| 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'>21/21</span>
         | 
| 50 50 | 
             
                        </div>
         | 
| 51 51 |  | 
| 52 52 |  | 
| @@ -91,7 +91,8 @@ | |
| 91 91 | 
             
            <a name='L26'></a><a href='#L26'>26</a>
         | 
| 92 92 | 
             
            <a name='L27'></a><a href='#L27'>27</a>
         | 
| 93 93 | 
             
            <a name='L28'></a><a href='#L28'>28</a>
         | 
| 94 | 
            -
            <a name='L29'></a><a href='#L29'>29</a | 
| 94 | 
            +
            <a name='L29'></a><a href='#L29'>29</a>
         | 
| 95 | 
            +
            <a name='L30'></a><a href='#L30'>30</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">3x</span>
         | 
| 95 96 | 
             
            <span class="cline-any cline-yes">3x</span>
         | 
| 96 97 | 
             
            <span class="cline-any cline-yes">3x</span>
         | 
| 97 98 | 
             
            <span class="cline-any cline-yes">3x</span>
         | 
| @@ -106,10 +107,11 @@ | |
| 106 107 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 107 108 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 108 109 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 110 | 
            +
            <span class="cline-any cline-yes">5x</span>
         | 
| 111 | 
            +
            <span class="cline-any cline-yes">5x</span>
         | 
| 109 112 | 
             
            <span class="cline-any cline-yes">4x</span>
         | 
| 110 113 | 
             
            <span class="cline-any cline-yes">4x</span>
         | 
| 111 114 | 
             
            <span class="cline-any cline-yes">3x</span>
         | 
| 112 | 
            -
            <span class="cline-any cline-yes">3x</span>
         | 
| 113 115 | 
             
            <span class="cline-any cline-yes">2x</span>
         | 
| 114 116 | 
             
            <span class="cline-any cline-yes">1x</span>
         | 
| 115 117 | 
             
            <span class="cline-any cline-yes">1x</span>
         | 
| @@ -139,6 +141,7 @@ router.put('/api/tickets/:id', requireAuth, validateInput, validateRequest, asyn | |
| 139 141 | 
             
              const ticket = await Ticket.findById(req.params.id)
         | 
| 140 142 | 
             
              if (!ticket) throw new NotFoundError()
         | 
| 141 143 | 
             
              if (ticket.owner.toHexString() !== req.currentUser!.id) throw new UnauthorizedError()
         | 
| 144 | 
            +
              if (ticket.orderId) throw new BadRequestError('Ticket is reserved')
         | 
| 142 145 | 
             
              const { title, price } = req.body
         | 
| 143 146 | 
             
              ticket.set({ title, price })
         | 
| 144 147 | 
             
              await ticket.save()
         | 
| @@ -154,7 +157,7 @@ export default router | |
| 154 157 | 
             
                        <div class='footer quiet pad2 space-top1 center small'>
         | 
| 155 158 | 
             
                            Code coverage generated by
         | 
| 156 159 | 
             
                            <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
         | 
| 157 | 
            -
                            at Fri Jul 15 2022  | 
| 160 | 
            +
                            at Fri Jul 15 2022 21:51:54 GMT-0500 (Central Daylight Time)
         | 
| 158 161 | 
             
                        </div>
         | 
| 159 162 | 
             
                    <script src="../../prettify.js"></script>
         | 
| 160 163 | 
             
                    <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 Fri Jul 15 2022  | 
| 104 | 
            +
                            at Fri Jul 15 2022 21:51:54 GMT-0500 (Central Daylight Time)
         | 
| 105 105 | 
             
                        </div>
         | 
| 106 106 | 
             
                    <script src="../../prettify.js"></script>
         | 
| 107 107 | 
             
                    <script>
         | 
| @@ -75,7 +75,7 @@ | |
| 75 75 | 
             
            <a name='L10'></a><a href='#L10'>10</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">3x</span>
         | 
| 76 76 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 77 77 | 
             
            <span class="cline-any cline-yes">3x</span>
         | 
| 78 | 
            -
            <span class="cline-any cline-yes"> | 
| 78 | 
            +
            <span class="cline-any cline-yes">8x</span>
         | 
| 79 79 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 80 80 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| 81 81 | 
             
            <span class="cline-any cline-neutral"> </span>
         | 
| @@ -97,7 +97,7 @@ export const createTicket = (app: Express.Application, cookie?: string, title = | |
| 97 97 | 
             
                        <div class='footer quiet pad2 space-top1 center small'>
         | 
| 98 98 | 
             
                            Code coverage generated by
         | 
| 99 99 | 
             
                            <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
         | 
| 100 | 
            -
                            at Fri Jul 15 2022  | 
| 100 | 
            +
                            at Fri Jul 15 2022 21:51:54 GMT-0500 (Central Daylight Time)
         | 
| 101 101 | 
             
                        </div>
         | 
| 102 102 | 
             
                    <script src="../../prettify.js"></script>
         | 
| 103 103 | 
             
                    <script>
         | 
    
        package/coverage/lcov.info
    CHANGED
    
    | @@ -31,34 +31,66 @@ TN: | |
| 31 31 | 
             
            SF:src/events/listeners/_queue-group-name.ts
         | 
| 32 32 | 
             
            FNF:0
         | 
| 33 33 | 
             
            FNH:0
         | 
| 34 | 
            -
            DA:1, | 
| 34 | 
            +
            DA:1,2
         | 
| 35 35 | 
             
            LF:1
         | 
| 36 36 | 
             
            LH:1
         | 
| 37 37 | 
             
            BRF:0
         | 
| 38 38 | 
             
            BRH:0
         | 
| 39 39 | 
             
            end_of_record
         | 
| 40 40 | 
             
            TN:
         | 
| 41 | 
            +
            SF:src/events/listeners/order-cancelled.ts
         | 
| 42 | 
            +
            FN:8,(anonymous_8)
         | 
| 43 | 
            +
            FN:12,(anonymous_9)
         | 
| 44 | 
            +
            FNF:2
         | 
| 45 | 
            +
            FNH:2
         | 
| 46 | 
            +
            FNDA:3,(anonymous_8)
         | 
| 47 | 
            +
            FNDA:3,(anonymous_9)
         | 
| 48 | 
            +
            DA:1,1
         | 
| 49 | 
            +
            DA:3,1
         | 
| 50 | 
            +
            DA:4,1
         | 
| 51 | 
            +
            DA:6,1
         | 
| 52 | 
            +
            DA:8,1
         | 
| 53 | 
            +
            DA:9,3
         | 
| 54 | 
            +
            DA:10,3
         | 
| 55 | 
            +
            DA:13,3
         | 
| 56 | 
            +
            DA:14,3
         | 
| 57 | 
            +
            DA:15,3
         | 
| 58 | 
            +
            DA:16,3
         | 
| 59 | 
            +
            DA:18,3
         | 
| 60 | 
            +
            DA:19,3
         | 
| 61 | 
            +
            DA:20,3
         | 
| 62 | 
            +
            DA:24,1
         | 
| 63 | 
            +
            LF:15
         | 
| 64 | 
            +
            LH:15
         | 
| 65 | 
            +
            BRDA:14,0,0,0
         | 
| 66 | 
            +
            BRF:1
         | 
| 67 | 
            +
            BRH:0
         | 
| 68 | 
            +
            end_of_record
         | 
| 69 | 
            +
            TN:
         | 
| 41 70 | 
             
            SF:src/events/listeners/order-created.ts
         | 
| 42 71 | 
             
            FN:8,(anonymous_8)
         | 
| 43 72 | 
             
            FN:12,(anonymous_9)
         | 
| 44 73 | 
             
            FNF:2
         | 
| 45 74 | 
             
            FNH:2
         | 
| 46 | 
            -
            FNDA: | 
| 47 | 
            -
            FNDA: | 
| 75 | 
            +
            FNDA:3,(anonymous_8)
         | 
| 76 | 
            +
            FNDA:3,(anonymous_9)
         | 
| 48 77 | 
             
            DA:1,1
         | 
| 49 78 | 
             
            DA:3,1
         | 
| 79 | 
            +
            DA:4,1
         | 
| 50 80 | 
             
            DA:6,1
         | 
| 51 81 | 
             
            DA:8,1
         | 
| 52 | 
            -
            DA:9, | 
| 53 | 
            -
            DA:10, | 
| 54 | 
            -
            DA:13, | 
| 55 | 
            -
            DA:14, | 
| 56 | 
            -
            DA:15, | 
| 57 | 
            -
            DA:16, | 
| 58 | 
            -
            DA:18, | 
| 59 | 
            -
            DA: | 
| 60 | 
            -
             | 
| 61 | 
            -
             | 
| 82 | 
            +
            DA:9,3
         | 
| 83 | 
            +
            DA:10,3
         | 
| 84 | 
            +
            DA:13,3
         | 
| 85 | 
            +
            DA:14,3
         | 
| 86 | 
            +
            DA:15,3
         | 
| 87 | 
            +
            DA:16,3
         | 
| 88 | 
            +
            DA:18,3
         | 
| 89 | 
            +
            DA:19,3
         | 
| 90 | 
            +
            DA:20,3
         | 
| 91 | 
            +
            DA:24,1
         | 
| 92 | 
            +
            LF:15
         | 
| 93 | 
            +
            LH:15
         | 
| 62 94 | 
             
            BRDA:14,0,0,0
         | 
| 63 95 | 
             
            BRF:1
         | 
| 64 96 | 
             
            BRH:0
         | 
| @@ -68,10 +100,10 @@ SF:src/events/publishers/created.ts | |
| 68 100 | 
             
            FN:3,(anonymous_0)
         | 
| 69 101 | 
             
            FNF:1
         | 
| 70 102 | 
             
            FNH:1
         | 
| 71 | 
            -
            FNDA: | 
| 103 | 
            +
            FNDA:11,(anonymous_0)
         | 
| 72 104 | 
             
            DA:1,3
         | 
| 73 105 | 
             
            DA:3,3
         | 
| 74 | 
            -
            DA:4, | 
| 106 | 
            +
            DA:4,11
         | 
| 75 107 | 
             
            DA:7,3
         | 
| 76 108 | 
             
            LF:4
         | 
| 77 109 | 
             
            LH:4
         | 
| @@ -83,11 +115,11 @@ SF:src/events/publishers/updated.ts | |
| 83 115 | 
             
            FN:3,(anonymous_0)
         | 
| 84 116 | 
             
            FNF:1
         | 
| 85 117 | 
             
            FNH:1
         | 
| 86 | 
            -
            FNDA: | 
| 87 | 
            -
            DA:1, | 
| 88 | 
            -
            DA:3, | 
| 89 | 
            -
            DA:4, | 
| 90 | 
            -
            DA:7, | 
| 118 | 
            +
            FNDA:7,(anonymous_0)
         | 
| 119 | 
            +
            DA:1,5
         | 
| 120 | 
            +
            DA:3,5
         | 
| 121 | 
            +
            DA:4,7
         | 
| 122 | 
            +
            DA:7,5
         | 
| 91 123 | 
             
            LF:4
         | 
| 92 124 | 
             
            LH:4
         | 
| 93 125 | 
             
            BRF:0
         | 
| @@ -95,23 +127,23 @@ BRH:0 | |
| 95 127 | 
             
            end_of_record
         | 
| 96 128 | 
             
            TN:
         | 
| 97 129 | 
             
            SF:src/models/ticket.ts
         | 
| 98 | 
            -
            FN: | 
| 99 | 
            -
            FN: | 
| 130 | 
            +
            FN:33,(anonymous_1)
         | 
| 131 | 
            +
            FN:46,(anonymous_2)
         | 
| 100 132 | 
             
            FNF:2
         | 
| 101 133 | 
             
            FNH:2
         | 
| 102 | 
            -
            FNDA: | 
| 103 | 
            -
            FNDA: | 
| 104 | 
            -
            DA:1, | 
| 105 | 
            -
            DA:2, | 
| 106 | 
            -
            DA: | 
| 107 | 
            -
            DA: | 
| 108 | 
            -
            DA: | 
| 109 | 
            -
            DA: | 
| 110 | 
            -
            DA: | 
| 111 | 
            -
            DA: | 
| 112 | 
            -
            DA: | 
| 113 | 
            -
            DA: | 
| 114 | 
            -
            DA: | 
| 134 | 
            +
            FNDA:16,(anonymous_1)
         | 
| 135 | 
            +
            FNDA:38,(anonymous_2)
         | 
| 136 | 
            +
            DA:1,6
         | 
| 137 | 
            +
            DA:2,6
         | 
| 138 | 
            +
            DA:12,6
         | 
| 139 | 
            +
            DA:34,16
         | 
| 140 | 
            +
            DA:35,16
         | 
| 141 | 
            +
            DA:36,16
         | 
| 142 | 
            +
            DA:41,6
         | 
| 143 | 
            +
            DA:42,6
         | 
| 144 | 
            +
            DA:44,6
         | 
| 145 | 
            +
            DA:45,6
         | 
| 146 | 
            +
            DA:47,38
         | 
| 115 147 | 
             
            LF:11
         | 
| 116 148 | 
             
            LH:11
         | 
| 117 149 | 
             
            BRF:0
         | 
| @@ -123,8 +155,8 @@ FN:16,(anonymous_8) | |
| 123 155 | 
             
            FN:16,(anonymous_9)
         | 
| 124 156 | 
             
            FNF:2
         | 
| 125 157 | 
             
            FNH:2
         | 
| 126 | 
            -
            FNDA: | 
| 127 | 
            -
            FNDA: | 
| 158 | 
            +
            FNDA:11,(anonymous_8)
         | 
| 159 | 
            +
            FNDA:11,(anonymous_9)
         | 
| 128 160 | 
             
            DA:1,3
         | 
| 129 161 | 
             
            DA:2,3
         | 
| 130 162 | 
             
            DA:3,3
         | 
| @@ -133,12 +165,12 @@ DA:6,3 | |
| 133 165 | 
             
            DA:7,3
         | 
| 134 166 | 
             
            DA:9,3
         | 
| 135 167 | 
             
            DA:11,3
         | 
| 136 | 
            -
            DA:16, | 
| 137 | 
            -
            DA:17, | 
| 138 | 
            -
            DA:18, | 
| 139 | 
            -
            DA:19, | 
| 140 | 
            -
            DA:20, | 
| 141 | 
            -
            DA:21, | 
| 168 | 
            +
            DA:16,11
         | 
| 169 | 
            +
            DA:17,11
         | 
| 170 | 
            +
            DA:18,11
         | 
| 171 | 
            +
            DA:19,11
         | 
| 172 | 
            +
            DA:20,11
         | 
| 173 | 
            +
            DA:21,11
         | 
| 142 174 | 
             
            DA:24,3
         | 
| 143 175 | 
             
            LF:15
         | 
| 144 176 | 
             
            LH:15
         | 
| @@ -197,8 +229,8 @@ FN:16,(anonymous_8) | |
| 197 229 | 
             
            FN:16,(anonymous_9)
         | 
| 198 230 | 
             
            FNF:2
         | 
| 199 231 | 
             
            FNH:2
         | 
| 200 | 
            -
            FNDA: | 
| 201 | 
            -
            FNDA: | 
| 232 | 
            +
            FNDA:5,(anonymous_8)
         | 
| 233 | 
            +
            FNDA:5,(anonymous_9)
         | 
| 202 234 | 
             
            DA:1,3
         | 
| 203 235 | 
             
            DA:2,3
         | 
| 204 236 | 
             
            DA:3,3
         | 
| @@ -208,40 +240,42 @@ DA:6,3 | |
| 208 240 | 
             
            DA:7,3
         | 
| 209 241 | 
             
            DA:9,3
         | 
| 210 242 | 
             
            DA:11,3
         | 
| 211 | 
            -
            DA:16, | 
| 212 | 
            -
            DA:17, | 
| 213 | 
            -
            DA:18, | 
| 214 | 
            -
            DA:19, | 
| 215 | 
            -
            DA:20, | 
| 216 | 
            -
            DA:21, | 
| 243 | 
            +
            DA:16,5
         | 
| 244 | 
            +
            DA:17,5
         | 
| 245 | 
            +
            DA:18,4
         | 
| 246 | 
            +
            DA:19,4
         | 
| 247 | 
            +
            DA:20,3
         | 
| 248 | 
            +
            DA:21,2
         | 
| 217 249 | 
             
            DA:22,1
         | 
| 218 250 | 
             
            DA:23,1
         | 
| 219 251 | 
             
            DA:24,1
         | 
| 220 252 | 
             
            DA:25,1
         | 
| 221 | 
            -
            DA: | 
| 222 | 
            -
             | 
| 223 | 
            -
             | 
| 253 | 
            +
            DA:26,1
         | 
| 254 | 
            +
            DA:29,3
         | 
| 255 | 
            +
            LF:21
         | 
| 256 | 
            +
            LH:21
         | 
| 224 257 | 
             
            BRDA:17,0,0,1
         | 
| 225 258 | 
             
            BRDA:19,1,0,1
         | 
| 226 259 | 
             
            BRDA:20,2,0,1
         | 
| 227 | 
            -
             | 
| 228 | 
            -
             | 
| 260 | 
            +
            BRDA:21,3,0,1
         | 
| 261 | 
            +
            BRF:4
         | 
| 262 | 
            +
            BRH:4
         | 
| 229 263 | 
             
            end_of_record
         | 
| 230 264 | 
             
            TN:
         | 
| 231 265 | 
             
            SF:src/test/utils.ts
         | 
| 232 266 | 
             
            FN:3,(anonymous_1)
         | 
| 233 267 | 
             
            FNF:1
         | 
| 234 268 | 
             
            FNH:1
         | 
| 235 | 
            -
            FNDA: | 
| 269 | 
            +
            FNDA:8,(anonymous_1)
         | 
| 236 270 | 
             
            DA:1,3
         | 
| 237 271 | 
             
            DA:3,3
         | 
| 238 | 
            -
            DA:4, | 
| 272 | 
            +
            DA:4,8
         | 
| 239 273 | 
             
            LF:3
         | 
| 240 274 | 
             
            LH:3
         | 
| 241 | 
            -
            BRDA:3,0,0, | 
| 242 | 
            -
            BRDA:3,1,0, | 
| 243 | 
            -
            BRDA:3,2,0, | 
| 244 | 
            -
            BRDA:6,3,0, | 
| 275 | 
            +
            BRDA:3,0,0,7
         | 
| 276 | 
            +
            BRDA:3,1,0,7
         | 
| 277 | 
            +
            BRDA:3,2,0,8
         | 
| 278 | 
            +
            BRDA:6,3,0,8
         | 
| 245 279 | 
             
            BRDA:6,3,1,0
         | 
| 246 280 | 
             
            BRF:5
         | 
| 247 281 | 
             
            BRH:4
         | 
    
        package/package.json
    CHANGED
    
    | @@ -1,6 +1,6 @@ | |
| 1 1 | 
             
            {
         | 
| 2 2 | 
             
              "name": "@next-k8s/tickets",
         | 
| 3 | 
            -
              "version": "1.0. | 
| 3 | 
            +
              "version": "1.0.28",
         | 
| 4 4 | 
             
              "main": "index.js",
         | 
| 5 5 | 
             
              "license": "MIT",
         | 
| 6 6 | 
             
              "scripts": {
         | 
| @@ -34,7 +34,7 @@ | |
| 34 34 | 
             
                ]
         | 
| 35 35 | 
             
              },
         | 
| 36 36 | 
             
              "dependencies": {
         | 
| 37 | 
            -
                "@next-k8s/common": "^0.1. | 
| 37 | 
            +
                "@next-k8s/common": "^0.1.36",
         | 
| 38 38 | 
             
                "@types/cookie-session": "^2.0.44",
         | 
| 39 39 | 
             
                "@types/express": "^4.17.13",
         | 
| 40 40 | 
             
                "@types/jsonwebtoken": "^8.5.8",
         | 
| @@ -62,5 +62,5 @@ | |
| 62 62 | 
             
                "supertest": "^6.2.3",
         | 
| 63 63 | 
             
                "ts-jest": "^28.0.4"
         | 
| 64 64 | 
             
              },
         | 
| 65 | 
            -
              "gitHead": " | 
| 65 | 
            +
              "gitHead": "b2b69ab41a506a1496d8fa6aa5c2e150504bdde2"
         | 
| 66 66 | 
             
            }
         | 
| @@ -0,0 +1,50 @@ | |
| 1 | 
            +
            import mongoose from 'mongoose'
         | 
| 2 | 
            +
            import { Message } from 'node-nats-streaming'
         | 
| 3 | 
            +
            import { OrderCancelledEvent, OrderStatus } from '@next-k8s/common'
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            import Ticket from '../../../models/ticket'
         | 
| 6 | 
            +
            import natsClient from '../../../nats-client'
         | 
| 7 | 
            +
            import OrderCancelledListener from '../order-cancelled'
         | 
| 8 | 
            +
             | 
| 9 | 
            +
            const setup = async () => {
         | 
| 10 | 
            +
              const owner = new mongoose.Types.ObjectId().toHexString()
         | 
| 11 | 
            +
              const orderId = new mongoose.Types.ObjectId().toHexString()
         | 
| 12 | 
            +
              const listener = new OrderCancelledListener(natsClient.client)
         | 
| 13 | 
            +
              const ticket = new Ticket({ title: 'Test Ticket', price: 21000, owner })
         | 
| 14 | 
            +
             | 
| 15 | 
            +
              ticket.set({ orderId })
         | 
| 16 | 
            +
              await ticket.save()
         | 
| 17 | 
            +
             | 
| 18 | 
            +
              const data: OrderCancelledEvent['data'] = {
         | 
| 19 | 
            +
                id: new mongoose.Types.ObjectId().toHexString(),
         | 
| 20 | 
            +
                version: 0,
         | 
| 21 | 
            +
                ticket: {
         | 
| 22 | 
            +
                  id: ticket.id
         | 
| 23 | 
            +
                }
         | 
| 24 | 
            +
              }
         | 
| 25 | 
            +
             | 
| 26 | 
            +
              // @ts-ignore
         | 
| 27 | 
            +
              const message: Message = { ack: jest.fn() }
         | 
| 28 | 
            +
              return { data, listener, message, orderId, ticket }
         | 
| 29 | 
            +
            }
         | 
| 30 | 
            +
             | 
| 31 | 
            +
            describe('[Order Cancelled] Listener', () => {
         | 
| 32 | 
            +
              it('should clear the orderId of the ticket', async () => {
         | 
| 33 | 
            +
                const { data, listener, message, ticket } = await setup()
         | 
| 34 | 
            +
                await listener.onMessage(data, message)
         | 
| 35 | 
            +
                const updatedTicket = await Ticket.findById(ticket.id)
         | 
| 36 | 
            +
                expect(updatedTicket.orderId).not.toBeDefined()
         | 
| 37 | 
            +
              })
         | 
| 38 | 
            +
             | 
| 39 | 
            +
              it('should ack the message', async () =>{
         | 
| 40 | 
            +
                const { data, listener, message } = await setup()
         | 
| 41 | 
            +
                await listener.onMessage(data, message)
         | 
| 42 | 
            +
                expect(message.ack).toHaveBeenCalled()
         | 
| 43 | 
            +
              })
         | 
| 44 | 
            +
             | 
| 45 | 
            +
              it('should publish an order:updated event', async () => {
         | 
| 46 | 
            +
                const { data, listener, message } = await setup()
         | 
| 47 | 
            +
                await listener.onMessage(data, message)
         | 
| 48 | 
            +
                expect(natsClient.client.publish).toHaveBeenCalled()
         | 
| 49 | 
            +
              })
         | 
| 50 | 
            +
            })
         | 
| @@ -29,7 +29,7 @@ const setup = async () => { | |
| 29 29 | 
             
            }
         | 
| 30 30 |  | 
| 31 31 | 
             
            describe('[Order Created] Listener', () => {
         | 
| 32 | 
            -
              it('should set the ticket  | 
| 32 | 
            +
              it('should set the ticket orderId', async () => {
         | 
| 33 33 | 
             
                const { data, listener, message, ticket } = await setup()
         | 
| 34 34 | 
             
                await listener.onMessage(data, message)
         | 
| 35 35 | 
             
                const updatedTicket = await Ticket.findById(ticket.id)
         | 
| @@ -41,4 +41,10 @@ describe('[Order Created] Listener', () => { | |
| 41 41 | 
             
                await listener.onMessage(data, message)
         | 
| 42 42 | 
             
                expect(message.ack).toHaveBeenCalled()
         | 
| 43 43 | 
             
              })
         | 
| 44 | 
            +
             | 
| 45 | 
            +
              it('should publish a ticket:updated event', async () => {
         | 
| 46 | 
            +
                const { data, listener, message } = await setup()
         | 
| 47 | 
            +
                await listener.onMessage(data, message)
         | 
| 48 | 
            +
                expect(natsClient.client.publish).toHaveBeenCalled()
         | 
| 49 | 
            +
              })
         | 
| 44 50 | 
             
            })
         | 
| @@ -0,0 +1,24 @@ | |
| 1 | 
            +
            import { Listener, NotFoundError, OrderCancelledEvent, Subjects } from '@next-k8s/common'
         | 
| 2 | 
            +
            import { Message } from 'node-nats-streaming'
         | 
| 3 | 
            +
            import Ticket from '../../models/ticket'
         | 
| 4 | 
            +
            import TicketUpdatedPublisher from '../publishers/updated'
         | 
| 5 | 
            +
             | 
| 6 | 
            +
            import queueGroupName from './_queue-group-name'
         | 
| 7 | 
            +
             | 
| 8 | 
            +
            export class OrderCancelledListener extends Listener<OrderCancelledEvent> {
         | 
| 9 | 
            +
              readonly subject = Subjects.OrderCancelled
         | 
| 10 | 
            +
              queueGroupName = queueGroupName
         | 
| 11 | 
            +
             | 
| 12 | 
            +
              async onMessage (data: OrderCancelledEvent['data'], msg: Message) {
         | 
| 13 | 
            +
                const ticket = await Ticket.findById(data.ticket.id)
         | 
| 14 | 
            +
                if (!ticket) throw new NotFoundError('Ticket not found')
         | 
| 15 | 
            +
                ticket.set({ orderId: undefined })
         | 
| 16 | 
            +
                await ticket.save()
         | 
| 17 | 
            +
             | 
| 18 | 
            +
                const { id, version, price, title, owner, orderId } = ticket
         | 
| 19 | 
            +
                await new TicketUpdatedPublisher(this.client).publish({ id, version, price, title, owner, orderId })
         | 
| 20 | 
            +
                msg.ack()
         | 
| 21 | 
            +
              }
         | 
| 22 | 
            +
            }
         | 
| 23 | 
            +
             | 
| 24 | 
            +
            export default OrderCancelledListener
         | 
| @@ -15,6 +15,8 @@ export class OrderCreatedListener extends Listener<OrderCreatedEvent> { | |
| 15 15 | 
             
                ticket.set({ orderId: data.id })
         | 
| 16 16 | 
             
                await ticket.save()
         | 
| 17 17 |  | 
| 18 | 
            +
                const { id, version, price, title, owner, orderId } = ticket
         | 
| 19 | 
            +
                await new TicketUpdatedPublisher(this.client).publish({ id, version, price, title, owner, orderId })
         | 
| 18 20 | 
             
                msg.ack()
         | 
| 19 21 | 
             
              }
         | 
| 20 22 | 
             
            }
         |