using System; using MileageTraker.Web.Models; using MileageTraker.Web.ViewModels; using NUnit.Framework; namespace Web.Tests.ViewModels { [TestFixture] public class CreateLogViewModelTests { [Test] public void GetLog_Converts_To_Log() { var cityName = "My Town"; var date = DateTime.Today.ToString("d"); var employeeName = "Name"; var endOdometer = "1234"; var ethraId = "4567"; string gasPurchased = "2.546"; var mileageLogType = new MileageLogTypeWrapper {Enum = MileageLogType.Commuting}; var viewModel = new CreateLogViewModel { CityName = cityName, Date = date, EmployeeName = employeeName, EndOdometer = endOdometer, VehicleId = ethraId, GasPurchased = gasPurchased, LogType = mileageLogType }; var log = viewModel.GetLog(); } [Test] public void Ctor_Initializes_From_Log() { var cityName = "My Town"; var date = DateTime.Today; var employeeName = "Name"; var endOdometer = 1234; var ethraId = "4567"; var gasPurchased = 2.546d; var mileageLogType = MileageLogType.Commuting; var log = new Log { CityName = cityName, Date = date, EmployeeName = employeeName, EndOdometer = endOdometer, VehicleId = ethraId, GasPurchased = gasPurchased, LogType = mileageLogType }; var viewModel = new CreateLogViewModel(log); Assert.That(viewModel.CityName, Is.EqualTo(cityName)); Assert.That(viewModel.Date, Is.EqualTo(date.ToString("d"))); Assert.That(viewModel.EmployeeName, Is.EqualTo(employeeName)); Assert.That(viewModel.EndOdometer, Is.EqualTo(endOdometer.ToString())); Assert.That(viewModel.VehicleId, Is.EqualTo(ethraId)); Assert.That(viewModel.GasPurchased, Is.EqualTo(gasPurchased.ToString())); Assert.That(viewModel.LogType.Enum, Is.EqualTo(mileageLogType)); } } }