Leaf Input Details

This commit is contained in:
2016-12-16 09:17:42 -05:00
parent 0d9bd7260c
commit 8dc1e0422c
33 changed files with 488 additions and 40 deletions
@@ -0,0 +1,92 @@
using System;
using System.Collections.Generic;
using LeafWeb.Core.Entities;
using LeafWeb.WebCms.Models;
using NUnit.Framework;
namespace LeafWeb.WebCms.Tests.Models
{
[TestFixture]
public class LeafInputDetailsTests
{
private LeafInput GetLeafInput()
{
return new LeafInput
{
CurrentStatus = LeafInputStatusType.Complete,
OutputFiles = new[] { new LeafOutputFile { Filename = "OutputFilename.txt" } },
Added = DateTime.Today,
Email = "test@email.com",
Identifier = "Ident I Fier",
Name = "My Name",
PhotosynthesisType = new PhotosynthesisType { Id = "1", Name = "1", SortOrder = 1 },
InputFiles = new[]
{
new LeafInputFile
{
Filename = "MyFilename.ext",
Id = 3
}
},
StatusHistory = new List<LeafInputStatus> {
new LeafInputStatus
{
DateTime = DateTime.Today.Subtract(new TimeSpan(4,0,0)),
Description = "Added",
Details = "Uploaded from Web",
Id = 1,
Status = LeafInputStatusType.Pending
},
new LeafInputStatus
{
DateTime = DateTime.Today.Subtract(new TimeSpan(3,0,0)),
Description = "Uploading input data",
Id = 2,
Status = LeafInputStatusType.Starting
},
new LeafInputStatus
{
DateTime = DateTime.Today.Subtract(new TimeSpan(2,12,0)),
Description = "Running on server",
Id = 3,
Status = LeafInputStatusType.Running
},
new LeafInputStatus
{
DateTime = DateTime.Today.Subtract(new TimeSpan(1,0,0)),
Description = "Downloading results",
Id = 4,
Status = LeafInputStatusType.Finishing
},
new LeafInputStatus
{
DateTime = DateTime.Today.Subtract(new TimeSpan(0,12,0)),
Description = "All done",
Id = 5,
Status = LeafInputStatusType.Complete
}
}
};
}
[Test]
public void CanConstructFromLeafInputFile()
{
var leafInput = GetLeafInput();
var viewModel = new LeafInputDetails(leafInput);
Assert.That(viewModel.CurrentStatus, Is.EqualTo(leafInput.CurrentStatus.ToString()));
Assert.That(viewModel.StatusHistory, Has.Count.EqualTo(5));
Assert.That(viewModel.StatusHistory[0].Status, Is.EqualTo("Pending"));
Assert.That(viewModel.StatusHistory[1].Status, Is.EqualTo("Starting"));
Assert.That(viewModel.StatusHistory[4].Status, Is.EqualTo("Complete"));
//Assert.That(viewModel., Is.EqualTo(leafInput.Id));
//Assert.That(viewModel.LeafOutputFilenames, Has.Length.EqualTo(1));
//Assert.That(viewModel., Is.EqualTo(leafInput.Identifier));
Assert.That(viewModel.SiteId, Is.EqualTo(leafInput.SiteId));
//Assert.That(viewModel.LeafInputPhotosynthesisType, Is.EqualTo(leafInput.PhotosynthesisType.Name));
}
}
}
@@ -0,0 +1,80 @@
using System;
using LeafWeb.Core.Entities;
using LeafWeb.WebCms.Models;
using NUnit.Framework;
namespace LeafWeb.WebCms.Tests.Models
{
[TestFixture]
public class ResultStatusViewModelTests
{
private LeafInput GetLeafInput()
{
return new LeafInput
{
CurrentStatus = LeafInputStatusType.Complete,
OutputFiles = new[] {new LeafOutputFile {Filename = "OutputFilename.txt"}},
Added = DateTime.Today,
Email = "test@email.com",
Identifier = "Ident I Fier",
Name = "My Name",
PhotosynthesisType = new PhotosynthesisType {Id = "1", Name = "1", SortOrder = 1},
InputFiles = new[]
{
new LeafInputFile
{
Filename = "MyFilename.ext",
Id = 3
}
}
};
}
[Test]
public void CanConstructFromLeafInputFile()
{
var leafInput = GetLeafInput();
var viewModel = new ResultStatusViewModel(leafInput);
Assert.That(viewModel.CurrentStatus, Is.EqualTo(leafInput.CurrentStatus.ToString()));
Assert.That(viewModel.LeafInputId, Is.EqualTo(leafInput.Id));
//Assert.That(viewModel.LeafOutputFilenames, Has.Length.EqualTo(1));
Assert.That(viewModel.LeafInputIdentifier, Is.EqualTo(leafInput.Identifier));
Assert.That(viewModel.LeafInputSiteId, Is.EqualTo(leafInput.SiteId));
Assert.That(viewModel.LeafInputPhotosynthesisType, Is.EqualTo(leafInput.PhotosynthesisType.Name));
}
[Test]
public void CanConstructFromLeafInputFile_Running()
{
var leafInput = GetLeafInput();
leafInput.CurrentStatus = LeafInputStatusType.Running;
leafInput.OutputFiles = new LeafOutputFile[0];
var viewModel = new ResultStatusViewModel(leafInput);
Assert.That(viewModel.CurrentStatus, Is.EqualTo(LeafInputStatusType.Running.ToString()));
//Assert.That(viewModel.LeafOutputFilenames, Has.Length.EqualTo(0));
}
[Test]
public void CanConstructFromLeafInputFile_Error()
{
var leafInput = GetLeafInput();
leafInput.CurrentStatus = LeafInputStatusType.Exception;
leafInput.StatusHistory = new []
{
new LeafInputStatus
{
DateTime = DateTime.Today,
LeafInput = leafInput,
Description = "My Error",
Status = LeafInputStatusType.Exception
}
};
var viewModel = new ResultStatusViewModel(leafInput);
Assert.That(viewModel.CurrentStatus, Is.EqualTo(LeafInputStatusType.Exception.ToString()));
//Assert.That(viewModel.ErrorMessages[0], Is.EqualTo(leafInput.StatusHistory.First().Description));
}
}
}