Untis API Integration
This commit is contained in:
@@ -86,4 +86,39 @@ public sealed class WebUntisSettingsServiceTests
|
||||
Assert.Equal(at, reloaded.LastSyncAt);
|
||||
Assert.Equal("3 Vertretungen erkannt", reloaded.LastSyncStatus);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ApiCredentials_SindVerschluesseltUndPersistieren()
|
||||
{
|
||||
var path = BuildTempPath();
|
||||
var credentials = new WebUntisCredentials("schule", "mese.webuntis.com", "lehrkraft", "sehr geheim");
|
||||
var service = new WebUntisSettingsService(path);
|
||||
|
||||
service.SetApiCredentials(credentials);
|
||||
service.SetTeacherUntisId(4711);
|
||||
|
||||
var raw = File.ReadAllText(Path.Combine(path, "webuntis-settings.json"));
|
||||
var reloaded = new WebUntisSettingsService(path);
|
||||
Assert.DoesNotContain("sehr geheim", raw);
|
||||
Assert.True(reloaded.ApiIsConfigured);
|
||||
Assert.Equal(credentials, reloaded.GetApiCredentials());
|
||||
Assert.Equal(4711, reloaded.TeacherUntisId);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ClearApiCredentials_LaesstIcalKonfigurationUnveraendert()
|
||||
{
|
||||
var service = new WebUntisSettingsService(BuildTempPath());
|
||||
service.SetIcalUrl(SampleUrl);
|
||||
service.SetApiCredentials(new("schule", "", "user", "password"));
|
||||
service.SetTeacherUntisId(12);
|
||||
|
||||
service.ClearApiCredentials();
|
||||
|
||||
Assert.False(service.ApiIsConfigured);
|
||||
Assert.Null(service.GetApiCredentials());
|
||||
Assert.Null(service.TeacherUntisId);
|
||||
Assert.True(service.IsConfigured);
|
||||
Assert.Equal(SampleUrl, service.GetIcalUrl());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user