[
https://issues.apache.org/jira/browse/HBASE-5456?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13214039#comment-13214039
]
Zhihong Yu commented on HBASE-5456:
-----------------------------------
If the following methods can be made protected or package private, that would
be some progress:
{code}
public Map<DataBlockEncoding, Integer> getEncodingCountsForTest() {
src/main/java/org/apache/hadoop/hbase/io/hfile/LruBlockCache.java
public static SchemaMetrics getUnknownInstanceForTest() {
src/main/java/org/apache/hadoop/hbase/regionserver/metrics/SchemaMetrics.java
public void compactRecentForTesting(int N) throws IOException {
src/main/java/org/apache/hadoop/hbase/regionserver/Store.java
public static User createUserForTesting(Configuration conf,
public static User createUserForTesting(Configuration conf,
public static User createUserForTesting(Configuration conf,
src/main/java/org/apache/hadoop/hbase/security/User.java
public long getNumQueriesForTesting(int chunk) {
public long getNumPositivesForTesting(int chunk) {
src/main/java/org/apache/hadoop/hbase/util/CompoundBloomFilter.java
{code}
> Introduce PowerMock into our unit tests to reduce unnecessary method exposure
> -----------------------------------------------------------------------------
>
> Key: HBASE-5456
> URL: https://issues.apache.org/jira/browse/HBASE-5456
> Project: HBase
> Issue Type: Task
> Reporter: Zhihong Yu
>
> We should introduce PowerMock into our unit tests so that we don't have to
> expose methods intended to be used by unit tests.
> Here was Benoit's reply to a user of asynchbase about testability:
> OpenTSDB has unit tests that are mocking out HBaseClient just fine
> [1]. You can mock out pretty much anything on the JVM: final,
> private, JDK stuff, etc. All you need is the right tools. I've been
> very happy with PowerMock. It supports Mockito and EasyMock.
> I've never been keen on mutilating public interfaces for the sake of
> testing. With tools like PowerMock, we can keep the public APIs tidy
> while mocking and overriding anything, even in the most private guts
> of the classes.
> [1]
> https://github.com/stumbleupon/opentsdb/blob/master/src/uid/TestUniqueId.java#L66
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira