From 7d5393d577b19b74f2643389b99713ce6d398916 Mon Sep 17 00:00:00 2001 From: wx930910 Date: Wed, 22 Sep 2021 11:02:10 -0400 Subject: [PATCH] Refactor GroupByExtension to improve test logic (#5480) --- .../java/com/cloud/utils/db/GroupByTest.java | 25 ++++++++++--------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/framework/db/src/test/java/com/cloud/utils/db/GroupByTest.java b/framework/db/src/test/java/com/cloud/utils/db/GroupByTest.java index f508746df36..c47d1d2fa7d 100644 --- a/framework/db/src/test/java/com/cloud/utils/db/GroupByTest.java +++ b/framework/db/src/test/java/com/cloud/utils/db/GroupByTest.java @@ -30,9 +30,20 @@ import com.cloud.utils.Pair; import com.cloud.utils.db.SearchCriteria.Func; import com.cloud.utils.db.SearchCriteria.Op; +import static org.mockito.Mockito.doNothing; +import static org.mockito.Mockito.spy; +import static org.mockito.Mockito.any; + public class GroupByTest { + public static GroupBy mockGroupBy1(final SearchBaseExtension builder) { + GroupBy mockInstance = spy(new GroupBy(builder)); + mockInstance._builder = builder; + doNothing().when(mockInstance).init(any(SearchBaseExtension.class)); + return mockInstance; + } + protected static final String EXPECTED_QUERY = "BASE GROUP BY FIRST(TEST_TABLE.TEST_COLUMN), MAX(TEST_TABLE.TEST_COLUMN) HAVING COUNT(TEST_TABLE2.TEST_COLUMN2) > ? "; protected static final DbTestDao dao = new DbTestDao(); protected static final String EXPECTED_QUERY_2 = "TEST GROUP BY test.fld_int HAVING SUM(test.fld_long) > ? "; @@ -42,7 +53,8 @@ public class GroupByTest { public void testToSql() { // Prepare final StringBuilder sb = new StringBuilder("BASE"); - final GroupByExtension groupBy = new GroupByExtension(new SearchBaseExtension(String.class, String.class)); + // Construct mock object + final GroupBy groupBy = GroupByTest.mockGroupBy1(new SearchBaseExtension(String.class, String.class)); final Attribute att = new Attribute("TEST_TABLE", "TEST_COLUMN"); final Attribute att2 = new Attribute("TEST_TABLE2", "TEST_COLUMN2"); @@ -100,17 +112,6 @@ public class GroupByTest { } -class GroupByExtension extends GroupBy { - - public GroupByExtension(final SearchBaseExtension builder) { - super(builder); - _builder = builder; - } - - @Override - protected void init(final SearchBaseExtension builder) { - } -} class SearchBaseExtension extends SearchBase{