Skip to content

Commit

Permalink
feat: adapt api7 3.2.13 service api change (api7#108)
Browse files Browse the repository at this point in the history
  • Loading branch information
bzp2010 authored Jun 19, 2024
1 parent da786f7 commit ecdf2eb
Show file tree
Hide file tree
Showing 20 changed files with 438 additions and 161 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/e2e.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
api7:
runs-on: ubuntu-latest
env:
BACKEND_API7_DOWNLOAD_URL: https://run.api7.ai/api7-ee/api7-ee-v3.2.12.0.tar.gz
BACKEND_API7_DOWNLOAD_URL: https://run.api7.ai/api7-ee/api7-ee-v3.2.13.0.tar.gz
BACKEND_API7_LICENSE: ${{ secrets.BACKEND_API7_LICENSE }}
steps:
- uses: actions/checkout@v4
Expand Down
9 changes: 9 additions & 0 deletions libs/backend-api7/e2e/assets/certs/generate-ssl.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/bash

openssl genrsa -out test-ssl1.key 2048
openssl req -new -sha256 -key test-ssl1.key -out test-ssl1.csr -subj "/CN=test1"
openssl x509 -req -days 36500 -sha256 -extensions v3_ca -signkey test-ssl1.key -in test-ssl1.csr -out test-ssl1.cer

openssl genrsa -out test-ssl2.key 2048
openssl req -new -sha256 -key test-ssl2.key -out test-ssl2.csr -subj "/CN=test2"
openssl x509 -req -days 36500 -sha256 -extensions v3_ca -signkey test-ssl2.key -in test-ssl2.csr -out test-ssl2.cer
17 changes: 17 additions & 0 deletions libs/backend-api7/e2e/assets/certs/test-ssl1.cer
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
-----BEGIN CERTIFICATE-----
MIICqTCCAZECFBBt5zPTCuCxdo9rcoAZOuu8i0LRMA0GCSqGSIb3DQEBCwUAMBAx
DjAMBgNVBAMMBXRlc3QxMCAXDTI0MDYxNzEzMTM0OFoYDzIxMjQwNTI0MTMxMzQ4
WjAQMQ4wDAYDVQQDDAV0ZXN0MTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
ggEBAOw6reiIdIEgKgy7CVlv6AyJVp1dHW4RC/bvutbk/ZpvieziUetb18PeeKFj
wdw5URqQ79AfijeTfWCB3U0EAr85l8Gw2N6XttQu9V8BHyOj1RKw5JZR1tCfjmJN
FjxqENoxV3ytid69hZfQbicrTce1ascrbcEKfm4GGBiU1U5F7DW6+gcBQYOMjFlU
u0k/VbqKquL+SEE97JQAXZGsulV7c1hEpbhWaP/J3KIPbeRNmYl9j0T0e7XnJJvg
158jizG7qORIsHcIqftCk+xN106nHvWuzpNZz7H3BcnSxxERxBhyIJXeA73btRxA
MeXEJJMtyYCngx0KxcyvTy6mlyMCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAk9/O
NAvT+XMfPIy6EcFimTdC4qIDzPoWk8hVGNXi67bydkllC9PU+o/j83iPaQ9mL8Kb
5lunpYBGu0GIUHLKC//IQTI0HM37Yyef3x+L6f8uS0J5MczvfZYcp//4q7O9sxxY
egC8/kzJZGk/0TsjnAveeMcwaGC8W6dVhmeJd20xByD8qsEjHqy11j3jDCFdWysx
lK6OHEDN3EnLh6OJ7GTQegnLiPl8H9+1lNIGiSH6sPBVcyTcpPNbavKx005OLKBk
A0qUQWy6UDcp4VpUXVnO7uB8SCj4JK4nf1QENwERqD+rTOdhUnxZDtNq5qrxkXTd
TlXoU3lcYpfxD7ZrWg==
-----END CERTIFICATE-----
15 changes: 15 additions & 0 deletions libs/backend-api7/e2e/assets/certs/test-ssl1.csr
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
-----BEGIN CERTIFICATE REQUEST-----
MIICVTCCAT0CAQAwEDEOMAwGA1UEAwwFdGVzdDEwggEiMA0GCSqGSIb3DQEBAQUA
A4IBDwAwggEKAoIBAQDsOq3oiHSBICoMuwlZb+gMiVadXR1uEQv277rW5P2ab4ns
4lHrW9fD3nihY8HcOVEakO/QH4o3k31ggd1NBAK/OZfBsNjel7bULvVfAR8jo9US
sOSWUdbQn45iTRY8ahDaMVd8rYnevYWX0G4nK03HtWrHK23BCn5uBhgYlNVORew1
uvoHAUGDjIxZVLtJP1W6iqri/khBPeyUAF2RrLpVe3NYRKW4Vmj/ydyiD23kTZmJ
fY9E9Hu15ySb4NefI4sxu6jkSLB3CKn7QpPsTddOpx71rs6TWc+x9wXJ0scREcQY
ciCV3gO927UcQDHlxCSTLcmAp4MdCsXMr08uppcjAgMBAAGgADANBgkqhkiG9w0B
AQsFAAOCAQEAPHA46x+PURSIctsQuLbOv3XrzW2ua/iJtHcS73QbpHc6eU+PvAh4
p8Kv9rdxJHc6/5Q9z7S0sqAr4Bz16+/4Sio4j64Hyio0lbqzB5Eh+r4DmJhby4Gd
KzAXXAofiz7F1eJHkHBDiuHC9rjaMB8xwEPIKcY+MfszB5OgN7ko7AxFNLxCRXI6
qIUVvc/3N3JyJiBDIuCFti1Ij+CJVBxqWoGe8dDPCLXyBNpE8oAyrAYrIoenyEMk
Vhb3SHEJWxRTehpDVpMji0vgzAKWtAcSBlCBBMRyj/lrq+Iln217JMvH2cAhvkFU
7t95bBBZ884HsGaiAXq7cc0Q+/dFoM02YA==
-----END CERTIFICATE REQUEST-----
28 changes: 28 additions & 0 deletions libs/backend-api7/e2e/assets/certs/test-ssl1.key
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDsOq3oiHSBICoM
uwlZb+gMiVadXR1uEQv277rW5P2ab4ns4lHrW9fD3nihY8HcOVEakO/QH4o3k31g
gd1NBAK/OZfBsNjel7bULvVfAR8jo9USsOSWUdbQn45iTRY8ahDaMVd8rYnevYWX
0G4nK03HtWrHK23BCn5uBhgYlNVORew1uvoHAUGDjIxZVLtJP1W6iqri/khBPeyU
AF2RrLpVe3NYRKW4Vmj/ydyiD23kTZmJfY9E9Hu15ySb4NefI4sxu6jkSLB3CKn7
QpPsTddOpx71rs6TWc+x9wXJ0scREcQYciCV3gO927UcQDHlxCSTLcmAp4MdCsXM
r08uppcjAgMBAAECggEABCxao3MWQPVxuLralxKKiSNN/Q/Y/Qm6M0/zmrD98Rjd
xtfpkZOCAaswH2AQbgugUYfmrK1eiV/P4JM6v/uh8RObUjpOy6YwEJpFM01lIKZF
p987tyWMjObTkHoDKA1b7UkoS7nJZ9DjdV7sD9PMhMFTpoQdQHlLoOyt7CeI9XKB
YTX064mug7G7C6rRyyX6o3eG/uNWNRaOWS28yH05qeJOJwa2B6a/S1haeOVJ6zBu
22RfZkAIJeThX7ubHDHmbj12/gpBcFYUsI48pcKUq6C+H4pGNK6ElP+IeE6CqALc
dWQeC7Lha3GlrEjjX4Iq5jxwSEvyEWtReNs2VjVPSQKBgQDwcFYjk+M0XcSTw5BY
5VhjmSkXBjsERkyKOaLxD32PR/9OMseG98vM2eKrrigPryNbu72lvAq58BqBRuDg
9dQupdssPjhlCVNV0pNCDbbMlj7fRqAwqyZroqRk/7UyDDOcRRu5LTVoCqXep/B9
4vbQaYcj5E7GJhdE7B6rez2X2wKBgQD7hJjRQTfo7bDgAEMjLNkkUaRARO16DwWJ
Au2IspMDgz/mX0bHBFh+JrUeQticQAxNWg60qXacoGC5PpPHo+P33LdjQFhFbCPx
KlwCskUSee5IHkh+ZH67TPjA0q4aRAHTDWjxpPGUmaAikDyjCi89C9YymK3xhj2t
yZd/pUYkWQKBgQCjtPkRdEoIh6emrEsGG/HYrpnpkVZxjKPkoWWuGEv3WKAeUDjG
TsW2jsvk9MlWFHtQpD12MNhkzXRefTH0OazkrgzSzPJ86KKTFrMpEElcdxgL0fyT
5pRcSPsBwZFPqDsjtXIw3PU2B7n0Jgh6ziQatx9KctKn25uQU+x1+Y1wbQKBgBg1
dxANGviMiE3HOK8WDgB06z5UZBcvgvThF0PlDEl2RJxD52gYfvwFdcFn5bmEYKrB
VFEHTqdcuHKcF1VL7RFaaTxgYR6tffgkf56y0fspSUofwBKKUbhtfDPzE1br3NEX
pVY87hPDhapN/8ghntJdZUyRbYylwyILGU3r9ohhAoGBAKAnH7JCxYKR+r+b/U5b
DWyslMi/DSVgVrzdjl9BvQuS8DYQZXQF5kl1mf5JR8Ge0+K8w7txUd+d980ZsJsJ
sBWsPsQHyJinYT01I2tCXMR8UDzzr70qwfjskMIYDnILNZmNvHfHzeqme54L0T0R
j+wF3hsV6efjOkuRUtIuFKuG
-----END PRIVATE KEY-----
17 changes: 17 additions & 0 deletions libs/backend-api7/e2e/assets/certs/test-ssl2.cer
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
-----BEGIN CERTIFICATE-----
MIICqTCCAZECFDJYELjEoeFjh4fPrkHCmZ/gBY1pMA0GCSqGSIb3DQEBCwUAMBAx
DjAMBgNVBAMMBXRlc3QyMCAXDTI0MDYxNzEzMTM0OFoYDzIxMjQwNTI0MTMxMzQ4
WjAQMQ4wDAYDVQQDDAV0ZXN0MjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
ggEBALxCPBokhV+z3Z91kKUtBuAHZt9K15JsheDn7MaAsnDwhAcBPgBN5SjBo4BP
SuxpHfwQHsnwkgQMDNrTMOjfOEBsoNgw/MuXfFmIEDWtzIUQ+sVBc/cu8vTMQBbA
zM0lf9sDBkzAXGkyP+/8gqc1nrm47K4JprShwh5AafmrVbv8bJGe55daYWVwXY+9
zr3AWzxTK7py7fXbN0QWpfknmUU3K04PXriwyKpOEwt2zpfMfFp17GJZ+oS6PCb2
qsqNbmnj05/V/OMu8e/llIJe9i3y5FP1KIGN01MLg3xLMOcbZOAatCdqD1s8NJNV
F1g5H2AfdmCuLb27jUNFYnvbqvECAwEAATANBgkqhkiG9w0BAQsFAAOCAQEASnXr
aN5HGC7mYywTYx+4WYZmRWMk/tX5vKWxX8eTd1A9MEsSJKpRiqFBhWXUyMQzSMDC
KNEa16TwAICT60cw+d5Ybqw0KY5/D6F0zp2RQm/DzVVxWfPce9vtM20IZrp7QC7S
n1mCVILxm7XhTKAM/IVXiyOCieU3YRl+tG/cur1YgV68HIlSrsA42iOdGmabYMsU
uLoeadMjwOKoKOMUt33vimwGGhF2G2/GtQ4twHZBXN+0NB7x0BkKa/OlNL4yw3Dc
K9vYwmL4HR/1ByOKmHy9Ma5t7ufVnZ7OTc3WGItYYscZwI7piSc3yfuA6mF8HyvR
iYddK4HhuX4LZfW7Sg==
-----END CERTIFICATE-----
15 changes: 15 additions & 0 deletions libs/backend-api7/e2e/assets/certs/test-ssl2.csr
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
-----BEGIN CERTIFICATE REQUEST-----
MIICVTCCAT0CAQAwEDEOMAwGA1UEAwwFdGVzdDIwggEiMA0GCSqGSIb3DQEBAQUA
A4IBDwAwggEKAoIBAQC8QjwaJIVfs92fdZClLQbgB2bfSteSbIXg5+zGgLJw8IQH
AT4ATeUowaOAT0rsaR38EB7J8JIEDAza0zDo3zhAbKDYMPzLl3xZiBA1rcyFEPrF
QXP3LvL0zEAWwMzNJX/bAwZMwFxpMj/v/IKnNZ65uOyuCaa0ocIeQGn5q1W7/GyR
nueXWmFlcF2Pvc69wFs8Uyu6cu312zdEFqX5J5lFNytOD164sMiqThMLds6XzHxa
dexiWfqEujwm9qrKjW5p49Of1fzjLvHv5ZSCXvYt8uRT9SiBjdNTC4N8SzDnG2Tg
GrQnag9bPDSTVRdYOR9gH3Zgri29u41DRWJ726rxAgMBAAGgADANBgkqhkiG9w0B
AQsFAAOCAQEACj4//wBGpu2OX+Z52ncxrd9XmK+n3CzX/5R4NIN+4sY+Y0o7yHRd
zzWAkzC0lMygw1sT9Yx6s+0u4V8V1uVYarrXzaEMbVj8ffnmuiTIRZ+NsdZROUJq
qgP+aQHubLuNJ1ZINz8lUjp22u1eczEHzbjPu48Zu7cinYQooEHq7kP0YX6DryOV
7DgaxQr0pvCiyt4bK2W5mcy8G5QjU0Z85aFRcpQXeJS0Eyxs/Lp/hiQZbWp6QoHT
Iszpz51PPzRw5ytX93fg5GxBUr4J08MG/NM0Wt6l8efqOaTigud8iFLWn97TjeiY
HRPQggrIi9BYKAGgixUTnNyIz3sWCmyjaw==
-----END CERTIFICATE REQUEST-----
28 changes: 28 additions & 0 deletions libs/backend-api7/e2e/assets/certs/test-ssl2.key
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC8QjwaJIVfs92f
dZClLQbgB2bfSteSbIXg5+zGgLJw8IQHAT4ATeUowaOAT0rsaR38EB7J8JIEDAza
0zDo3zhAbKDYMPzLl3xZiBA1rcyFEPrFQXP3LvL0zEAWwMzNJX/bAwZMwFxpMj/v
/IKnNZ65uOyuCaa0ocIeQGn5q1W7/GyRnueXWmFlcF2Pvc69wFs8Uyu6cu312zdE
FqX5J5lFNytOD164sMiqThMLds6XzHxadexiWfqEujwm9qrKjW5p49Of1fzjLvHv
5ZSCXvYt8uRT9SiBjdNTC4N8SzDnG2TgGrQnag9bPDSTVRdYOR9gH3Zgri29u41D
RWJ726rxAgMBAAECggEAAXMedLJp9y4IEN2eOty5PCm9GGRtJeAsD7/5dMsyPz26
5orokqaxkw9wAOGbbsKdy9PGnkDPVF9Qt1v/o8DESsq2BQmA3i3RHqdg6JOUCu+c
iWmoSPOq70j7XVwoDOmzAwQSR65bh9Euk4cwQmAJVDN2Wci9PeWDpylRJ5kIKfsT
jS86TVRB/bkQAndH95ZrpWeJbROzjS89bOIaY5HXZeAZdLEkNaIInDGfKVx/Sr5N
loSCQtuyV7PFygJHHxouuRyx3YUCi2ic0tw3uCTkML35cYPuEnC7f9nEoereu+oJ
dTuwwQFr5PwBBdxg9EWG9R3xkEmRjSOOPJfCDF+gIQKBgQD+p70ENkrDHlIX5bOB
V8L8KdMcCpyAM8kaHOGDVbmnfE4HHdvM//+ROGlImlelYZY0DirCY6ZFg8rzYsJ7
ARfaTZO6MBxLT5G1kjMFOZ7UqFtv2t3kTB6GCbLnuI9HV54yZsyQcpVkAtHPZrAT
R6mvHgbuPw+jcoDAD7niVQCIDQKBgQC9QLycauwdx8Rz5T4pcvtkkmhORsTc6Dix
43kj0aSTk7vTo44U4SZw0dGA5aCwh5R3OfuitQAzyWpM73ThpPN4D8HoSsIdlLfV
fUvMT4reEocg3SvEMKFh9SxmffvV4vdCZnYNCJwTTErw6Pl8IDXf3jb16/OBJHRF
Lcxxix8xdQKBgQCyndTmb25hDZNnT6ZowrXxSSTaNlcvVSNpPXiwNiDSaU4Rj8/s
KmOH6JlwY1G2noxMVuOHFX46pAZmUI8417tzU5aascQmztjVEobW02OkpbH88vdQ
elOukH78KWfWEo7Tq2cwqi4+x/uCDfTSkSFjwxv5YCIH8vh7vowTRKvqwQKBgQCA
EhURTRIoPQ3m2BWu+w7AyosnnaCPVd84EpXh9XcIH4uV9zKpUowvAO5j6gFKNRX1
cRmmzBIs+XqkQc+4+2V/tDomtqCSYBffs4Dd7F4vVh530PRTOg2cOswnN856ubNW
DfyJaXAlZxW33hEnPKz4qGpNFbWdiUvdnNajZ+BeGQKBgCHDgFtDSeKkvIbQUDsn
JMwwrovemQTa3mIKx2oT3TyZ/+ug5W6qLTV8Napt3AMjSMBHfNEQgoDqojKgz5Cz
hIjBmQvmS+M6z6M+FxtJY4pmFZXaxj7RzChsmKu0YhbOJ1euZzezsTOeoAMpSnKn
tMJT8ToyxTx6lI7wK2KeVfbc
-----END PRIVATE KEY-----
5 changes: 0 additions & 5 deletions libs/backend-api7/e2e/assets/generate-ssl.sh

This file was deleted.

17 changes: 0 additions & 17 deletions libs/backend-api7/e2e/assets/test-ssl.cer

This file was deleted.

15 changes: 0 additions & 15 deletions libs/backend-api7/e2e/assets/test-ssl.csr

This file was deleted.

28 changes: 0 additions & 28 deletions libs/backend-api7/e2e/assets/test-ssl.key

This file was deleted.

113 changes: 101 additions & 12 deletions libs/backend-api7/e2e/sync-and-dump-1.e2e-spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -134,8 +134,8 @@ describe('Sync and Dump - 1', () => {
expect(result.services).toHaveLength(1);
expect(result.services[0]).toMatchObject(service);
expect(result.services[0].routes).toHaveLength(2);
expect(result.services[0].routes[0]).toMatchObject(route2);
expect(result.services[0].routes[1]).toMatchObject(route1);
expect(result.services[0].routes[0]).toMatchObject(route1);
expect(result.services[0].routes[1]).toMatchObject(route2);
});

it('Delete route1', async () =>
Expand All @@ -162,6 +162,85 @@ describe('Sync and Dump - 1', () => {
});
});

describe('Sync and dump service with stream routes', () => {
const serviceName = 'test';
const service = {
name: serviceName,
upstream: {
scheme: 'tcp',
nodes: [
{
host: '1.1.1.1',
port: 853,
weight: 100,
},
],
},
} as ADCSDK.Service;
const route1Name = 'sroute1';
const route1 = {
name: route1Name,
server_port: 5432,
} as ADCSDK.StreamRoute;
const route2Name = 'sroute2';
const route2 = {
name: route2Name,
server_port: 3306,
} as ADCSDK.StreamRoute;
const serviceForSync = Object.assign(structuredClone(service), {
stream_routes: [],
});

it('Create resources', async () =>
syncEvents(backend, [
createEvent(ADCSDK.ResourceType.SERVICE, serviceName, serviceForSync),
createEvent(
ADCSDK.ResourceType.STREAM_ROUTE,
route1Name,
route1,
serviceName,
),
createEvent(
ADCSDK.ResourceType.STREAM_ROUTE,
route2Name,
route2,
serviceName,
),
]));

it('Dump', async () => {
const result = (await dumpConfiguration(backend)) as ADCSDK.Configuration;
expect(result.services).toHaveLength(1);
expect(result.services[0]).toMatchObject(service);
expect(result.services[0].stream_routes).toHaveLength(2);
expect(result.services[0].stream_routes[0]).toMatchObject(route2);
expect(result.services[0].stream_routes[1]).toMatchObject(route1);
});

it('Delete stream route1', async () =>
syncEvents(backend, [
deleteEvent(ADCSDK.ResourceType.STREAM_ROUTE, route1Name, serviceName),
]));

it('Dump again (check remain stream route2)', async () => {
const result = (await dumpConfiguration(backend)) as ADCSDK.Configuration;
expect(result.services).toHaveLength(1);
expect(result.services[0]).toMatchObject(service);
expect(result.services[0].stream_routes).toHaveLength(1);
expect(result.services[0].stream_routes[0]).toMatchObject(route2);
});

it('Delete service', async () =>
syncEvents(backend, [
deleteEvent(ADCSDK.ResourceType.SERVICE, serviceName),
]));

it('Dump again (service should not exist)', async () => {
const result = (await dumpConfiguration(backend)) as ADCSDK.Configuration;
expect(result.services).toHaveLength(0);
});
});

describe('Sync and dump consumers', () => {
const consumer1Name = 'consumer1';
const consumer1 = {
Expand Down Expand Up @@ -230,23 +309,33 @@ describe('Sync and Dump - 1', () => {
});

describe('Sync and dump ssls', () => {
const certificate = {
certificate: readFileSync(
join(__dirname, 'assets/test-ssl.cer'),
).toString('utf-8'),
key: readFileSync(join(__dirname, 'assets/test-ssl.key')).toString(
'utf-8',
),
};
const certificates = [
{
certificate: readFileSync(
join(__dirname, 'assets/certs/test-ssl1.cer'),
).toString('utf-8'),
key: readFileSync(
join(__dirname, 'assets/certs/test-ssl1.key'),
).toString('utf-8'),
},
{
certificate: readFileSync(
join(__dirname, 'assets/certs/test-ssl2.cer'),
).toString('utf-8'),
key: readFileSync(
join(__dirname, 'assets/certs/test-ssl2.key'),
).toString('utf-8'),
},
];
const ssl1SNIs = ['ssl1-1.com', 'ssl1-2.com'];
const ssl1 = {
snis: ssl1SNIs,
certificates: [certificate],
certificates: [certificates[0]],
} as ADCSDK.SSL;
const ssl2SNIs = ['ssl2-1.com', 'ssl2-2.com'];
const ssl2 = {
snis: ssl2SNIs,
certificates: [certificate],
certificates: [certificates[1]],
} as ADCSDK.SSL;
const sslName = (snis: Array<string>) => snis.join(',');

Expand Down
14 changes: 7 additions & 7 deletions libs/backend-api7/e2e/sync-and-dump-2.e2e-spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ describe('Sync and Dump - 2', () => {
dump = await dumpConfiguration(backend);
});

it('Check', async () => {
it('Check', () => {
expect(dump.ssls[0]).toMatchObject({
type: 'server',
snis: ['test.com'],
Expand Down Expand Up @@ -102,12 +102,6 @@ describe('Sync and Dump - 2', () => {
},
});
expect(dump.services[0].routes[0]).toMatchObject({
uris: ['/anything'],
name: 'route1.2',
methods: ['POST'],
enable_websocket: false,
});
expect(dump.services[0].routes[1]).toMatchObject({
uris: ['/anything'],
name: 'route1.1',
methods: ['GET'],
Expand All @@ -125,6 +119,12 @@ describe('Sync and Dump - 2', () => {
},
},
});
expect(dump.services[0].routes[1]).toMatchObject({
uris: ['/anything'],
name: 'route1.2',
methods: ['POST'],
enable_websocket: false,
});

expect(dump.services[1]).toMatchObject({
name: 'service2',
Expand Down
Loading

0 comments on commit ecdf2eb

Please sign in to comment.