Skip to content

Commit 3814b0c

Browse files
test: make CA ID regex more flexible in integration tests
Change regex pattern from [a-z0-9]{10} (exactly 10 chars) to [a-z0-9]+ (one or more chars) to accept variable-length instance identifiers. This makes tests more resilient to changes in instance ID generation while maintaining validation of the CA ID format. Signed-off-by: Vitor Mattos <[email protected]>
1 parent 0a4d9ca commit 3814b0c

File tree

3 files changed

+11
-11
lines changed

3 files changed

+11
-11
lines changed

tests/integration/features/account/signature.feature

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ Feature: account/signature
1717
| (jq).ocs.data.rootCert.names[4].id | OU |
1818
| (jq).ocs.data.rootCert.names[4].value\|length | 2 |
1919
| (jq).ocs.data.rootCert.names[4].value[0] | Organizational Unit |
20-
| (jq).ocs.data.rootCert.names[4].value | (jq)any(.[]; test("^libresign-ca-id:[a-z0-9]{10}_g:[0-9]+_e:[oc]?$")) |
20+
| (jq).ocs.data.rootCert.names[4].value | (jq)any(.[]; test("^libresign-ca-id:[a-z0-9]+_g:[0-9]+_e:[oc]?$")) |
2121
| (jq).ocs.data.generated | true |
2222

2323
Scenario: Create root certificate with CFSSL engine using API
@@ -40,7 +40,7 @@ Feature: account/signature
4040
| (jq).ocs.data.rootCert.names[4].id | OU |
4141
| (jq).ocs.data.rootCert.names[4].value\|length | 2 |
4242
| (jq).ocs.data.rootCert.names[4].value[0] | Organizational Unit |
43-
| (jq).ocs.data.rootCert.names[4].value | (jq)any(.[]; test("^libresign-ca-id:[a-z0-9]{10}_g:[0-9]+_e:[oc]?$")) |
43+
| (jq).ocs.data.rootCert.names[4].value | (jq)any(.[]; test("^libresign-ca-id:[a-z0-9]+_g:[0-9]+_e:[oc]?$")) |
4444
| (jq).ocs.data.generated | true |
4545

4646
Scenario: Create pfx with success using CFSSL
@@ -77,7 +77,7 @@ Feature: account/signature
7777
| (jq).ocs.data | (jq).name \|test("/ST=State of Company") |
7878
| (jq).ocs.data | (jq).name \|test("/L=City Name") |
7979
| (jq).ocs.data | (jq).name \|test("/O=Organization") |
80-
| (jq).ocs.data | (jq).name \|test("/OU=Organization Unit, libresign-ca-id:[a-z0-9]{10}_g:[0-9]+_e:[oc]?") |
80+
| (jq).ocs.data | (jq).name \|test("/OU=Organization Unit, libresign-ca-id:[a-z0-9]+_g:[0-9]+_e:[oc]?") |
8181
| (jq).ocs.data | (jq).name \|test("/CN=account:signer1, signer1-displayname") |
8282
| (jq).ocs.data.issuer\|length | 6 |
8383
| (jq).ocs.data.issuer.CN | Common Name |
@@ -87,7 +87,7 @@ Feature: account/signature
8787
| (jq).ocs.data.issuer.O | Organization |
8888
| (jq).ocs.data.issuer.OU\|length | 2 |
8989
| (jq).ocs.data.issuer.OU | (jq) .[0] \|test("^Organization Unit$") |
90-
| (jq).ocs.data.issuer.OU | (jq) .[1] \|test("^libresign-ca-id:[a-z0-9]{10}_g:[0-9]+_e:[oc]?$") |
90+
| (jq).ocs.data.issuer.OU | (jq) .[1] \|test("^libresign-ca-id:[a-z0-9]+_g:[0-9]+_e:[oc]?$") |
9191
| (jq).ocs.data.subject\|length | 6 |
9292
| (jq).ocs.data.subject.CN | (jq) .[0] \|test("^account:signer1$") |
9393
| (jq).ocs.data.subject.CN | (jq) .[1] \|test("^signer1-displayname$") |
@@ -97,7 +97,7 @@ Feature: account/signature
9797
| (jq).ocs.data.subject.O | Organization |
9898
| (jq).ocs.data.issuer.OU\|length | 2 |
9999
| (jq).ocs.data.issuer.OU | (jq) .[0] \|test("^Organization Unit$") |
100-
| (jq).ocs.data.issuer.OU | (jq) .[1] \|test("^libresign-ca-id:[a-z0-9]{10}_g:[0-9]+_e:[oc]?$") |
100+
| (jq).ocs.data.issuer.OU | (jq) .[1] \|test("^libresign-ca-id:[a-z0-9]+_g:[0-9]+_e:[oc]?$") |
101101
| (jq).ocs.data.extensions.basicConstraints | CA:FALSE |
102102
| (jq).ocs.data.extensions.subjectAltName | email:signer@domain.test |
103103
| (jq).ocs.data.extensions.keyUsage | Digital Signature, Non Repudiation, Key Encipherment |
@@ -138,7 +138,7 @@ Feature: account/signature
138138
| (jq).ocs.data | (jq).name \|test("/ST=State of Company") |
139139
| (jq).ocs.data | (jq).name \|test("/L=City Name") |
140140
| (jq).ocs.data | (jq).name \|test("/O=Organization") |
141-
| (jq).ocs.data | (jq).name \|test("/OU=Organization Unit, libresign-ca-id:[a-z0-9]{10}_g:[0-9]+_e:[oc]?") |
141+
| (jq).ocs.data | (jq).name \|test("/OU=Organization Unit, libresign-ca-id:[a-z0-9]+_g:[0-9]+_e:[oc]?") |
142142
| (jq).ocs.data | (jq).name \|test("/UID=account:signer1") |
143143
| (jq).ocs.data | (jq).name \|test("/CN=signer1-displayname") |
144144
| (jq).ocs.data.issuer\|length | 6 |
@@ -149,7 +149,7 @@ Feature: account/signature
149149
| (jq).ocs.data.issuer.O | Organization |
150150
| (jq).ocs.data.issuer.OU\|length | 2 |
151151
| (jq).ocs.data.issuer.OU | (jq) .[0] \|test("^Organization Unit$") |
152-
| (jq).ocs.data.issuer.OU | (jq) .[1] \|test("^libresign-ca-id:[a-z0-9]{10}_g:[0-9]+_e:[oc]?$") |
152+
| (jq).ocs.data.issuer.OU | (jq) .[1] \|test("^libresign-ca-id:[a-z0-9]+_g:[0-9]+_e:[oc]?$") |
153153
| (jq).ocs.data.subject\|length | 7 |
154154
| (jq).ocs.data.subject.CN | signer1-displayname |
155155
| (jq).ocs.data.subject.C | BR |
@@ -158,7 +158,7 @@ Feature: account/signature
158158
| (jq).ocs.data.subject.O | Organization |
159159
| (jq).ocs.data.subject.OU \|length | 2 |
160160
| (jq).ocs.data.subject.OU | (jq) .[0] \|test("^Organization Unit$") |
161-
| (jq).ocs.data.subject.OU | (jq) .[1] \|test("^libresign-ca-id:[a-z0-9]{10}_g:[0-9]+_e:[oc]?$") |
161+
| (jq).ocs.data.subject.OU | (jq) .[1] \|test("^libresign-ca-id:[a-z0-9]+_g:[0-9]+_e:[oc]?$") |
162162
| (jq).ocs.data.subject.UID | account:signer1 |
163163
| (jq).ocs.data.extensions.basicConstraints | CA:FALSE |
164164
| (jq).ocs.data.extensions.subjectAltName | email:signer@domain.test |

tests/integration/features/admin/certificate_openssl.feature

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Feature: admin/certificate_openssl
1111
| (jq).ocs.data.rootCert.commonName | Common Name |
1212
| (jq).ocs.data.rootCert.names\|length | 1 |
1313
| (jq).ocs.data.rootCert.names[0].id | OU |
14-
| (jq).ocs.data.rootCert.names[0].value | (jq) .[] \|test("^libresign-ca-id:[a-z0-9]{10}_g:[0-9]+_e:[oc]?$") |
14+
| (jq).ocs.data.rootCert.names[0].value | (jq) .[] \|test("^libresign-ca-id:[a-z0-9]+_g:[0-9]+_e:[oc]?$") |
1515
| (jq).ocs.data.generated | true |
1616

1717
Scenario: Generate root cert with fail without CN
@@ -46,7 +46,7 @@ Feature: admin/certificate_openssl
4646
| (jq).ocs.data.rootCert.names[0].id | C |
4747
| (jq).ocs.data.rootCert.names[0].value | BR |
4848
| (jq).ocs.data.rootCert.names[1].id | OU |
49-
| (jq).ocs.data.rootCert.names[1].value | (jq) .[] \|test("^libresign-ca-id:[a-z0-9]{10}_g:[0-9]+_e:[oc]?$") |
49+
| (jq).ocs.data.rootCert.names[1].value | (jq) .[] \|test("^libresign-ca-id:[a-z0-9]+_g:[0-9]+_e:[oc]?$") |
5050
| (jq).ocs.data.generated | true |
5151

5252
Scenario: Generate root cert with fail when country have less then 2 characters

tests/integration/features/file/validate.feature

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ Feature: validate
3838
| (jq).ocs.data.signers[0] | (jq).name \|test("/ST=State of Company") |
3939
| (jq).ocs.data.signers[0] | (jq).name \|test("/L=City Name") |
4040
| (jq).ocs.data.signers[0] | (jq).name \|test("/O=Organization") |
41-
| (jq).ocs.data.signers[0] | (jq).name \|test("/OU=Organization Unit, libresign-ca-id:[a-z0-9]{10}_g:[0-9]+_e:[oc]?") |
41+
| (jq).ocs.data.signers[0] | (jq).name \|test("/OU=Organization Unit, libresign-ca-id:[a-z0-9]+_g:[0-9]+_e:[oc]?") |
4242
| (jq).ocs.data.signers[0] | (jq).name \|test("/CN=signer1-displayname") |
4343
| (jq).ocs.data.signers[0].subject.CN | signer1-displayname |
4444
| (jq).ocs.data.signers[0].subject.C | BR |

0 commit comments

Comments
 (0)