narendly commented on a change in pull request #333: Fix issue when client only
sets ANY at cluster level throttle config
URL: https://github.com/apache/helix/pull/333#discussion_r310153372
##########
File path:
helix-core/src/main/java/org/apache/helix/controller/stages/StateTransitionThrottleController.java
##########
@@ -99,6 +99,21 @@ public StateTransitionThrottleController(Set<String>
resources, ClusterConfig cl
}
}
+ // The getter methods are used for debugging and testing purpose
Review comment:
I am not 100% comfortable with adding methods just for testing/debugging.
This is a potential vulnerability in scoping. Here's a trick you can do (I have
done this in some tests):
Instead of adding methods (that shouldn't otherwise be used other than
testing purposes), create a child class (for example,
`MockStateTranisitonThrottleController`) that extends this class and just add
these test/debug methods. That way, in your unit tests, you could use the mock
class and still utilize these methods that expose internal variables, rather
than adding methods directly to the main class.
Do you think that would work?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services