Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test modules CONFIG support #3103

Merged
merged 14 commits into from
Jan 31, 2025
Merged

Test modules CONFIG support #3103

merged 14 commits into from
Jan 31, 2025

Conversation

sazzad16
Copy link
Contributor

@sazzad16 sazzad16 commented Dec 26, 2024

Redis 8 now includes module capabilities, which means that module-specific configuration parameters should be configurable via the the Redis CONFIG command. Enhance integration tests to validate that we can get/set module-specific settings

  • You have read the contribution guidelines.
  • You have created a feature request first to discuss your contribution intent. Please reference the feature request ticket number in the pull request.
  • You applied code formatting rules using the mvn formatter:format target. Don’t submit any formatting related changes.
  • You submit test cases (unit or integration tests) that back your changes.

@sazzad16 sazzad16 marked this pull request as ready for review January 23, 2025 15:03
@tishun
Copy link
Collaborator

tishun commented Jan 28, 2025

(similar to the other issue)
Perhaps this needs to wait for #3145 to get merged so the CI could pass?
We may need to address the matrix build too.

@ggivo
Copy link
Contributor

ggivo commented Jan 29, 2025

@sazzad16 @tishun

PR 3145 will not help in this case. 8.0 env is still bootstrapped by building it locally. When building locally with make Redis server 8.0 will not include modules by default. We can base those tests on io.lettuce.core.RedisContainerIntegrationTests which bring up test env from pre-build docker containers including modules

@sazzad16 sazzad16 requested review from tishun and ggivo January 29, 2025 10:58
@tishun
Copy link
Collaborator

tishun commented Jan 29, 2025

Same, about the conflicts

@sazzad16
Copy link
Contributor Author

@tishun Done!

@tishun
Copy link
Collaborator

tishun commented Jan 30, 2025

Hey, seems there are also some test failures, could you please take a look at that?

@sazzad16
Copy link
Contributor Author

@tishun The tests are failing because Build and Test (unstable) is not running with updated RediSearch. For example, Redis 8.0-M04-pre image.

cc @ggivo

@ggivo
Copy link
Contributor

ggivo commented Jan 30, 2025

@tishun The tests are failing because Build and Test (unstable) is not running with updated RediSearch. For example, Redis 8.0-M04-pre image.

cc @ggivo

Let me take a look. #3145 has been merged and now it should be using 8.0-M04-pre.

@sazzad16
Copy link
Contributor Author

Hey, seems there are also some test failures, could you please take a look at that?

@tishun Fixed!

cc @ggivo

Copy link
Collaborator

@tishun tishun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To expand on my thoughts on Ivo's suggestion for using a parametrized test:

Advantages

  • (generally) if we want to change the steps of the tests we would make the change only in one place and only rotate parameters
  • adding and removing test parameters (scenarios) is easy

Disadvantages

  • (generally) we would assume that all these tests require the same steps always and if this changes we would need to extract them again

No clear winner for me, so I leave this to you folks to agree on

@sazzad16
Copy link
Contributor Author

Thank you @tishun @ggivo

@sazzad16 sazzad16 merged commit 9dd83b1 into redis:main Jan 31, 2025
8 checks passed
@sazzad16 sazzad16 deleted the modules-config branch January 31, 2025 10:34
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.

3 participants