Skip to content

Commit 8fed6ea

Browse files
author
Jani Giannoudis
committed
validation: added support for culture validation
refactored test base to validate value and culture new test result mode: keep failed test payrun employee test runner: support for test result mode, default: remove test employee updated version to 0.9.0-beta.10
1 parent e6289c5 commit 8fed6ea

17 files changed

+260
-122
lines changed

Client.Test/Case/CaseAvailableTestRunner.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public virtual async Task<IList<CaseScriptTestResult>> Test(CaseAvailableTest te
3838
var caseSet = await GetAvailableCaseAsync(test.CaseName);
3939

4040
// expecting the case is not available
41-
if (test.Output == false)
41+
if (!test.Output)
4242
{
4343
results.Add(NewResult(caseSet != null, CaseTestType.CaseAvailable, test.TestName,
4444
$"Case {test.CaseName}: expected case is not available, received case with id {caseSet?.Id}", test.Output, caseSet));

Client.Test/PayrollEngine.CaseTest.schema.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -562,6 +562,13 @@
562562
"description": "The case numeric value",
563563
"format": "decimal"
564564
},
565+
"culture": {
566+
"type": [
567+
"null",
568+
"string"
569+
],
570+
"description": "The case value culture name based on RFC 4646"
571+
},
565572
"caseRelation": {
566573
"description": "The case relation",
567574
"oneOf": [

Client.Test/PayrollEngine.Client.Test.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
<ItemGroup>
1919
<PackageReference Include="Microsoft.CodeAnalysis.Compilers" Version="4.14.0" />
20-
<PackageReference Include="PayrollEngine.Client.Core" Version="0.9.0-beta.9" />
20+
<PackageReference Include="PayrollEngine.Client.Core" Version="0.9.0-beta.10" />
2121
</ItemGroup>
2222

2323
<!-- include xml documention files and json schemas to the nuget package -->

Client.Test/PayrollEngine.Client.Test.xml

Lines changed: 52 additions & 26 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Client.Test/Payrun/CollectorTestCustomResult.cs

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,23 @@ public class CollectorTestCustomResult : TestResultBase<CollectorCustomResult>
1212
/// <param name="testPrecision">The testing precision</param>
1313
/// <param name="expectedResult">The expected result</param>
1414
/// <param name="actualResult">The actual result</param>
15-
public CollectorTestCustomResult(TestPrecision testPrecision, CollectorCustomResult expectedResult, CollectorCustomResult actualResult = null) :
15+
public CollectorTestCustomResult(TestPrecision testPrecision, CollectorCustomResult expectedResult,
16+
CollectorCustomResult actualResult = null) :
1617
base(expectedResult, actualResult)
1718
{
1819
TestPrecision = testPrecision;
1920
}
2021

2122
/// <summary>Test for invalid result</summary>
22-
public bool IsInvalidResult() =>
23-
ActualResult == null ||
24-
ActualResult != null && !ActualResult.Value.AlmostEquals(ExpectedResult.Value, TestPrecision.GetDecimals()) ||
25-
!ValidAttributes();
23+
/// <inheritdoc />
24+
public override bool ValidValue() =>
25+
!(ActualResult == null ||
26+
ActualResult != null &&
27+
!ActualResult.Value.AlmostEquals(ExpectedResult.Value, TestPrecision.GetDecimals()) ||
28+
!ValidAttributes());
2629

2730
/// <inheritdoc />
28-
public override bool IsValidResult() => !IsInvalidResult();
29-
}
31+
public override bool ValidCulture() =>
32+
string.IsNullOrWhiteSpace(ExpectedResult.Culture) ||
33+
string.Equals(ExpectedResult.Culture, ActualResult.Culture);
34+
}

Client.Test/Payrun/CollectorTestResults.cs

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,15 @@ public CollectorTestResult(TestPrecision testPrecision, CollectorResultSet expec
2222
TestPrecision = testPrecision;
2323
}
2424

25-
/// <summary>Test for invalid result</summary>
26-
public bool IsInvalidResult() =>
27-
ActualResult == null && ExpectedResult.Value != 0 ||
28-
ActualResult != null && !ActualResult.AlmostEqualValue(ExpectedResult.Value, TestPrecision.GetDecimals()) ||
29-
!ValidAttributes();
25+
/// <inheritdoc />
26+
public override bool ValidCulture() =>
27+
string.IsNullOrWhiteSpace(ExpectedResult.Culture) ||
28+
string.Equals(ExpectedResult.Culture, ActualResult.Culture);
3029

3130
/// <inheritdoc />
32-
public override bool IsValidResult() => !IsInvalidResult();
31+
public override bool ValidValue() =>
32+
!(ActualResult == null && ExpectedResult.Value != 0 ||
33+
ActualResult != null &&
34+
!ActualResult.AlmostEqualValue(ExpectedResult.Value, TestPrecision.GetDecimals()) ||
35+
!ValidAttributes());
3336
}

Client.Test/Payrun/PayrollTestResult.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,15 +32,15 @@ public class PayrollTestResult
3232

3333
/// <summary>Test if wage type test is failed</summary>
3434
public bool FailedWageTypeResult =>
35-
WageTypeResults.Any(x => x.IsFailed());
35+
WageTypeResults.Any(x => x.Failed());
3636

3737
/// <summary>Test if collector test is failed</summary>
3838
public bool FailedCollectorResult =>
39-
CollectorResults.Any(x => x.IsFailed());
39+
CollectorResults.Any(x => x.Failed());
4040

4141
/// <summary>Test if payrun test is failed</summary>
4242
public bool FailedPayrunResult =>
43-
PayrunResults.Any(x => x.IsFailed());
43+
PayrunResults.Any(x => x.Failed());
4444

4545
/// <summary>Test if payroll test is failed</summary>
4646
public bool Failed =>

0 commit comments

Comments
 (0)