btrz-api-client 9.5.0 → 9.7.0

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.
@@ -0,0 +1,173 @@
1
+ describe("inventory/banorte-terminals", () => {
2
+ const {
3
+ axiosMock,
4
+ expectRequest
5
+ } = require("../../test-helpers.js");
6
+ const api = require("../../../src/client.js").createApiClient({
7
+ baseURL: "http://test.com"
8
+ });
9
+
10
+ const token = "I owe you a token";
11
+ const jwtToken = "I owe you a JWT token";
12
+
13
+ afterEach(() => {
14
+ axiosMock.restore();
15
+ });
16
+
17
+ it("should retrieve a list of Banorte terminals", () => {
18
+ const query = {page: 2};
19
+
20
+ axiosMock.onGet("/banorte-terminals", {params: query}).reply(expectRequest({
21
+ statusCode: 200, token, jwtToken
22
+ }));
23
+
24
+ return api.inventory.banorteTerminals.all({
25
+ jwtToken,
26
+ token,
27
+ query
28
+ });
29
+ });
30
+
31
+ it("should retrieve an existing Banorte terminal by id", () => {
32
+ const banorteTerminalId = "1234123412341234";
33
+
34
+ axiosMock.onGet(`/banorte-terminals/${banorteTerminalId}`).reply(expectRequest({
35
+ statusCode: 200, token, jwtToken
36
+ }));
37
+
38
+ return api.inventory.banorteTerminals.get({
39
+ jwtToken,
40
+ token,
41
+ banorteTerminalId
42
+ });
43
+ });
44
+
45
+ it("should create a new Banorte terminal", async () => {
46
+ const banorteTerminal = {
47
+ name: "New Banorte Terminal",
48
+ serialNumber: "Test Serial Number"
49
+ };
50
+
51
+ axiosMock.onPost("/banorte-terminals").reply(expectRequest({
52
+ statusCode: 200, token, jwtToken, body: {banorteTerminal}
53
+ }));
54
+
55
+ return api.inventory.banorteTerminals.create({
56
+ jwtToken,
57
+ token,
58
+ banorteTerminal
59
+ });
60
+ });
61
+
62
+ it("should create a new Banorte terminal with stationId (location)", async () => {
63
+ const banorteTerminal = {
64
+ name: "Banorte Terminal at Station",
65
+ serialNumber: "SN-001",
66
+ stationId: "5f243d100617680712e78dd7"
67
+ };
68
+
69
+ axiosMock.onPost("/banorte-terminals").reply(expectRequest({
70
+ statusCode: 200, token, jwtToken, body: {banorteTerminal}
71
+ }));
72
+
73
+ return api.inventory.banorteTerminals.create({
74
+ jwtToken,
75
+ token,
76
+ banorteTerminal
77
+ });
78
+ });
79
+
80
+ it("should delete a Banorte terminal", () => {
81
+ const banorteTerminalId = "1234";
82
+
83
+ axiosMock.onDelete(`/banorte-terminals/${banorteTerminalId}`).reply(expectRequest({
84
+ statusCode: 200, token, jwtToken
85
+ }));
86
+
87
+ return api.inventory.banorteTerminals.remove({
88
+ jwtToken,
89
+ token,
90
+ banorteTerminalId
91
+ });
92
+ });
93
+
94
+ it("should update an existing Banorte terminal", async () => {
95
+ const banorteTerminal = {
96
+ _id: "terminal-id-123",
97
+ name: "Updated Banorte Terminal",
98
+ serialNumber: "Updated Serial Number"
99
+ };
100
+
101
+ const banorteTerminalFieldsToUpdate = {
102
+ name: banorteTerminal.name,
103
+ serialNumber: banorteTerminal.serialNumber,
104
+ stationId: banorteTerminal.stationId
105
+ };
106
+
107
+ axiosMock.onPut(`/banorte-terminals/${banorteTerminal._id}`).reply(expectRequest({
108
+ statusCode: 200, token, jwtToken, body: {banorteTerminal: banorteTerminalFieldsToUpdate}
109
+ }));
110
+
111
+ return api.inventory.banorteTerminals.update({
112
+ jwtToken,
113
+ token,
114
+ banorteTerminal
115
+ });
116
+ });
117
+
118
+ it("should update an existing Banorte terminal with stationId (location)", async () => {
119
+ const banorteTerminalId = "terminal-id-456";
120
+ const banorteTerminal = {
121
+ _id: banorteTerminalId,
122
+ name: "Terminal at Station",
123
+ serialNumber: "SN-789",
124
+ stationId: "5f243d100617680712e78dd7"
125
+ };
126
+
127
+ const expectedBody = {
128
+ banorteTerminal: {
129
+ name: banorteTerminal.name,
130
+ serialNumber: banorteTerminal.serialNumber,
131
+ stationId: banorteTerminal.stationId
132
+ }
133
+ };
134
+
135
+ axiosMock.onPut(`/banorte-terminals/${banorteTerminalId}`).reply(expectRequest({
136
+ statusCode: 200, token, jwtToken, body: expectedBody
137
+ }));
138
+
139
+ return api.inventory.banorteTerminals.update({
140
+ jwtToken,
141
+ token,
142
+ banorteTerminalId,
143
+ banorteTerminal
144
+ });
145
+ });
146
+
147
+ it("should update an existing Banorte terminal with empty stationId", async () => {
148
+ const banorteTerminal = {
149
+ _id: "terminal-id-999",
150
+ name: "Terminal No Location",
151
+ serialNumber: "SN-999",
152
+ stationId: ""
153
+ };
154
+
155
+ const expectedBody = {
156
+ banorteTerminal: {
157
+ name: banorteTerminal.name,
158
+ serialNumber: banorteTerminal.serialNumber,
159
+ stationId: ""
160
+ }
161
+ };
162
+
163
+ axiosMock.onPut(`/banorte-terminals/${banorteTerminal._id}`).reply(expectRequest({
164
+ statusCode: 200, token, jwtToken, body: expectedBody
165
+ }));
166
+
167
+ return api.inventory.banorteTerminals.update({
168
+ jwtToken,
169
+ token,
170
+ banorteTerminal
171
+ });
172
+ });
173
+ });