数组在函数定义中的使用格式(int[] OrphanCount)
调用的时候一般使用: int[] OrphanCountBefore = new int[2];
theCalledMethod(OrphanCountBefore);
这是公共函数
public void GetOrphanCount(int[] OrphanCount) {
int blockStoreOrphanCount = 0;
int buildEnvOrphanCount = 0;
String prePostText = "after";
try {
blockStoreOrphanCount = BlockStoreOrphanPurgeCache.getOrphanCount(true, ORPHAN_FILE, TestConstants.VERBOSE_ORPHAN_LOGGING);
OrphanCount[0] = blockStoreOrphanCount;
System.out.println("***** Found " + blockStoreOrphanCount + " blockstore orphans ");
buildEnvOrphanCount = BuildEnvironmentOrphanPurge.getOrphanCount(ORPHAN_FILE, TestConstants.VERBOSE_ORPHAN_LOGGING);
OrphanCount[1] = buildEnvOrphanCount;
System.out.println("***** Found " + buildEnvOrphanCount + " buildenv orphans ");
} catch (Exception e) { System.out.println("Still end up getting an exception up here"); e.printStackTrace();
}
}
这是调用者的代码
public void testWhileCondEvalsTrue() throws Exception {
int blockStoreOrphanCountBefore = 0;
int buildEnvOrphanCountBefore = 0;
int[] OrphanCountBefore = new int[2];
GetOrphanCount(OrphanCountBefore);
System.out.println("--------- Starting orphan data collection before running test case: ---------"+OrphanCountBefore[0]);
CreateWhileStep();
//int OrphanCountAfter[2];
int[] OrphanCountAfter = new int[2];
int blockStoreOrphanCountAfter = 0;
int buildEnvOrphanCountAfter = 0;
GetOrphanCount(OrphanCountAfter);
System.out.println("--------- Starting orphan data collection after running test case: ---------"+OrphanCountAfter[0]);
Assert.assertEquals(OrphanCountBefore[0],
OrphanCountAfter[0],"the blockStoreOrphanCount should be equal before and after run the test case");
}