Wie verspotte ich mit MOQ Property Getter von Drittanbietern?C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Wie verspotte ich mit MOQ Property Getter von Drittanbietern?

Post by Anonymous »

Ich verwende eine externe Bibliothek, die einige Objekte zurückgibt.public class SimpleItem
{
public string Code { get; }
public int Quantity { get; }
internal SimpleItem()
{
}
[JsonConstructor]
internal SimpleItem(string code, int quantity)
{
Code = code;
Quantity = quantity;
}
}
< /code>
Ich möchte eine meiner Dienste testen, die Dinge basierend auf diesen Elementen berechnet.Mock mock = new Mock();
mock.SetupGet(i => i.Code).Returns(itemCode);
mock.SetupGet(i => i.Quantity).Returns(quantity);
< /code>
und: < /p>
Mock mock = new Mock();
mock.Setup(i => i.Code).Returns(itemCode);
mock.Setup(i => i.Quantity).Returns(quantity);
< /code>
, aber beide stellen die gleiche Ausnahme zur Laufzeit aus, was ich verstehe: < /p>
System.NotSupportedException: 'Unsupported expression: i => i.Code
Non-overridable members (here: SimpleItem.get_Code) may not be used in setup / verification expressions.'
< /code>
Bin ich fest? Sollte ich alle Klassen (50+) nur einpacken/abbilden, um einen Einheitstest zu testen? (Das ist ein kleines lustiges persönliches Projekt, keine große wartbare Sache.)

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post