< Summary

Information
Class: LGDXRobotCloud.Data.Models.DTOs.V1.Commands.AutoTaskDetailUpdateDtoExtensions
Assembly: LGDXRobotCloud.Data
File(s): /builds/yukaitung/lgdxrobot2-cloud/LGDXRobotCloud.Data/Models/DTOs/V1/Commands/AutoTaskDetailUpdateDto.cs
Line coverage
0%
Covered lines: 0
Uncovered lines: 10
Coverable lines: 10
Total lines: 43
Line coverage: 0%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
ToBusinessModel(...)100%210%

File(s)

/builds/yukaitung/lgdxrobot2-cloud/LGDXRobotCloud.Data/Models/DTOs/V1/Commands/AutoTaskDetailUpdateDto.cs

#LineLine coverage
 1using System.ComponentModel.DataAnnotations;
 2using LGDXRobotCloud.Data.Models.Business.Automation;
 3
 4namespace LGDXRobotCloud.Data.Models.DTOs.V1.Commands;
 5
 6public record AutoTaskDetailUpdateDto : IValidatableObject
 7{
 8  public int? Id { get; set; }
 9
 10  public double? CustomX { get; set; }
 11
 12  public double? CustomY { get; set; }
 13
 14  public double? CustomRotation { get; set; }
 15
 16  public int? WaypointId { get; set; }
 17
 18  [Required (ErrorMessage = "Please enter the order.")]
 19  public int Order { get; set; }
 20
 21  public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
 22  {
 23    if (WaypointId == null && CustomX == null && CustomY == null && CustomRotation == null)
 24    {
 25      yield return new ValidationResult("Please enter a waypoint or a custom coordinate.", [nameof(AutoTaskUpdateDto.Aut
 26    }
 27  }
 28}
 29
 30public static class AutoTaskDetailUpdateDtoExtensions
 31{
 32  public static AutoTaskDetailUpdateBusinessModel ToBusinessModel(this AutoTaskDetailUpdateDto model)
 033  {
 034    return new AutoTaskDetailUpdateBusinessModel {
 035      Id = model.Id,
 036      CustomX = model.CustomX,
 037      CustomY = model.CustomY,
 038      CustomRotation = model.CustomRotation,
 039      WaypointId = model.WaypointId,
 040      Order = model.Order,
 041    };
 042  }
 43}