8163860: Convert TestOldFreeSpaceCalculation_test to GTest

Reviewed-by: iignatyev, dfazunen
This commit is contained in:
Kirill Zhaldybin 2016-08-15 13:18:35 +03:00
parent ad62406df7
commit fe2f936875
3 changed files with 62 additions and 17 deletions

View file

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
@ -1133,18 +1133,3 @@ bool PSAdaptiveSizePolicy::print() const {
return false; return false;
} }
#ifndef PRODUCT
void TestOldFreeSpaceCalculation_test() {
assert(PSAdaptiveSizePolicy::calculate_free_based_on_live(100, 20) == 25, "Calculation of free memory failed");
assert(PSAdaptiveSizePolicy::calculate_free_based_on_live(100, 50) == 100, "Calculation of free memory failed");
assert(PSAdaptiveSizePolicy::calculate_free_based_on_live(100, 60) == 150, "Calculation of free memory failed");
assert(PSAdaptiveSizePolicy::calculate_free_based_on_live(100, 75) == 300, "Calculation of free memory failed");
assert(PSAdaptiveSizePolicy::calculate_free_based_on_live(400, 20) == 100, "Calculation of free memory failed");
assert(PSAdaptiveSizePolicy::calculate_free_based_on_live(400, 50) == 400, "Calculation of free memory failed");
assert(PSAdaptiveSizePolicy::calculate_free_based_on_live(400, 60) == 600, "Calculation of free memory failed");
assert(PSAdaptiveSizePolicy::calculate_free_based_on_live(400, 75) == 1200, "Calculation of free memory failed");
}
#endif /* !PRODUCT */

View file

@ -87,7 +87,6 @@ void InternalVMTests::run() {
run_unit_test(VMStructs_test); run_unit_test(VMStructs_test);
#endif #endif
#if INCLUDE_ALL_GCS #if INCLUDE_ALL_GCS
run_unit_test(TestOldFreeSpaceCalculation_test);
run_unit_test(TestG1BiasedArray_test); run_unit_test(TestG1BiasedArray_test);
run_unit_test(TestBufferingOopClosure_test); run_unit_test(TestBufferingOopClosure_test);
run_unit_test(TestCodeCacheRemSet_test); run_unit_test(TestCodeCacheRemSet_test);

View file

@ -0,0 +1,61 @@
/*
* Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*
*/
#include "precompiled.hpp"
#include "utilities/macros.hpp"
#include "gc/parallel/psAdaptiveSizePolicy.hpp"
#include "unittest.hpp"
#if INCLUDE_ALL_GCS
TEST_VM(gc, oldFreeSpaceCalculation) {
struct TestCase {
size_t live;
uintx ratio;
size_t expectedResult;
};
TestCase test_cases[] = {
{100, 20, 25},
{100, 50, 100},
{100, 60, 150},
{100, 75, 300},
{400, 20, 100},
{400, 50, 400},
{400, 60, 600},
{400, 75, 1200},
};
size_t array_len = sizeof(test_cases) / sizeof(TestCase);
for (size_t i = 0; i < array_len; ++i) {
ASSERT_EQ(PSAdaptiveSizePolicy::calculate_free_based_on_live(
test_cases[i].live, test_cases[i].ratio),
test_cases[i].expectedResult)
<< " Calculation of free memory failed"
<< " - Test case " << i << ": live = " << test_cases[i].live
<< "; ratio = " << test_cases[i].ratio;
}
}
#endif