Używam dołączonych zachowań, aby dodać funkcję przeciągania i upuszczania do mojego kodu. Do tej pory wszystko działa dobrze, ale mój problem polega na tym, że chcę przetestować moje klasy zachowań.test jednostki wpf
Na przykład, jedna z klas zachowań byłoby coś jak poniżej:
public class DroppableContainerBehavior: Behavior<FrameworkElement>
{
protected override void OnAttached()
{
base.OnAttached();
AssociatedObject.AllowDrop = true;
AssociatedObject.Drop += new DragEventHandler(AssociatedObject_Drop);
AssociatedObject.DragOver += new DragEventHandler(AssociatedObject_DragOver);
AssociatedObject.DragLeave += new DragEventHandler(AssociatedObject_DragLeave);
}
private void AssociatedObject_Drop(object sender, DragEventArgs e)
{
...
}
}
Mój problem teraz jest, gdy chcę utworzyć badanej jednostki dla metody AssociatedObject_Drop, i musiałby stworzyć DragEventArgs obiekt, ale ta klasa jest zapieczętowana.
Odniosłem wrażenie, że robię coś źle .. Moje pytanie brzmi, czy powinienem testować moje zachowania? Zachowania są powiązane z interfejsem użytkownika i zwykle nie warto go testować. Czy mam rację? Może muszę zmienić kod zachowania, aby był bardziej sprawdzalny? jakieś pomysły?
Dzięki za pomoc!
i czy wiesz, w jaki sposób mogę utworzyć obiekt, nawet jego klasa jest zaplombowana? –
Zamknięta klasa nie może być dziedziczona, ale można utworzyć instancję tej klasy. zobacz http://msdn.microsoft.com/en-us/library/88c54tsw%28v=vs.71%29.aspx – Arseny
um, przepraszam problem podczas robienia nowych DragEventArgs() nie jest zapieczętowany. Nie mogę utworzyć instancji, ponieważ konstruktor jest wewnętrzny. –