< Summary

Information
Class: LGDXRobotCloud.Data.Models.Business.Automation.AutoTaskBusinessModel
Assembly: LGDXRobotCloud.Data
File(s): /builds/yukaitung/lgdxrobot2-cloud/LGDXRobotCloud.Data/Models/Business/Automation/AutoTaskBusinessModel.cs
Line coverage
100%
Covered lines: 13
Uncovered lines: 0
Coverable lines: 13
Total lines: 84
Line coverage: 100%
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
get_Id()100%11100%
get_Name()100%11100%
get_Priority()100%11100%
get_FlowId()100%11100%
get_FlowName()100%11100%
get_RealmId()100%11100%
get_RealmName()100%11100%
get_AssignedRobotId()100%11100%
get_AssignedRobotName()100%11100%
get_CurrentProgressId()100%11100%
get_CurrentProgressName()100%11100%
get_AutoTaskDetails()100%11100%
get_AutoTaskJourneys()100%11100%

File(s)

/builds/yukaitung/lgdxrobot2-cloud/LGDXRobotCloud.Data/Models/Business/Automation/AutoTaskBusinessModel.cs

#LineLine coverage
 1using LGDXRobotCloud.Data.Contracts;
 2using LGDXRobotCloud.Data.Models.DTOs.V1.Responses;
 3
 4namespace LGDXRobotCloud.Data.Models.Business.Automation;
 5
 6public record AutoTaskBusinessModel
 7{
 58  public required int Id { get; set; }
 9
 710  public string? Name { get; set; }
 11
 712  public required int Priority { get; set; }
 13
 714  public int? FlowId { get; set; }
 15
 416  public string? FlowName { get; set; }
 17
 718  public required int RealmId { get; set; }
 19
 320  public required string RealmName { get; set; }
 21
 722  public Guid? AssignedRobotId { get; set; }
 23
 424  public string? AssignedRobotName { get; set; }
 25
 526  public required int CurrentProgressId { get; set; }
 27
 428  public required string CurrentProgressName { get; set; }
 29
 1130  public required IEnumerable<AutoTaskDetailBusinessModel> AutoTaskDetails { get; set; } = [];
 31
 432  public IEnumerable<AutoTaskJourneyBusinessModel> AutoTaskJourneys { get; set; } = [];
 33}
 34
 35public static class AutoTaskBusinessModelExtensions
 36{
 37  public static AutoTaskDto ToDto(this AutoTaskBusinessModel model)
 38  {
 39    return new AutoTaskDto
 40    {
 41      Id = model.Id,
 42      Name = model.Name,
 43      Priority = model.Priority,
 44      Flow = new FlowSearchDto
 45      {
 46        Id = model.FlowId ?? 0,
 47        Name = model.FlowName ?? "Deleted Flow",
 48      },
 49      Realm = new RealmSearchDto
 50      {
 51        Id = model.RealmId,
 52        Name = model.RealmName,
 53      },
 54      AssignedRobot = model.AssignedRobotId == null ? null : new RobotSearchDto
 55      {
 56        Id = model.AssignedRobotId!.Value,
 57        Name = model.AssignedRobotName!,
 58      },
 59      CurrentProgress = new ProgressSearchDto
 60      {
 61        Id = model.CurrentProgressId,
 62        Name = model.CurrentProgressName,
 63      },
 64      AutoTaskDetails = model.AutoTaskDetails.Select(td => td.ToDto()),
 65      AutoTaskJourneys = model.AutoTaskJourneys.Select(tj => tj.ToDto()),
 66    };
 67  }
 68
 69  public static AutoTaskUpdateContract ToContract(this AutoTaskBusinessModel model)
 70  {
 71    return new AutoTaskUpdateContract {
 72      Id = model.Id,
 73      Name = model.Name,
 74      Priority = model.Priority,
 75      FlowId = model.FlowId ?? 0,
 76      FlowName = model.FlowName ?? "Deleted Flow",
 77      RealmId = model.RealmId,
 78      AssignedRobotId = model.AssignedRobotId,
 79      AssignedRobotName = model.AssignedRobotName,
 80      CurrentProgressId = model.CurrentProgressId,
 81      CurrentProgressName = model.CurrentProgressName,
 82    };
 83  }
 84}