public async Task TestAuthSerialization() { var auth = new WeConnectAuth("*****@*****.**", "secretpassword"); var client = new WeConnectPortalClient(new MockCookieHttpMessageHandler() .AddAuthMock() .AddEmanager() .ToMockProvider(auth)); await client.GetEManager(); Assert.Equal(ExpectedSessionToken, auth.AccessToken); }
public async Task TestAuthDeserialization() { // explicitly not providing any credentials var auth = new WeConnectAuth(string.Empty, string.Empty); // emulate that the session was persisted and is now restored. // this should give us access without a username and password await auth.UpdateTokenAsync(ExpectedSessionToken, DateTime.MinValue, null); var mockedHandler = new MockCookieHttpMessageHandler(); var client = new WeConnectPortalClient(mockedHandler .AddAuthMock(out MockedRequest mockedRequest) .AddEmanager() .ToMockProvider(auth)); var result = await client.GetEManager(); // assert we could load data successfully Assert.Equal("AVAILABLE", result.Rbc.Status?.ExtPowerSupplyState); // assert that no new authentication was needed to be called Assert.Equal(0, mockedHandler.GetMatchCount(mockedRequest)); }