From: Choy R. <ch...@us...> - 2005-02-11 05:41:46
|
Update of /cvsroot/dotnetmock/dotnetmock/DotNetMock.Examples.MbUnitTests/Dynamic In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26239/DotNetMock.Examples.MbUnitTests/Dynamic Added Files: WeatherTest.cs Log Message: Added project (to solution) that tests DotNetMock.Examples in MbUnit 2.22. --- NEW FILE: WeatherTest.cs --- #region License // Copyright (c) 2005 Griffin Caprio & Choy Rim. All rights reserved. #endregion #region Imports using MbUnit.Core.Framework; using MbUnit.Framework; using DotNetMock; using DotNetMock.Dynamic; #endregion namespace DotNetMock.Examples.Dynamic { [TestFixture] public class WeatherTest { private IDynamicMock random; private Weather weather; [SetUp] public void SetUp() { random = new DynamicMock(typeof(IWeatherRandom)); weather = new Weather((IWeatherRandom)random.Object); } [Test] public void RandomRaining() { random.SetValue("NextTemperature", 1.0); random.SetValue("NextIsRaining", true); weather.Randomize(); Assertion.Assert("is raining", weather.IsRaining); } [Test] public void RandomNotRaining() { random.SetValue("NextTemperature", 1.0); random.SetValue("NextIsRaining", false); weather.Randomize(); Assertion.Assert("is not raining", !weather.IsRaining); } [Test] public void RandomTemperatureSunny() { double TEMPERATURE = 20.0; random.SetValue("NextTemperature", TEMPERATURE); random.SetValue("NextIsRaining", false); weather.Randomize(); Assertion.AssertEquals("temperature", TEMPERATURE, weather.Temperature); } [Test] public void RandomTemperatureRaining() { double TEMPERATURE = 20.0; random.SetValue("NextTemperature", TEMPERATURE); random.SetValue("NextIsRaining", true); weather.Randomize(); Assertion.AssertEquals("temperature", TEMPERATURE / 2.0, weather.Temperature); } } [TestFixture] public class DefaultWeatherRandomTest { [Test] public void NextIsRaining() { IDynamicMock random = new DynamicMock(typeof(System.Random)); IWeatherRandom weather = new DefaultWeatherRandom((System.Random)random.Object); random.SetValue("NextDouble", 0.0); Assertion.Assert("is raining", weather.NextIsRaining()); random.SetValue("NextDouble", DefaultWeatherRandom.CHANCE_OF_RAIN); Assertion.Assert("is not raining", !weather.NextIsRaining()); random.SetValue("NextDouble", 1.0); Assertion.Assert("is not raining", !weather.NextIsRaining()); } [Test] public void NextTemperature() { IDynamicMock random = new DynamicMock(typeof(System.Random)); IWeatherRandom weather = new DefaultWeatherRandom((System.Random)random.Object); random.SetValue("NextDouble", 0.0); Assertion.AssertEquals("should be min temperature", DefaultWeatherRandom.MIN_TEMPERATURE, weather.NextTemperature() ); random.SetValue("NextDouble", 0.5); Assertion.AssertEquals("should be average temperature", 0.5 * (DefaultWeatherRandom.MIN_TEMPERATURE + DefaultWeatherRandom.MAX_TEMPERATURE), weather.NextTemperature() ); random.SetValue("NextDouble", 1.0); Assertion.AssertEquals("should be max temperature", DefaultWeatherRandom.MAX_TEMPERATURE, weather.NextTemperature() ); } } } |