Skip to content

Commit 1347cb7

Browse files
committed
release 3.0.17
1 parent 1a598a9 commit 1347cb7

24 files changed

Lines changed: 833 additions & 164 deletions

RELEASE_NOTES.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1842,3 +1842,48 @@
18421842
| 🔧 zmienione | 8 |
18431843
| ➖ usunięte | 0 |
18441844

1845+
1846+
# Changelog zmian - `## 3.0.17 (2026-02-23)`- `API: 2.1.1`
1847+
1848+
## 1. ksef-client
1849+
1850+
### 1.1 api
1851+
- **DefaultKsefClient.java**: 🔧 dodano parametr `enforceXadesCompliance` w metodzie `submitAuthTokenRequest`, umożliwiający wcześniejsze włączenie nowych wymagań walidacji XAdES na środowiskach DEMO i PRD poprzez nagłówek `X-KSeF-Feature: enforce-xades-compliance`.
1852+
1853+
### 1.2 client
1854+
- **Headers.java**: 🔧 dodanie pola `String ENFORCE_XADES_COMPLIANCE = "enforce-xades-compliance"`
1855+
1856+
### 1.3 client.model
1857+
- **limit/EffectiveApiRateLimits.java**: 🔧 pole `private InvoiceExportStatusRateLimit invoiceStatusExport` oznaczono `@JsonProperty("invoiceExportStatus")`
1858+
- **limit/GetRateLimitResponse.java**: 🔧 pole `private InvoiceExportStatusRateLimit invoiceStatusExport` oznaczono `@JsonProperty("invoiceExportStatus")`
1859+
- **permission/search/EntityAuthorizationGrant.java**: 🔧 dodano pole `EntityPermissionSubjectEntityDetails subjectEntityDetails`
1860+
- **permission/search/EntityPermissionSubjectEntityDetails.java**: ➕ dodano klasę
1861+
- **permission/search/EuEntityPermissionSubjectEntityDetails.java**: 🔧 dodano pole `String fullName`
1862+
- **permission/search/PersonPermission.java**: 🔧 dodano pól `PersonPermissionSubjectPersonDetails subjectPersonDetails` i `EntityPermissionSubjectEntityDetails subjectEntityDetails`
1863+
- **permission/search/QueryPersonalGrantItem.java**: 🔧 dodano pól `EntityPermissionSubjectEntityDetails subjectEntityDetails` i `PersonPermissionSubjectPersonDetails subjectPersonDetails`
1864+
- **permission/search/PersonPermissionPersonIdentifier.java**: ➕ dodano klasę
1865+
- **permission/search/PersonPermissionSubjectPersonDetails.java**: ➕ dodano klasę
1866+
1867+
## 2. demo-web-app
1868+
1869+
### 2.1 integrationTest
1870+
- **EuEntityPermissionIntegrationTest.java**: 🔧 aktualizacja metod z utilsa `IdentifierGeneratorUtils.getRandomNip()` -> `IdentifierGeneratorUtils.generateRandomNIP()`
1871+
- **EuEntityRepresentativePermissionIntegrationTest.java**: 🔧 aktualizacja metod z utilsa `IdentifierGeneratorUtils.getRandomNip()` -> `IdentifierGeneratorUtils.generateRandomNIP()`
1872+
- **IndirectPermissionIntegrationTest.java**: 🔧 aktualizacja metod z utilsa `IdentifierGeneratorUtils.getRandomNip()` -> `IdentifierGeneratorUtils.generateRandomNIP()`
1873+
- **PeppolInvoiceIntegrationTest.java**: 🔧 naprawa testu
1874+
- **PermissionAttachmentStatusIntegrationTest.java**: 🔧 aktualizacja testu
1875+
- **SubUnitPermissionIntegrationTest.java**: 🔧 użycie `IdentifierGeneratorUtils.generateInternalIdentifier()`
1876+
- **QueryInvoiceIntegrationTest.java**: 🔧 dodanie scenariusza testowego z wysyłką faktury z załącznikiem i bez, następnie wyszukanie ich poprzez zapytanie o metadane faktur i w zapytanie do exportu faktur z parametrem hasAttachment (true/false/null)
1877+
1878+
### 2.2 api
1879+
- 🔧 **IdentifierGeneratorUtils.java** 🔧 poprawki w metodach generujących nip (walidacja sum kontrolnych)(prawidłowy nip wymagany jest do użycia w `addAttachmentPermissionTest`), dodanie metod `String generateInternalIdentifier`
1880+
1881+
---
1882+
## 3. Podsumowanie
1883+
1884+
| Typ zmiany | Liczba plików |
1885+
|-------------|---------------|
1886+
| ➕ dodane | 3 |
1887+
| 🔧 zmienione | 16 |
1888+
| ➖ usunięte | 0 |
1889+

demo-web-app/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ plugins {
88
}
99

1010
group = "pl.akmf.ksef"
11-
version = "3.0.16"
11+
version = "3.0.17"
1212

1313
java {
1414
toolchain {

demo-web-app/src/integrationTest/java/pl/akmf/ksef/sdk/EuEntityPermissionIntegrationTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,10 @@ class EuEntityPermissionIntegrationTest extends BaseIntegrationTest {
3737

3838
@Test
3939
void euEntityPermissionE2EIntegrationTest() throws JAXBException, IOException, ApiException {
40-
String nip = IdentifierGeneratorUtils.getRandomNip();
40+
String nip = IdentifierGeneratorUtils.generateRandomNIP();
4141
String nipVatUe = IdentifierGeneratorUtils.getRandomNipVatEU(nip, "CZ");
4242
String accessToken = authWithCustomNip(nip, nip).accessToken();
43-
String euEntity = toSha256(IdentifierGeneratorUtils.getRandomNip());
43+
String euEntity = toSha256(IdentifierGeneratorUtils.generateRandomNIP());
4444

4545
// Nadaj uprawnienia jednostce EU
4646
String grantReferenceNumber = grantEuEntityPermission(euEntity, nipVatUe, accessToken);

demo-web-app/src/integrationTest/java/pl/akmf/ksef/sdk/EuEntityRepresentativePermissionIntegrationTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,15 +52,15 @@ class EuEntityRepresentativePermissionIntegrationTest extends BaseIntegrationTes
5252
*/
5353
@Test
5454
void grantAdministrativePermission_E2E_ReturnsExpectedResults() throws JAXBException, IOException, ApiException {
55-
String ownerNip = IdentifierGeneratorUtils.getRandomNip();
55+
String ownerNip = IdentifierGeneratorUtils.generateRandomNIP();
5656
String ownerVatEu = IdentifierGeneratorUtils.getRandomVatEU("ES");
5757
String ownerNipVatEu = IdentifierGeneratorUtils.getNipVatEU(ownerNip, ownerVatEu);
5858

59-
String euEntityNip = IdentifierGeneratorUtils.getRandomNip();
59+
String euEntityNip = IdentifierGeneratorUtils.generateRandomNIP();
6060
String euEntityVatEu = IdentifierGeneratorUtils.getRandomVatEU("ES");
6161
String euEntityNipVatEu = IdentifierGeneratorUtils.getNipVatEU(euEntityNip, euEntityVatEu);
6262

63-
String euRepresentativeEntityNip = IdentifierGeneratorUtils.getRandomNip();
63+
String euRepresentativeEntityNip = IdentifierGeneratorUtils.generateRandomNIP();
6464
String euRepresentativeEntityVatEu = IdentifierGeneratorUtils.getRandomVatEU("ES");
6565
String euRepresentativeEntityNipVatEu = IdentifierGeneratorUtils.getNipVatEU(euRepresentativeEntityNip, euRepresentativeEntityVatEu);
6666

demo-web-app/src/integrationTest/java/pl/akmf/ksef/sdk/IndirectPermissionIntegrationTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@ class IndirectPermissionIntegrationTest extends BaseIntegrationTest {
3333
void indirectPermissionE2EIntegrationTest() throws JAXBException, IOException, ApiException {
3434
String contextNip = IdentifierGeneratorUtils.generateRandomNIP();
3535
String contextAccessToken = authWithCustomNip(contextNip, contextNip).accessToken();
36-
String subjectNip = IdentifierGeneratorUtils.getRandomNip("9");
37-
String targetNip = IdentifierGeneratorUtils.getRandomNip("9");
36+
String subjectNip = IdentifierGeneratorUtils.generateRandomNIP("9");
37+
String targetNip = IdentifierGeneratorUtils.generateRandomNIP("9");
3838

3939
String grantIndirectReferenceNumber = grantIndirectPermission(targetNip, subjectNip, contextAccessToken);
4040

demo-web-app/src/integrationTest/java/pl/akmf/ksef/sdk/PeppolInvoiceIntegrationTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ void pefAttachmentInvoiceWithCorrectionE2ETest() throws JAXBException, IOExcepti
117117
// Wait for invoice to be processed
118118
await().atMost(30, SECONDS)
119119
.pollInterval(5, SECONDS)
120-
.until(() -> isInvoicesInSessionProcessed(sessionReferenceNumber, accessToken));
120+
.until(() -> isInvoicesInSessionProcessed(sessionReferenceNumber, accessTokenForPefProvider));
121121

122122
//7: close session
123123
closeSession(sessionReferenceNumber, accessTokenForPefProvider);
@@ -135,7 +135,7 @@ void pefAttachmentInvoiceWithCorrectionE2ETest() throws JAXBException, IOExcepti
135135
// Wait for invoice to be processed
136136
await().atMost(30, SECONDS)
137137
.pollInterval(5, SECONDS)
138-
.until(() -> isInvoicesInSessionProcessed(correctionSessionReferenceNumber, accessToken));
138+
.until(() -> isInvoicesInSessionProcessed(correctionSessionReferenceNumber, accessTokenForPefProvider));
139139

140140
//11: close correction session
141141
closeSession(correctionSessionReferenceNumber, accessTokenForPefProvider);

demo-web-app/src/integrationTest/java/pl/akmf/ksef/sdk/PermissionAttachmentStatusIntegrationTest.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,15 @@ void attachmentStatusTest() throws JAXBException, IOException, ApiException {
3333
//then
3434
Assertions.assertNotNull(trueResponse);
3535
Assertions.assertTrue(trueResponse.getIsAttachmentAllowed());
36+
Assertions.assertNull(trueResponse.getRevokedDate());
3637

3738
TestDataAttachmentRemoveRequest removeRequest = new TestDataAttachmentRemoveRequest();
3839
removeRequest.setNip(contextNip);
3940
removeRequest.setExpectedEndDate(LocalDate.now().plusDays(1));
4041
ksefClient.removeAttachmentPermissionTest(removeRequest);
4142

42-
PermissionAttachmentStatusResponse falseResponse = ksefClient.checkPermissionAttachmentInvoiceStatus(token.accessToken());
43-
Assertions.assertNotNull(falseResponse);
44-
Assertions.assertFalse(falseResponse.getIsAttachmentAllowed());
43+
PermissionAttachmentStatusResponse response = ksefClient.checkPermissionAttachmentInvoiceStatus(token.accessToken());
44+
Assertions.assertNotNull(response);
45+
Assertions.assertNotNull(response.getRevokedDate());
4546
}
4647
}

0 commit comments

Comments
 (0)