diff --git a/Config/reportLang.php b/Config/reportLang.php index 4438909..02c8017 100644 --- a/Config/reportLang.php +++ b/Config/reportLang.php @@ -89,12 +89,28 @@ return [ 'phpOMS\tests\Account\GroupTest:testChangeStatus' => ['description' => 'The default status of the group can be changed to a different valid status'], 'phpOMS\tests\Account\GroupTest:testStatusException' => ['description' => 'A group can only have valid group status'], + 'phpOMS\tests\Account\PermissionAbstract' => ['description' => 'Base permission representation'], + 'phpOMS\tests\Account\PermissionAbstract:testAbstractDefault' => ['description' => 'The permission has the expected default values after initialization'], + 'phpOMS\tests\Account\PermissionAbstract:testUnitInputOutput' => ['description' => 'The unit can be set and returned correctly'], + 'phpOMS\tests\Account\PermissionAbstract:testAppInputOutput' => ['description' => 'The app can be set and returned correctly'], + 'phpOMS\tests\Account\PermissionAbstract:testModuleInputOutput' => ['description' => 'The module can be set and returned correctly'], + 'phpOMS\tests\Account\PermissionAbstract:testFromInputOutput' => ['description' => 'The from can be set and returned correctly'], + 'phpOMS\tests\Account\PermissionAbstract:testTypeInputOutput' => ['description' => 'The type can be set and returned correctly'], + 'phpOMS\tests\Account\PermissionAbstract:testElementInputOutput' => ['description' => 'The element can be set and returned correctly'], + 'phpOMS\tests\Account\PermissionAbstract:testComponentInputOutput' => ['description' => 'The component can be set and returned correctly'], + 'phpOMS\tests\Account\PermissionAbstract:testPermissionInputOutput' => ['description' => 'The permission can be set and returned correctly'], + 'phpOMS\tests\Account\PermissionAbstract:testValidPermission' => ['description' => 'Correct permissions are validated'], + 'phpOMS\tests\Account\PermissionAbstract:testInvalidPermission' => ['description' => 'Invalid permissions are not validted'], + 'phpOMS\tests\Account\PermissionAbstract:testValidPermissionFlag' => ['description' => 'Correct permission flags are validated'], + 'phpOMS\tests\Account\PermissionAbstract:testInvalidPermissionFlag' => ['description' => 'Invalid permission flags are not validated'], + 'phpOMS\tests\Algorithm\Clustering\KmeansTest' => ['description' => 'Clustering points/elements with the K-means algorithm'], 'phpOMS\tests\Algorithm\Clustering\KmeansTest:testKmeans' => ['description' => 'The clustering of points and dynamic check of new points works as expected'], 'phpOMS\tests\Algorithm\Clustering\PointTest' => ['description' => 'Default point in a cluster'], - 'phpOMS\tests\Algorithm\Clustering\PointTest:testChangeCoordinates' => ['description' => 'Coordinates of a point can be changed'], - 'phpOMS\tests\Algorithm\Clustering\PointTest:testChangeGroup' => ['description' => 'The group/cluster of a point can be changed'], + 'phpOMS\tests\Algorithm\Clustering\PointTest:testCoordinateInputOutput' => ['description' => 'Coordinates of a point can be set and returned'], + 'phpOMS\tests\Algorithm\Clustering\PointTest:testGroupInputOutput' => ['description' => 'The group/cluster of a point can be set and returned'], + 'phpOMS\tests\Algorithm\Clustering\PointTest:testNameInputOutput' => ['description' => 'The name of a point can be set and returned'], 'phpOMS\tests\Algorithm\CoinMatching\MinimumCoinProblemTest' => ['description' => 'Match a value by using the minimum quantity of available sub values (Minimum Coin Problem)'], 'phpOMS\tests\Algorithm\CoinMatching\MinimumCoinProblemTest:testMinimumCoins' => ['description' => 'A value is matched with the minimum quantity of avialable coins.'], @@ -132,6 +148,56 @@ return [ 'phpOMS\tests\Algorithm\PathFinding\JumpPointSearchTest:testPathFindingDiagonalOneObstacle' => ['description' => 'The correct path is found for diagonal movement [one obstacle]'], 'phpOMS\tests\Algorithm\PathFinding\JumpPointSearchTest:testPathFindingDiagonalNoObstacle' => ['description' => 'The correct path is found for diagonal movement [no obstacle]'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest' => ['description' => 'Grid for path finding'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testDefault' => ['description' => 'By default a grid is empty'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testGridFromArray' => ['description' => 'A grid can be created from an array'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testNodeInputOutput' => ['description' => 'A node can be set and returned from the grid'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testOutOfBoundsNode' => ['description' => 'Out of bounds nodes cannot be returned'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testStraightHorizontalNeighbors' => ['description' => 'All hoirzontal neighbors can be found correctly'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testStraightVerticalNeighbors' => ['description' => 'All vertical neighbors can be found correctly'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testStraightNoneNeighbors' => ['description' => 'No straight neighbors are found if no straight neighbors exist'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testStraightAllNeighbors' => ['description' => 'All straight neighbors can be found correctly'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testDiagonalLRNeighbors' => ['description' => 'All neighbors except blocked diagonal neighbors can be found correctly'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testDiagonalURNeighbors' => ['description' => 'All neighbors except blocked diagonal neighbors can be found correctly'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testDiagonalNoneNeighbors' => ['description' => 'No diagonal neighbors are found if no neighbors exist'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testDiagonalOnlyNeighbors' => ['description' => 'All diagonal neighbors can be found correctly'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testDiagonalAllNeighbors' => ['description' => 'All neighbors can be found correctly'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testDiagonalOneObstacleNoBlockNeighbors' => ['description' => 'All neighbors can be found correctly even if one obstacle exists'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testDiagonalOneObstacleBlockNeighbors' => ['description' => 'No diagonal neighbors are found if they are blocked on two sides'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testDiagonalOneObstacleAllNeighbors' => ['description' => 'All neighbors can be found correctly if no obstacles exists'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testDiagonalNoObstacleBlockNeighbors' => ['description' => 'No diagonal neighbors are found if one obstacle exists'], + 'phpOMS\tests\Algorithm\PathFinding\GridTest:testDiagonalNoObstacleAllNeighbors' => ['description' => 'All neighbors can be found correctly if no obstacles exist'], + + 'phpOMS\tests\Algorithm\PathFinding\NodeTest' => ['description' => 'Node on grid for path finding'], + 'phpOMS\tests\Algorithm\PathFinding\NodeTest:testDefault' => ['description' => 'The node has the expected values after initialization'], + 'phpOMS\tests\Algorithm\PathFinding\NodeTest:testNodesWithEqualCoordinatesAreEqual' => ['description' => 'Nodes with equal coordinates are equal'], + 'phpOMS\tests\Algorithm\PathFinding\NodeTest:testNodesWithDifferentCoordinatesAreNotEqual' => ['description' => 'Nodes with different coordinates are not equal'], + 'phpOMS\tests\Algorithm\PathFinding\NodeTest:testParentInputOutput' => ['description' => 'A parent node can be set and returned'], + + 'phpOMS\tests\Algorithm\PathFinding\JumpPointNodeTest' => ['description' => 'JumpPointNode on grid for path finding'], + 'phpOMS\tests\Algorithm\PathFinding\JumpPointNodeTest:testDefault' => ['description' => 'The node has the expected values after initialization'], + 'phpOMS\tests\Algorithm\PathFinding\JumpPointNodeTest:testClosedInputOutput' => ['description' => 'The node can be set closed and checked'], + 'phpOMS\tests\Algorithm\PathFinding\JumpPointNodeTest:testOpenedInputOutput' => ['description' => 'The node can be set opened and checked'], + 'phpOMS\tests\Algorithm\PathFinding\JumpPointNodeTest:testTestedInputOutput' => ['description' => 'The node can be set tested and checked'], + 'phpOMS\tests\Algorithm\PathFinding\JumpPointNodeTest:testGInputOutput' => ['description' => 'The g value cen be set and returned'], + 'phpOMS\tests\Algorithm\PathFinding\JumpPointNodeTest:testHInputOutput' => ['description' => 'The h value cen be set and returned'], + 'phpOMS\tests\Algorithm\PathFinding\JumpPointNodeTest:testFInputOutput' => ['description' => 'The f value cen be set and returned'], + + 'phpOMS\tests\Algorithm\PathFinding\AStarNodeTest' => ['description' => 'JumpPointNode on grid for path finding'], + 'phpOMS\tests\Algorithm\PathFinding\AStarNodeTest:testDefault' => ['description' => 'The node has the expected values after initialization'], + 'phpOMS\tests\Algorithm\PathFinding\AStarNodeTest:testClosedInputOutput' => ['description' => 'The node can be set closed and checked'], + 'phpOMS\tests\Algorithm\PathFinding\AStarNodeTest:testOpenedInputOutput' => ['description' => 'The node can be set opened and checked'], + 'phpOMS\tests\Algorithm\PathFinding\AStarNodeTest:testTestedInputOutput' => ['description' => 'The node can be set tested and checked'], + 'phpOMS\tests\Algorithm\PathFinding\AStarNodeTest:testGInputOutput' => ['description' => 'The g value cen be set and returned'], + 'phpOMS\tests\Algorithm\PathFinding\AStarNodeTest:testHInputOutput' => ['description' => 'The h value cen be set and returned'], + 'phpOMS\tests\Algorithm\PathFinding\AStarNodeTest:testFInputOutput' => ['description' => 'The f value cen be set and returned'], + + 'phpOMS\tests\Algorithm\PathFinding\PathTest' => ['description' => 'Path on grid'], + 'phpOMS\tests\Algorithm\PathFinding\PathTest:testDefault' => ['description' => 'The path has the expected values after initialization'], + 'phpOMS\tests\Algorithm\PathFinding\PathTest:testDiagonalPathLength' => ['description' => 'The diagonal euclidean path length is calculated correctly'], + 'phpOMS\tests\Algorithm\PathFinding\PathTest:testStraightPathLength' => ['description' => 'The straight euclidean path length is calculated correctly'], + 'phpOMS\tests\Algorithm\PathFinding\PathTest:testPathExpansion' => ['description' => 'The path is correctly expanded in case only jump points are defined'], + 'phpOMS\tests\Algorithm\Sort\BitonicSortTest' => ['description' => 'Bitonic sort'], 'phpOMS\tests\Algorithm\Sort\BitonicSortTest:testSmallList' => ['description' => 'A list with one element returns the list with the element itself'], 'phpOMS\tests\Algorithm\Sort\BitonicSortTest:testSortASC' => ['description' => 'A list ot elements can be sorted in ASC order'], @@ -273,9 +339,18 @@ return [ 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testFutureValueContinuousCompounding' => ['description' => 'The future value calculation including continuous compounding is correct'], 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testValueFactor' => ['description' => 'The future value factor calculation is correct'], 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testGeometricMeanReturn' => ['description' => 'The calculation of the geometric mean of multiple return rates is correct'], - // todo: implement remaining - - // todo: implement stockbond + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testGrowingAnnuityFV' => ['description' => 'The calculation of the future value of the growing annuity is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testGrowingAnnuityPaymentFV' => ['description' => 'The calculation of the payment based on the future value of the growing annuity is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testGrowingAnnuityPV' => ['description' => 'The calculation of the present value of the growing annuity is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testGrowingAnnuityPaymentPV' => ['description' => 'The calculation of the payment based on the present value of the growing annuity is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testGrowingPerpetuityPV' => ['description' => 'The calculation of the present value of the growing perpetuity is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testNetPresentValue' => ['description' => 'The calculation of the net present value is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testEmptyNetPresentValue' => ['description' => 'No cash flows in the net prsent value calculation result in 0'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testRealRateOfReturn' => ['description' => 'The calculation of the real rate of return is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testNetWorkingCapital' => ['description' => 'The calculation of the net working capital is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testNumberOfPeriodsPVFV' => ['description' => 'The periods to reach a future value based on the present value is calculated correctly'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testPresentValue' => ['description' => 'The calculation of the present value is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testPresentValueContinuousCompounding' => ['description' => 'The calculation of the present value using continuous compounding is correct'], 'phpOMS\tests\Business\Finance\LoanTest' => ['description' => 'Loan formulas'], 'phpOMS\tests\Business\Finance\LoanTest:testLoanToDepositRatio' => ['description' => 'The loan to deposit ratio is correct'], @@ -285,6 +360,20 @@ return [ 'phpOMS\tests\Business\Finance\LoanTest:testLoanPayment' => ['description' => 'The loan payments are correct for a given interest rate and period [continuous compounding]'], 'phpOMS\tests\Business\Finance\LoanTest:testRemainingBalanceLoan' => ['description' => 'The residual value is correct for a given payment amount, interest rate and period [continuous compounding]'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest' => ['description' => 'Stock & bond related formulas'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testBondEquivalentYield' => ['description' => 'The calculation the bond yield based on face value and price is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testExpectedReturnCAPM' => ['description' => 'The calculation of the return of the capital asset pricing model is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testCapitalGainsYield' => ['description' => 'The capital gains yield calculation is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testDilutedEarningsPerShare' => ['description' => 'The diluted earnings per share calculation is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testHoldingPeriodReturn' => ['description' => 'The calculation of the absolute return for multiple holding periods is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testTaxEquivalentYield' => ['description' => 'The tax equivalent yield is calculated correctly'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testNetAssetValue' => ['description' => 'The net asset value is calculated correctly'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testPresentValueOfStockConstantGrowth' => ['description' => 'The calculation of the present value of a stock with constant growth rate is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testTotalStockReturn' => ['description' => 'The total stock return including dividends and sales price is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testYieldToMaturity' => ['description' => 'The calculation of the yield of a bond is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testZeroCouponBondValue' => ['description' => 'The calculation of value of the zero coupon bond is correct'], + 'phpOMS\tests\Business\Finance\FinanceFormulasTest:testZeroCouponBondEffectiveYield' => ['description' => 'The calculation of the yield of a zero coupon bond is correct'], + 'phpOMS\tests\Business\Finance\LorenzkurveTest' => ['description' => 'Lorenz kurve'], 'phpOMS\tests\Business\Finance\LorenzkurveTest:testGiniCoefficient' => ['description' => 'The gini coefficient calculation is correct'], @@ -330,7 +419,24 @@ return [ 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest' => ['description' => 'File cache connection'], 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testDefault' => ['description' => 'The file cache connection has the expected default values after initialization'], 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testConnect' => ['description' => 'The connection to a dedicated cache directory can be established (none-exising directories get created)'], - // todo: implement remaining, requires splitting up test case GetSet!!! + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testSetInputOutput' => ['description' => 'Different cache data (types) can be set and returned'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testAddInputOutput' => ['description' => 'Cache data can bet added and returned'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testInvalidOverwrite' => ['description' => 'Cache data cannot be added if it already exists'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testReplace' => ['description' => 'Existing cache data can be replaced'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testInvalidReplace' => ['description' => 'None-existing cache data cannot be replaced'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testDelete' => ['description' => 'Cache data can be deleted'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testStats' => ['description' => 'The cache correctly handles general cache information'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testFlush' => ['description' => 'The cache can be flushed'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testUnexpiredInputOutput' => ['description' => 'Cache data can be set and returned with expiration limits'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testExpiredInputOutput' => ['description' => 'EExpired cache data can be forced to return'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testForceExpiredInputOutput' => ['description' => 'Expired cache data cannot be returned'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testInvalidDeleteUnexpired' => ['description' => 'Unexpired cache data connot be delete if lower expiration is defined'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testDeleteExpired' => ['description' => 'Expired cache data can be deleted if higher expiration is defined'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testForceDeleteUnexpired' => ['description' => 'Unexpired data can be force deleted with lower expiration date'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testFlushExpired' => ['description' => 'Cach data can be flushed by expiration date'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testBadCacheStatus' => ['description' => 'A bad cache status will prevent all cache actions'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testInvalidCachePath' => ['description' => 'A invalid cache connection will throw an InvalidConnectionConfigException'], + 'phpOMS\tests\DataStorage\Cache\Connection\FileCacheTest:testInvalidDataType' => ['description' => 'A invalid data type will throw an InvalidArgumentException'], 'phpOMS\tests\Localization\MoneyTest' => ['description' => 'Money datatype for internal representation of money'], 'phpOMS\tests\Localization\MoneyTest:testDefaultMemberVariables' => ['description' => 'The datatype has the expected member variables and default values'],