Kapitel 7 abgeschlossen.
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
using LehrerApp.Core.Models;
|
||||
using LehrerApp.Desktop.ViewModels.Students;
|
||||
using Xunit;
|
||||
|
||||
namespace LehrerApp.Desktop.Tests;
|
||||
|
||||
public class StudentListViewModelTests
|
||||
{
|
||||
private readonly Student _anna = new() { FirstName = "Anna", LastName = "Beispiel", Gender = Gender.W };
|
||||
private readonly Student _ben = new() { FirstName = "Ben", LastName = "Muster", Gender = Gender.M };
|
||||
private readonly LearningGroup _group = new() { Name = "Mathematik 7a" };
|
||||
|
||||
[Fact]
|
||||
public void SucheFindetSchuelerWeiterhinUeberNamen()
|
||||
{
|
||||
var vm = BuildViewModel();
|
||||
|
||||
vm.SearchText = "Anna";
|
||||
|
||||
Assert.Single(vm.Students);
|
||||
Assert.Equal(_anna.Id, vm.Students[0].Id);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void SucheFindetSchuelerUeberLerngruppe()
|
||||
{
|
||||
var vm = BuildViewModel();
|
||||
|
||||
vm.SearchText = "7a";
|
||||
|
||||
Assert.Single(vm.Students);
|
||||
Assert.Equal(_ben.Id, vm.Students[0].Id);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void LeereSucheZeigtAlleSchueler()
|
||||
{
|
||||
var vm = BuildViewModel();
|
||||
|
||||
vm.SearchText = " ";
|
||||
|
||||
Assert.Equal(2, vm.Students.Count);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ListeneintraegeZeigenAvatarAusGespeichertemGeschlecht()
|
||||
{
|
||||
var vm = BuildViewModel();
|
||||
|
||||
Assert.Equal("W", vm.Students.Single(s => s.Id == _anna.Id).AvatarLabel);
|
||||
Assert.Equal("M", vm.Students.Single(s => s.Id == _ben.Id).AvatarLabel);
|
||||
}
|
||||
|
||||
private StudentListViewModel BuildViewModel() => new(
|
||||
new FakeStudents([_anna, _ben]),
|
||||
new FakeGroups([_group]),
|
||||
new FakeMemberships([
|
||||
new GroupMembership { StudentId = _ben.Id, GroupId = _group.Id },
|
||||
]));
|
||||
}
|
||||
Reference in New Issue
Block a user