コード例 #1
0
        public void ChangeConsumerState(int id, Enums.ConsumerRezim rezim)
        {
            if (id >= 0)
            {
                rezimBuffer = new Enums.ConsumerRezim[ConsumerSHES.consumersList.Count];
                changed     = true;
            }
            else
            {
                throw new ArgumentOutOfRangeException("Negativan id!");
            }

            if (id < rezimBuffer.Count())
            {
                rezimBuffer[id] = rezim;
                //Trace.TraceInformation("Sent to Consumer: id-" + id + ", state-" + rezim.ToString());
                //odmah se posalje shesu informacija ukupne snage consumera

                total = 0;
                for (int i = 0; i < ConsumerSHES.consumersList.Count(); i++)
                {
                    if (rezimBuffer[i] == Enums.ConsumerRezim.ON)
                    {
                        total += ConsumerSHES.consumersList[i].EnergyConsumption;
                    }
                }
            }
            else
            {
                throw new ArgumentOutOfRangeException("Nepostojeci id!");
            }
        }
コード例 #2
0
 public void NegativniParametri(int id, Enums.ConsumerRezim rezim)
 {
     Assert.Throws <ArgumentOutOfRangeException>(
         () =>
     {
         cg.ChangeConsumerState(id, rezim);
     }
         );
 }
コード例 #3
0
        public void DobriParametri(int id1, int id2, Enums.ConsumerRezim rezim1, Enums.ConsumerRezim rezim2)
        {
            cg.ChangeConsumerState(id1, rezim1);
            cg.ChangeConsumerState(id2, rezim2);

            Assert.AreEqual(num, ConsumerGUI.rezimBuffer.Count());

            Assert.AreEqual(rezim1, ConsumerGUI.rezimBuffer[id1]);
            Assert.AreEqual(rezim2, ConsumerGUI.rezimBuffer[id2]);
            Assert.AreEqual(cg.ReturnTotal(), mockConsumer1.Object.EnergyConsumption);


            cg.ChangeConsumerState(id2, rezim1);
            Assert.AreEqual(rezim1, ConsumerGUI.rezimBuffer[id1]);
            Assert.AreEqual(rezim1, ConsumerGUI.rezimBuffer[id2]);
            Assert.AreEqual(cg.ReturnTotal(), mockConsumer1.Object.EnergyConsumption + mockConsumer2.Object.EnergyConsumption);
        }
コード例 #4
0
        /// 
        /// <param name="id"></param>
        /// <param name="energyConsumption"></param>
        public Consumer( double energyConsumption , string id, Enums.ConsumerRezim rezim)
        {
            int temp;
            if (id != null && Int32.TryParse(id, out temp) == true)
                this.Id = id;
            else if (id == null)
                throw new ArgumentNullException("Id ne sme biti null!");
            else
                throw new ArgumentException("Id moze sadrzati samo brojeve!");
            if (energyConsumption >= 0)
                this.EnergyConsumption = energyConsumption;
            else
                throw new ArgumentOutOfRangeException("Potrosnja ne sme biti negativna!");

            this.Rezim = rezim;

        }
コード例 #5
0
        public void SetUp()
        {
            num    = 2;
            rezim1 = Enums.ConsumerRezim.ON;
            rezim2 = Enums.ConsumerRezim.OFF;

            cg = new Consumer.ConsumerGUI();

            temp = new Common.Consumer();

            mockConsumer1 = new Mock <Common.Consumer>();
            mockConsumer1.Setup(temp => temp.Id).Returns("0");
            mockConsumer1.Setup(temp => temp.EnergyConsumption).Returns(100);
            mockConsumer1.Setup(temp => temp.Rezim).Returns(rezim1);

            mockConsumer2 = new Mock <Common.Consumer>();
            mockConsumer2.Setup(temp => temp.Id).Returns("1");
            mockConsumer2.Setup(temp => temp.EnergyConsumption).Returns(200);
            mockConsumer2.Setup(temp => temp.Rezim).Returns(rezim2);

            ConsumerSHES.consumersList.Add(mockConsumer1.Object);
            ConsumerSHES.consumersList.Add(mockConsumer2.Object);
        }