Skip to content

Instantly share code, notes, and snippets.

@stdray
Created July 1, 2016 14:27
Show Gist options
  • Save stdray/ccb8bf45546ee5609e1cacb94db9422d to your computer and use it in GitHub Desktop.
Save stdray/ccb8bf45546ee5609e1cacb94db9422d to your computer and use it in GitHub Desktop.
[TestFixture, Category(TestCategory.Fz44Grab)]
public class NotificationTests : TransformBaseTests
{
[TestCase("0131200001016003623.xml")]
public void Notification_TransformResultState_ShouldBeCompleted(string @group)
{
Transform_ShouldBeCompleted_AndHash_ShouldBeRepeatable(@group);
}
#region Тендеры
[TestCase("0175100001316000054.xml")]
public void Tender_Participants_ShouldBeAny(string group)
{
var tender = Tender(group);
Assert.IsTrue(tender.Participants.Any());
}
[TestCase("EP44", "0175100001316000054.xml")]
[TestCase("EA44", "0131200001016003623.xml")]
public void Tender_PlacingWayCode_SholdBeContainsExpected(string exected, string group)
{
var tender = Tender(group);
StringAssert.Contains(exected, tender.MainInfo.PlacingWay.Code);
}
[TestCase("Закупка у единственного поставщика", "0175100001316000054.xml")]
public void Tender_PlacingWayName_SholdBeContainsExpected(string exected, string group)
{
var tender = Tender(group);
StringAssert.Contains(exected, tender.MainInfo.PlacingWay.Name);
}
[TestCase("2016-06-29 00:00:00", "0175100001316000054.xml")]
public void Tender_PublishDate_ShouldBeExpected(string expected, string group)
{
var tender = Tender(group);
Assert.AreEqual(expected, tender.PublishInfo.Date.Date);
}
#endregion
#region Лоты
[TestCase("2016-06-29 00:00:00", "0175100001316000054.xml")]
public void Lot_PublishDate_ShouldBeExpected(string expected, string group)
{
var tender = Tender(group);
Assert.AreEqual(expected, tender.PublishInfo.Date.Date);
}
[TestCase("Закупка колбасы вареной и сосисок", 1, "0175100001316000054.xml")]
public void Lot_MainInfoName_ShouldContainsExpected(string expected, int lotNum, string group)
{
var lot = Lot(group, lotNum);
StringAssert.Contains(expected, lot.MainInfo.Name);
}
[TestCase("0175100001316000054.xml")]
public void Lot_Participants_ShouldBeAny(string group)
{
var lots = Lots(group);
foreach (var lot in lots)
Assert.IsTrue(lot.Participants.Any());
}
[TestCase("792000", 1, "0175100001316000054.xml")]
public void Lot_MainInfoStartPrice_ShouldBeExpected(object expectedObj, int lotNum, string group)
{
var expected = Convert.ToDecimal(expectedObj);
var lot = Lot(group, lotNum);
Assert.AreEqual(expected, lot.MainInfo.StartPrice);
}
[TestCase(ClassiferType.OKPD_2, "10.13.14.112", 1, "0175100001316000054.xml")]
public void Lot_OptionalInfoClassifiers_ShouldContainsExpected(ClassiferType type, string code, int lotNum, string group)
{
var lot = Lot(group, 1);
Assert.IsTrue(lot.OptionalInfo.Classifiers.Any(c => c.Type == type && c.Code == code));
}
#endregion
public override TransformerBase CreateTransformer(ExternalDocumentsGroupQuery @group)
{
return new NotificationTransformer(@group, minMainEntityIdentityLen: 1);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment