public void BatchOutputPostBuilder_WithEnergyUsed_SetsUsed() { var builder = new BatchOutputPostBuilder().SetDate(DateTime.Today) .SetEnergyUsed(31132); Assert.That(builder.OutputPost.EnergyUsed, Is.EqualTo(31132)); }
public void BatchOutputPostBuilder_WithoutEnergyGeneratedAndEnergyUsed_CannotBuild() { var builder = new BatchOutputPostBuilder().SetDate(DateTime.Today); Assert.Throws <InvalidOperationException>(() => { builder.Build(); }); }
public void BatchOutputPostBuilder_AfterReset_HasNoStateLeft() { var builder = new BatchOutputPostBuilder().SetDate(DateTime.Today); IBatchOutputPost output = builder.OutputPost; builder.Reset(); Assert.That(builder.OutputPost, Is.Not.SameAs(output)); }
public async Task OutputService_AddBatchOutput_SendsCorrectContent() { PVOutputClient client = TestUtility.GetMockClient(out MockHttpMessageHandler testProvider); testProvider.ExpectUriFromBase(ADDBATCHOUTPUT_URL) .WithQueryString("data=20200101,11000,9000,,,,,,,,,,;20200101,,,12000,,,Partly Cloudy,,,Test,,,;") .RespondPlainText(""); var builder = new BatchOutputPostBuilder(); var outputs = new List <IBatchOutputPost>(); outputs.Add(builder.SetDate(new DateTime(2020, 1, 1)).SetEnergyGenerated(11000).SetEnergyExported(9000).BuildAndReset()); outputs.Add(builder.SetDate(new DateTime(2020, 1, 1)).SetEnergyUsed(12000).SetCondition(WeatherCondition.PartlyCloudy).SetComments("Test").BuildAndReset()); await client.Output.AddBatchOutputAsync(outputs); testProvider.VerifyNoOutstandingExpectation(); }