示例#1
0
        /// 
        /// <param name="id"></param>
        /// <param name="maxPower"></param>
        /// <param name="capacity"></param>

        public Battery(double capacity, string id, double maxPower, Enums.BatteryRezim state)
        {
            if (id == null)
            {
                throw new ArgumentNullException("Od ne sme biti null!");
            }
            else
            {
                Id = id;
            }

            if (capacity >= 0)
            {
                Capacity = capacity;
            }
            else
            {
                throw new ArgumentOutOfRangeException("Kapacitet ne sme biti negativan broj!");
            }

            if (maxPower >= 0)
            {
                MaxPower = maxPower;
            }
            else
            {
                throw new ArgumentOutOfRangeException("Max power ne sme biti negativan broj!");
            }

            State = state;
        }
示例#2
0
        public void SetUp()
        {
            num      = 2;
            maxPower = new double[num];

            for (int i = 0; i < num; i++)
            {
                maxPower[i] = i + 1;
            }

            bs      = new BatterySHES();
            idLos   = "b2";
            idDobar = "2";
            rezim   = Enums.BatteryRezim.PRAZNJENJE;
            rezim2  = Enums.BatteryRezim.PUNJENJE;

            batteries = new List <Common.Battery>();

            mockBattery1 = new Mock <Common.Battery>();
            mockBattery1.Setup(bat => bat.Capacity).Returns(500);
            mockBattery1.Setup(bat => bat.Id).Returns("1");
            mockBattery1.Setup(bat => bat.MaxPower).Returns(1000);
            mockBattery1.Setup(bat => bat.State).Returns(Common.Enums.BatteryRezim.PUNJENJE);

            mockBattery2 = new Mock <Common.Battery>();
            mockBattery2.Setup(bat => bat.Capacity).Returns(300);
            mockBattery2.Setup(bat => bat.Id).Returns("2");
            mockBattery2.Setup(bat => bat.MaxPower).Returns(100);
            mockBattery2.Setup(bat => bat.State).Returns(Common.Enums.BatteryRezim.PUNJENJE);

            batteries.Add(mockBattery1.Object);
            batteries.Add(mockBattery2.Object);
        }
 public BatteryDTO(double capacity, string id, double maxPower, Enums.BatteryRezim state, int time) : base(capacity, id, maxPower, state)
 {
     if (time >= 0)
     {
         Time = time;
     }
     else
     {
         throw new ArgumentOutOfRangeException("Vreme ne moze biti negativno!");
     }
 }
示例#4
0
 public void InitializeEVCharger(Common.EVCharger evc)
 {
     if (evc != null)
     {
         rezimBuffer = Enums.BatteryRezim.PRAZNJENJE;
         EVCharger   = evc;
         initialized = true;
     }
     else
     {
         throw new ArgumentNullException("EVCharger ne sme biti null!");
     }
 }
        public void Setup()
        {
            mockEvc = new Mock <Common.EVCharger>();
            evcs    = new EVCharger.EVChargerSHES();

            capacity  = 500;
            id        = "0";
            maxPower  = 200;
            state     = Enums.BatteryRezim.PUNJENJE;
            charge    = true;
            connected = true;

            mockEvc.Setup(evcs => evcs.Capacity).Returns(capacity);
            mockEvc.Setup(evcs => evcs.Charge).Returns(charge);
            mockEvc.Setup(evcs => evcs.Connected).Returns(connected);
            mockEvc.Setup(evcs => evcs.Id).Returns(id);
            mockEvc.Setup(evcs => evcs.MaxPower).Returns(maxPower);
            mockEvc.Setup(evcs => evcs.State).Returns(state);

            evc = mockEvc.Object;
        }
示例#6
0
        static void Main(string[] args)
        {
            Enums.BatteryRezim rezimSHES = Enums.BatteryRezim.PRAZNJENJE;
            Enums.BatteryRezim rezimGUI  = Enums.BatteryRezim.PRAZNJENJE;
            bool plug = false;

            ServiceHost host = new ServiceHost(typeof(EVChargerSHES));

            host.Open();
            ServiceHost host2 = new ServiceHost(typeof(EVChargerGUI));

            host2.Open();

            ChannelFactory <ISHESEVCharger> channelSHES = new ChannelFactory <ISHESEVCharger>("ISHESEVCharger");
            ISHESEVCharger proxySHES = channelSHES.CreateChannel();

            while (true)
            {
                if (EVChargerSHES.initialized)
                {
                    rezimSHES = EVChargerSHES.rezimBuffer;
                    rezimGUI  = EVChargerGUI.rezimBuffer;

                    if (plug != EVChargerGUI.plugBuffer || rezimSHES != EVChargerGUI.rezimBuffer)
                    {
                        plug = EVChargerGUI.plugBuffer;
                        if (rezimGUI == Enums.BatteryRezim.PRAZNJENJE)
                        {
                            proxySHES.SendRegime(plug, false);
                        }
                        else if (rezimGUI == Enums.BatteryRezim.PUNJENJE)
                        {
                            proxySHES.SendRegime(plug, true);
                        }
                    }

                    Thread.Sleep(300);
                }
            }
        }
示例#7
0
 public void LosiParametriKonstruktor(double capacity, string id, double maxPower, Enums.BatteryRezim state, int time)
 {
     Assert.Throws <ArgumentOutOfRangeException>(
         () =>
     {
         Common.DTO.BatteryDTO dtoB = new Common.DTO.BatteryDTO(capacity, id, maxPower, state, time);
     }
         );
 }
示例#8
0
        public void DobriParametriKonstruktor(double capacity, string id, double maxPower, Enums.BatteryRezim state, int time)
        {
            Common.DTO.BatteryDTO dtoB = new Common.DTO.BatteryDTO(capacity, id, maxPower, state, time);

            Assert.AreNotEqual(null, dtoB);
            Assert.AreEqual(dtoB.Capacity, capacity);
            Assert.AreEqual(dtoB.Id, id);
            Assert.AreEqual(dtoB.MaxPower, maxPower);
            Assert.AreEqual(dtoB.State, state);
            Assert.AreEqual(dtoB.Time, time);
        }
示例#9
0
 public void SendRegime(bool plug, Enums.BatteryRezim rezim)
 {
     rezimBuffer = rezim;
     plugBuffer  = plug;
 }
 public void NullParametriKonstruktor(double capacity, string id, double maxPower, Enums.BatteryRezim state, bool charge, bool connected)
 {
     Assert.Throws <ArgumentNullException>(
         () =>
     {
         evc = new Common.EVCharger(capacity, id, maxPower, state, charge, connected);
     }
         );
 }
        public void DobriParametriKonstruktor(double capacity, string id, double maxPower, Enums.BatteryRezim state, bool charge, bool connected)
        {
            evc = new Common.EVCharger(capacity, id, maxPower, state, charge, connected);

            Assert.AreNotEqual(null, evc);

            Assert.AreEqual(capacity, evc.Capacity);
            Assert.AreEqual(id, evc.Id);
            Assert.AreEqual(maxPower, evc.MaxPower);
            Assert.AreEqual(state, evc.State);
            Assert.AreEqual(charge, evc.Charge);
            Assert.AreEqual(connected, evc.Connected);
        }
示例#12
0
 public void BatteryKonstruktoNullParametri(double capacity, string id, double maxPower, Enums.BatteryRezim state)
 {
     Assert.Throws <ArgumentNullException>(
         () =>
     {
         Common.Battery battery = new Common.Battery(capacity, id, maxPower, state);
     }
         );
 }
示例#13
0
        public void BatteryKonstruktorDobriParametri(double capacity, string id, double maxPower, Enums.BatteryRezim state)
        {
            Common.Battery battery = new Common.Battery(capacity, id, maxPower, state);

            Assert.AreNotEqual(null, battery);

            Assert.AreEqual(battery.Capacity, capacity);
            Assert.AreEqual(battery.Id, id);
            Assert.AreEqual(battery.MaxPower, maxPower);
            Assert.AreEqual(battery.State, state);

            battery = new Common.Battery();

            Assert.AreEqual(battery.Capacity, 0);
        }
 public EVCharger(double capacity, string id, double maxPower, Enums.BatteryRezim state, bool charge, bool connected) : base(capacity, id, maxPower, state)
 {
     this.Charge    = charge;
     this.Connected = connected;
 }
示例#15
0
 public void SendRegime(Enums.BatteryRezim rezim)
 {
     rezimBuffer = rezim;
 }