Hej, posiadam kod, który działa mi poprawnie, utknąłem na tym, że nie wiem jak go przetestować, już od kilku godzin próbuję to rozgryźć i brakuje mi pomysłów.
W konstruktorze modelu widoku posiadam komendę, która wywołuje metodę:
OpenGroupCommand = new DelegateCommand(OnOpenGroupExecute);
Metoda wygląda następująco:
private void OnOpenGroupExecute(object obj)
{
string groupName = (string)obj;
//otwiera widok, któremu jest przekazywany parametr groupName
//groupName jest przekazywany instancji GroupPageViewModel w klasie GroupPage.xaml.cs
Application.Current.MainPage.Navigation.PushAsync(new GroupPage(groupName));
}
Jak napisać testy jednostkowe tak, żeby się upewnić, czy groupName
jest przekazywana odpowiednio do innego modelu widoku? W tym innym modelu widoku parametr groupName
jest przekazywany własności GroupName
podczas instancji klasy:
public class GroupPageViewModel : ViewModelBase, IGroupPageViewModel
{
private string _groupName;
public GroupPageViewModel(string groupName)
{
LoadGroupName(groupName);
}
public void LoadGroupName(string groupName)
{
GroupName = groupName;
}
public string GroupName
{
get
{
return _groupName;
}
set
{
_groupName = value;
OnPropertyChanged();
}
}
}
Nie mam za bardzo pojęcia jak napisać do niego testy jednostkowe. Jak mockować to przy użyciu Moq
? Jak zrobić Setup? Gdzie mogę o tym poczytać więcej?