public void CalculateMegaOhmResistanceValuesTestMethod()
        {
            CalculateOhmValues calculateOhmValues = new CalculateOhmValues();
            OhmResistance      value = calculateOhmValues.CalculateOhmResistanceValues("grey", "green", "white", "white");

            //Assert
            Assert.AreEqual("85000.0M", value.Resistance);
            Assert.AreEqual("68000.0M", value.MinResistance);
            Assert.AreEqual("102000.0M", value.MaxResistance);
        }
        public void CalculateKiloOhmResistanceValuesTestMethod()
        {
            CalculateOhmValues calculateOhmValues = new CalculateOhmValues();
            OhmResistance      value = calculateOhmValues.CalculateOhmResistanceValues("brown", "orange", "green", "gold");

            //Assert
            Assert.AreEqual("1300.0K", value.Resistance);
            Assert.AreEqual("1235.0K", value.MinResistance);
            Assert.AreEqual("1365.0K", value.MaxResistance);
        }
        public void CalculateSmallOhmResistanceValuesTestMethod()
        {
            CalculateOhmValues calculateOhmValues = new CalculateOhmValues();
            OhmResistance      value = calculateOhmValues.CalculateOhmResistanceValues("red", "green", "silver", "violet");

            //Assert
            Assert.AreEqual("0.25", value.Resistance);
            Assert.AreEqual("0.24975", value.MinResistance);
            Assert.AreEqual("0.25025", value.MaxResistance);
        }
        public void CalculateOhmResistanceValuesTestMethod()
        {
            CalculateOhmValues calculateOhmValues = new CalculateOhmValues();
            OhmResistance      value = calculateOhmValues.CalculateOhmResistanceValues("black", "red", "orange", "grey");

            //Assert
            Assert.AreEqual("2000", value.Resistance);
            Assert.AreEqual("1999", value.MinResistance);
            Assert.AreEqual("2001", value.MaxResistance);
        }
        public OhmResistance CalculateOhmValues(string bandAColor, string bandBColor, string bandCColor, string bandDColor)
        {
            OhmResistance resistance = new OhmResistance();

            try
            {
                resistance = _calculateOhmValues.CalculateOhmResistanceValues(bandAColor, bandBColor, bandCColor, bandDColor);
            }
            catch (Exception ex)
            {
                _logger.LogError("Internal Server Error. " + ex.Message);
            }
            return(resistance);
        }
示例#6
0
        /// <summary>
        /// Calculates the Ohm value of a resistor based on the band colors.
        /// </summary>
        /// <param name="bandAColor">The color of the first figure of component value band.</param>
        /// <param name="bandBColor">The color of the second significant figure band.</param>
        /// <param name="bandCColor">The color of the decimal muliplier band.</param>
        /// <param name="bandDColor">The color of the tolerance value band.</param>
        /// <returns>resistance, minimum resistance, maximum resistance in ohms</returns>
        public OhmResistance CalculateOhmResistanceValues(string bandAColor, string bandBColor, string bandCColor, string bandDColor)
        {
            int    value      = Convert.ToInt32(string.Format("{0}{1}", _resistorBands.BandAAndB[bandAColor], _resistorBands.BandAAndB[bandBColor]));
            int    multiplier = _resistorBands.Multiplier[bandCColor];
            double tolerance  = _resistorBands.Tolerance[bandDColor];

            double resistance    = value * Math.Pow(10, multiplier);
            double minReistance  = resistance * (1 - tolerance);
            double maxResistance = resistance * (1 + tolerance);

            OhmResistance ohmResistance = new OhmResistance
            {
                Resistance    = FormatResistanceValuesUtility.FormatValue(resistance),
                MinResistance = FormatResistanceValuesUtility.FormatValue(minReistance),
                MaxResistance = FormatResistanceValuesUtility.FormatValue(maxResistance)
            };

            return(ohmResistance);
        }