apache / apache/polaris

Missing error-path test coverage for invalid feature JSON in DefaultConfigurationStoreTest

Open Beginner friendly
#4,639 3 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Java
Stars
2.1k
Forks
522
Avg merge
1d 22h
Merged PRs (30d)
137

Description

### Describe the bug

DefaultConfigurationStoreTest currently covers feature configuration defaults and valid configuration behavior.

However, it does not test invalid feature JSON scenarios in BehaviorChangesConfiguration / FeatureConfiguration handling.

Missing cases:
- malformed feature JSON
- invalid or unexpected JSON structure
- error path when configuration parsing fails

Impact:
Without this test coverage, invalid configuration input may not be properly validated or may fail silently.

Expected behavior:
Invalid feature JSON should be rejected with a clear error/exception path.

Suggested fix:
Add a unit/integration test in DefaultConfigurationStoreTest to validate invalid feature JSON handling and ensure proper error response.

### To Reproduce

Not applicable — this is a missing test coverage issue in existing codebase.

### Actual Behavior

Invalid feature JSON in BehaviorChangesConfiguration is not explicitly tested in DefaultConfigurationStoreTest.

### Expected Behavior

Invalid feature JSON should be validated and rejected with a proper error/exception path.

### Additional context

This issue is based on observed missing test coverage in DefaultConfigurationStoreTest for BehaviorChangesConfiguration handling of invalid feature JSON.

### System information

OS: Linux
Polaris Catalog Version: latest (main branch)
Object storage & setup: local/test environment

Contributor guide

Open the contributing guide

Research direction

Start with DefaultConfigurationStoreTest and trace how BehaviorChangesConfiguration and FeatureConfiguration handle configuration parsing. Add coverage for malformed JSON, unexpected JSON structure, and parsing failures, then run the focused test to confirm invalid feature JSON is rejected through a clear error or exception path.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
testing
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.