77 lines
1.6 KiB
C#
77 lines
1.6 KiB
C#
using System;
|
|
using System.IO;
|
|
using AutoMapper;
|
|
using InventoryTraker.Web.Models;
|
|
using InventoryTraker.Web.Utilities;
|
|
using NUnit.Framework;
|
|
|
|
namespace InventoryTraker.Web.Tests.Utilities
|
|
{
|
|
[TestFixture]
|
|
public class MovementReportWriterTests
|
|
{
|
|
private IMapper _mapper;
|
|
|
|
[OneTimeSetUp]
|
|
public void StartUp()
|
|
{
|
|
_mapper = AutoMapperConfig.Config.CreateMapper();
|
|
}
|
|
|
|
private readonly MovementReport _movementReport
|
|
= new MovementReport
|
|
{
|
|
Month = new DateTime(2016, 04, 1),
|
|
Items = new[]
|
|
{
|
|
new MovementReportItem
|
|
{
|
|
InventoryType = new InventoryTypeViewModel
|
|
{
|
|
Name = "Beans",
|
|
ContainerType = "#300 cans",
|
|
Id = 1,
|
|
Identifier = "10001",
|
|
UnitsPerCase = 24
|
|
},
|
|
BeginningQuantity = 7,
|
|
AddedQuantity = 5,
|
|
TotalAvailableQuantity = 12,
|
|
AdjustmentQuantity = 3,
|
|
DistributedQuantity = 1,
|
|
EndingQuantity = 8
|
|
},
|
|
new MovementReportItem
|
|
{
|
|
InventoryType = new InventoryTypeViewModel
|
|
{
|
|
Name = "Peanut Butter",
|
|
ContainerType = "16oz jars",
|
|
Id = 2,
|
|
Identifier = "20001",
|
|
UnitsPerCase = 12
|
|
},
|
|
BeginningQuantity = 5,
|
|
AddedQuantity = 11,
|
|
TotalAvailableQuantity = 16,
|
|
AdjustmentQuantity = 0,
|
|
DistributedQuantity = 2,
|
|
EndingQuantity = 14
|
|
}
|
|
}
|
|
};
|
|
|
|
[Test, Explicit]
|
|
public void Write()
|
|
{
|
|
using
|
|
(var outputFile
|
|
= new StreamWriter(Path.Combine(@"c:\temp", "MovementReport.xlsx")))
|
|
{
|
|
var writer = new MovementReportWriter(_mapper);
|
|
writer.WriteStream(_movementReport, outputFile.BaseStream);
|
|
}
|
|
}
|
|
}
|
|
}
|