Esempio n. 1
0
        /// <summary cref="IEncodeable.IsEqual(IEncodeable)" />
        public virtual bool IsEqual(IEncodeable encodeable)
        {
            if (Object.ReferenceEquals(this, encodeable))
            {
                return(true);
            }

            BoilerTemperatureType value = encodeable as BoilerTemperatureType;

            if (value == null)
            {
                return(false);
            }

            if (!Utils.IsEqual(m_top, value.m_top))
            {
                return(false);
            }
            if (!Utils.IsEqual(m_bottom, value.m_bottom))
            {
                return(false);
            }

            return(true);
        }
Esempio n. 2
0
        /// <summary cref="Object.MemberwiseClone" />
        public new object MemberwiseClone()
        {
            BoilerTemperatureType clone = (BoilerTemperatureType)base.MemberwiseClone();

            clone.m_top    = (int)Utils.Clone(this.m_top);
            clone.m_bottom = (int)Utils.Clone(this.m_bottom);

            return(clone);
        }
Esempio n. 3
0
        public void Heater_AtStartUp_IsTurnedOn()
        {
            FireTimersWithPeriod(1000u, 1000);

            BoilerDataType model = GetBoilerModel();

            BoilerHeaterStateType state       = model.HeaterState;
            BoilerTemperatureType temperature = model.Temperature;
            int pressure = model.Pressure;

            state.Should().Be(BoilerHeaterStateType.On, "heater should start in 'on' state");
            pressure.Should().BeGreaterThan(10_000, "pressure should start at 10k and get higher");

            temperature.Top.Should().Be(pressure - 100_005, "top is always 100,005 less than pressure. Pressure: {0}", pressure);
            temperature.Bottom.Should().Be(pressure - 100_000, "bottom is always 100,000 less than pressure. Pressure: {0}", pressure);
        }
Esempio n. 4
0
        public void Heater_CanBeTurnedOff()
        {
            // let heater run for a few seconds to make temperature rise
            FireTimersWithPeriod(1000u, 1000);

            TurnHeaterOff();

            FireTimersWithPeriod(1000u, 1000);

            BoilerDataType model = GetBoilerModel();

            BoilerHeaterStateType state       = model.HeaterState;
            BoilerTemperatureType temperature = model.Temperature;
            int pressure = model.Pressure;

            state.Should().Be(BoilerHeaterStateType.Off, "heater should have been turned off");
            pressure.Should().BeGreaterThan(10_000, "pressure should start at 10k and get higher");

            temperature.Top.Should().Be(pressure - 100_005, "top is always 100,005 less than pressure. Pressure: {0}", pressure);
            temperature.Bottom.Should().Be(pressure - 100_000, "btoom is always 100,000 less than pressure. Pressure: {0}", pressure);
        }
Esempio n. 5
0
 /// <summary>
 /// Sets private members to default values.
 /// </summary>
 private void Initialize()
 {
     m_temperature = new BoilerTemperatureType();
     m_pressure    = (int)0;
     m_heaterState = BoilerHeaterStateType.Off;
 }