Flagsmith / Flagsmith/flagsmith-ruby-client
Adopt shared mapper test data from engine-test-data
- Langage dominant
- Ruby
- Étoiles
- 12
- Forks
- 6
- Merge moyen
- 28 min
- PR mergées (30 j)
- 1
Description
Mapper tests use inline expected context data rather than shared test cases from engine-test-data repository.
## Acceptance criteria
- [ ] mapper_test_cases pass (see Flagsmith/engine-test-data#46)
- [ ] Identity override virtual segment key generation matches cross-SDK portable standard (JSON + SHA256)
## Technical context
Current implementation uses non-portable hash:
https://github.com/Flagsmith/flagsmith-ruby-client/blob/287ce6d173cf72564da88b8e9c98d042a1deb941/lib/flagsmith/engine/mappers/identity.rb#L38
Portable standard (JSON + SHA256):
- PHP: https://github.com/Flagsmith/flagsmith-php-client/pull/124/files#diff-5872f438d0e149e75ba3660c6b8e7ec8af446b87ea6a4e70f45f7e8e9e7b9c4dR208
- .NET: https://github.com/Flagsmith/flagsmith-dotnet-client/pull/177/files#diff-f851c822fa0e162b75312b6b9ab5dc31d3631179a33360ec77bbb83f4ae7c50eR249
Shared test data: https://github.com/Flagsmith/engine-test-data/pull/46
Related issues:
- Flagsmith/flagsmith-python-client#181
- Flagsmith/flagsmith-java-client#197
- Flagsmith/flagsmith-nodejs-client#228
- Flagsmith/flagsmith-go-client#196
- Flagsmith/flagsmith-rust-flag-engine#26
- Flagsmith/flagsmith-dotnet-client#180
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Inspect lib/flagsmith/engine/mappers/identity.rb at the linked implementation and review the shared mapper_test_cases from Flagsmith/engine-test-data#46. Compare the current identity override virtual segment key generation with the JSON + SHA256 standard described in the linked PHP and .NET changes. Done means mapper_test_cases pass and the generated key matches the portable standard.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- ruby
- Domaine
- backend, testing
- Type d'issue
- Refactorisation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 42/100