forked from ddrilling/AsbCloudServer
Fix DetectorDrilling.IsValidOperationDetectorResult
This commit is contained in:
parent
17c13b7a7b
commit
d52dbf4036
AsbCloudInfrastructure/Services/DetectOperations/Detectors
AsbCloudWebApi.Tests
Services/DetectedOperations/Detectors
UnitTests/Background
@ -12,7 +12,6 @@ public class DetectorDrilling : DetectorAbstract
|
|||||||
public const string ExtraDataKeyHasOscillation = "hasOscillation";
|
public const string ExtraDataKeyHasOscillation = "hasOscillation";
|
||||||
public const string ExtraDataKeyDispersionOfNormalizedRotorSpeed = "dispersionOfNormalizedRotorSpeed";
|
public const string ExtraDataKeyDispersionOfNormalizedRotorSpeed = "dispersionOfNormalizedRotorSpeed";
|
||||||
public const string ExtraDataKeyAvgRotorSpeed = "avgRotorSpeed";
|
public const string ExtraDataKeyAvgRotorSpeed = "avgRotorSpeed";
|
||||||
public const string ExtraDataKeyIsAfbEnabled = "isAfbEnabled";
|
|
||||||
|
|
||||||
protected override bool DetectBegin(DetectableTelemetry[] telemetry, int position, DetectedOperation? previousOperation)
|
protected override bool DetectBegin(DetectableTelemetry[] telemetry, int position, DetectedOperation? previousOperation)
|
||||||
{
|
{
|
||||||
@ -45,7 +44,8 @@ public class DetectorDrilling : DetectorAbstract
|
|||||||
=> CalcRop(telemetry, begin, end);
|
=> CalcRop(telemetry, begin, end);
|
||||||
|
|
||||||
protected override bool IsValidOperationDetectorResult(OperationDetectorResult operationDetectorResult) =>
|
protected override bool IsValidOperationDetectorResult(OperationDetectorResult operationDetectorResult) =>
|
||||||
Math.Abs(operationDetectorResult.Operation.DepthStart - operationDetectorResult.Operation.DepthEnd) > 0.01;
|
base.IsValidOperationDetectorResult(operationDetectorResult)
|
||||||
|
&& (operationDetectorResult.Operation.DepthEnd - operationDetectorResult.Operation.DepthStart) > 0.01;
|
||||||
|
|
||||||
protected override (int Begin, int End) RefineEdges(DetectableTelemetry[] telemetry, int begin, int end)
|
protected override (int Begin, int End) RefineEdges(DetectableTelemetry[] telemetry, int begin, int end)
|
||||||
{
|
{
|
||||||
|
@ -17,10 +17,10 @@ public class DetectorDrillingTests : DetectorDrilling
|
|||||||
public void DefineDrillingOperation_ShouldReturn_DrillingRotor(DetectableTelemetry[] telemetryRange)
|
public void DefineDrillingOperation_ShouldReturn_DrillingRotor(DetectableTelemetry[] telemetryRange)
|
||||||
{
|
{
|
||||||
//act
|
//act
|
||||||
var result = GetIdOperation.Invoke(telemetryRange, 0, telemetryRange.Length);
|
var result = GetSpecificInformation(telemetryRange, 0, telemetryRange.Length);
|
||||||
|
|
||||||
//assert
|
//assert
|
||||||
Assert.Equal(idRotor, result);
|
Assert.Equal(idRotor, result.IdCategory);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Theory]
|
[Theory]
|
||||||
@ -28,10 +28,10 @@ public class DetectorDrillingTests : DetectorDrilling
|
|||||||
public void DefineDrillingOperation_ShouldReturn_DrillingSlide(DetectableTelemetry[] telemetryRange)
|
public void DefineDrillingOperation_ShouldReturn_DrillingSlide(DetectableTelemetry[] telemetryRange)
|
||||||
{
|
{
|
||||||
//act
|
//act
|
||||||
var result = GetIdOperation.Invoke(telemetryRange, 0, telemetryRange.Length);
|
var result = GetSpecificInformation(telemetryRange, 0, telemetryRange.Length);
|
||||||
|
|
||||||
//assert
|
//assert
|
||||||
Assert.Equal(idSlide, result);
|
Assert.Equal(idSlide, result.IdCategory);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Theory]
|
[Theory]
|
||||||
@ -39,10 +39,13 @@ public class DetectorDrillingTests : DetectorDrilling
|
|||||||
public void DefineDrillingOperation_ShouldReturn_DrillingSlideWithOscillation(DetectableTelemetry[] telemetryRange)
|
public void DefineDrillingOperation_ShouldReturn_DrillingSlideWithOscillation(DetectableTelemetry[] telemetryRange)
|
||||||
{
|
{
|
||||||
//act
|
//act
|
||||||
var result = GetIdOperation.Invoke(telemetryRange, 0, telemetryRange.Length);
|
var result = GetSpecificInformation(telemetryRange, 0, telemetryRange.Length);
|
||||||
|
|
||||||
//assert
|
//assert
|
||||||
Assert.Equal(idSlideWithOscillation, result);
|
var oHasOscillation = result.ExtraData[ExtraDataKeyHasOscillation];
|
||||||
|
|
||||||
|
Assert.Equal(idSlide, result.IdCategory);
|
||||||
|
Assert.True(oHasOscillation is bool hasOscillation && hasOscillation);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
@ -53,10 +56,11 @@ public class DetectorDrillingTests : DetectorDrilling
|
|||||||
{
|
{
|
||||||
Operation = new DetectedOperation
|
Operation = new DetectedOperation
|
||||||
{
|
{
|
||||||
IdReasonOfEnd = IdReasonOfEnd_PressureIsLo,
|
|
||||||
DepthStart = 5000,
|
DepthStart = 5000,
|
||||||
DepthEnd = 6000
|
DepthEnd = 6000,
|
||||||
}
|
DateStart = System.DateTimeOffset.Now.AddMinutes(-1),
|
||||||
|
DateEnd = System.DateTimeOffset.Now,
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
//act
|
//act
|
||||||
@ -74,10 +78,11 @@ public class DetectorDrillingTests : DetectorDrilling
|
|||||||
{
|
{
|
||||||
Operation = new DetectedOperation
|
Operation = new DetectedOperation
|
||||||
{
|
{
|
||||||
IdReasonOfEnd = IdReasonOfEnd_PressureIsLo,
|
|
||||||
DepthStart = 5000,
|
DepthStart = 5000,
|
||||||
DepthEnd = 5000
|
DepthEnd = 5000,
|
||||||
}
|
DateStart = System.DateTimeOffset.Now.AddMinutes(-1),
|
||||||
|
DateEnd = System.DateTimeOffset.Now,
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
//act
|
//act
|
||||||
|
@ -86,7 +86,7 @@ public class PeriodicBackgroundWorkerTest
|
|||||||
service.Add(badWork, TimeSpan.FromSeconds(2));
|
service.Add(badWork, TimeSpan.FromSeconds(2));
|
||||||
service.Add(goodWork, TimeSpan.FromSeconds(2));
|
service.Add(goodWork, TimeSpan.FromSeconds(2));
|
||||||
|
|
||||||
await Task.Delay(TimeSpan.FromMilliseconds(20));
|
await Task.Delay(TimeSpan.FromMilliseconds(128));
|
||||||
|
|
||||||
//assert
|
//assert
|
||||||
Assert.Equal(expectadResult, result);
|
Assert.Equal(expectadResult, result);
|
||||||
|
Loading…
Reference in New Issue
Block a user