示例#1
0
        public async Task AddMachine()
        {
            var rep = CreateMock <IMachineRepository>();

            var ctrl = new MachineController();

            var machineEntity1 = new CNCLib.Logic.Contracts.DTO.Machine
            {
                MachineID       = 1,
                Name            = "Maxi",
                MachineCommands = new CNCLib.Logic.Contracts.DTO.MachineCommand[]
                { new CNCLib.Logic.Contracts.DTO.MachineCommand {
                      MachineID = 1, MachineCommandID = 1, CommandName = @"1", CommandString = @"1", PosX = 0, PosY = 1
                  } },
                MachineInitCommands = new CNCLib.Logic.Contracts.DTO.MachineInitCommand[]
                { new CNCLib.Logic.Contracts.DTO.MachineInitCommand {
                      MachineID = 1, MachineInitCommandID = 1, CommandString = "2", SeqNo = 1
                  } }
            };

            var machineID = await ctrl.Add(machineEntity1);

            await rep.ReceivedWithAnyArgs().Store(new Machine());

            Assert.AreEqual(machineID, 0);
        }
示例#2
0
        public static decimal GetProbeSize(this MachineDto m, int axis)
        {
            switch (axis)
            {
            case 0: return(m.ProbeSizeX);

            case 1: return(m.ProbeSizeY);

            case 2: return(m.ProbeSizeZ);
            }

            return(0m);
        }
示例#3
0
        public static Machine Convert(this MachineDto from)
        {
            var map = Dependency.Resolve <IMapper>();
            var to  = map.Map <Machine>(from);

            // automapper do not map readonly observable collections
            foreach (var m in from.MachineCommands)
            {
                to.MachineCommands.Add(map.Map <MachineCommand>(m));
            }

            foreach (var mi in from.MachineInitCommands)
            {
                to.MachineInitCommands.Add(map.Map <MachineInitCommand>(mi));
            }

            return(to);
        }
示例#4
0
        public static decimal GetSize(this MachineDto m, int axis)
        {
            switch (axis)
            {
            case 0: return(m.SizeX);

            case 1: return(m.SizeY);

            case 2: return(m.SizeZ);

            case 3: return(m.SizeA);

            case 4: return(m.SizeB);

            case 5: return(m.SizeC);
            }

            throw new NotImplementedException();
        }
示例#5
0
        public async Task AddMachine()
        {
            var unitOfWork = Substitute.For <IUnitOfWork>();
            var rep        = Substitute.For <IMachineRepository>();
            var repC       = Substitute.For <IConfigurationRepository>();

            var ctrl = new MachineManager(unitOfWork, rep, repC, new CNCLibUserContext(), Dependency.Resolve <IMapper>());

            var machineEntity1 = new MachineDto
            {
                MachineId       = 1,
                Name            = "Maxi",
                MachineCommands = new[]
                {
                    new MachineCommandDto
                    {
                        MachineId        = 1,
                        MachineCommandId = 1,
                        CommandName      = @"1",
                        CommandString    = @"1",
                        PosX             = 0,
                        PosY             = 1
                    }
                },
                MachineInitCommands = new[]
                {
                    new MachineInitCommandDto
                    {
                        MachineId            = 1,
                        MachineInitCommandId = 1,
                        CommandString        = "2",
                        SeqNo = 1
                    }
                }
            };

            var machineId = await ctrl.Add(machineEntity1);

            rep.ReceivedWithAnyArgs().AddRange(new Machine[1]);
            machineId.Should().Be(1);
        }
示例#6
0
 public static string GetAxisName(this MachineDto m, int axis)
 {
     return(GCodeHelper.IndexToAxisName(axis));
 }