Skip to content

feat: exchanger currency#199

Open
wgjr wants to merge 1 commit intoApiki:masterfrom
wgjr:wilton-gomes
Open

feat: exchanger currency#199
wgjr wants to merge 1 commit intoApiki:masterfrom
wgjr:wilton-gomes

Conversation

@wgjr
Copy link
Copy Markdown

@wgjr wgjr commented Mar 20, 2026

This PR delivers a full implementation of the currency exchange API based on the provided test suite and specifications.

The project initially contained only automated tests. The solution was developed in a test-driven manner, ensuring full compliance with the expected behaviors.

Scope

Implemented endpoint: /exchange/{amount}/{from}/{to}/{rate}

Deterministic conversion using the provided rate

Input validation (amount, currencies, rate)

Response contract aligned with requirements

Support for:

BRL ↔ USD

BRL ↔ EUR

Implementation notes

OOP-based structure with clear separation of concerns (Controller, Validator, Service)

Resilient route parsing to handle variations from the PHP built-in server and test environment

No external dependencies or exchange rate providers (rate is treated as input)

Quality

All tests passing (composer test)

Code compliant with lint rules (composer lint)

Result

The implementation satisfies all functional requirements and is fully aligned with the existing automated test suite.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant