mifriis / edge-of-kuiper

Textbased space rpg somewhat based on real science
Other
7 stars 3 forks source link

Modules now factor into ship total mass. #42

Closed mifriis closed 2 years ago

mifriis commented 2 years ago

FuelTank is the first module added FuelTanks determine max fuelmass

github-actions[bot] commented 2 years ago

Test- and Coverage-report - PR #42

Run Summary

Overall Result: ✔️ Pass
Pass Rate: 100%
Run Duration: 2s 480ms
Date: 2022-09-07 14:20:01 - 2022-09-07 14:20:03
Framework: .NETCoreApp,Version=v6.0
Total Tests: 91

✔️ Passed ❌ Failed ⚠️ Skipped
91 0 0
100% 0% 0%

Result Sets

kuiper-tests.dll - 100%

Full Results
Result Test Duration
✔️ Passed Kuiper.Tests.Unit.Services.ShipShould.CalculateAccelerationGsCorrectly 5ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipShould.CalculateMassBasedOnModules < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipShould.DeductFuelBasedOnSpentDVCorrectly < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipShould.CalculateDeltaVelocityCorrectly < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipShould.EmptyTheTankOnFullDeltaVSpent < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipShould.ReturnSpentFuel < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipShould.CalculateAccelerationCorrectly < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipShould.RefuelWithoutOverFilling < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipShould.NotPossibleToForceSpendingMoreFuelThanAvailiable < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipShould.RefuelWithoutFillingTheTank < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.AccountServiceShould.ReturnTransactionalAcitivitesFromAnAccount 97ms
✔️ Passed Kuiper.Tests.Unit.Services.AccountServiceShould.WithdrawFromAnAccount 3ms
✔️ Passed Kuiper.Tests.Unit.Services.AccountServiceShould.DepositInAnAccount < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.ReturnBodyBasedOnName 128ms
✔️ Passed Kuiper.Tests.Unit.Domain.AsteroidShould.Create 1ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.ReturnCorrectKmDistanceBetweenBodies 4ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.ExceptionThrownIfAttemptToCreateSameNameBody 7ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.RemoveABodyThatDoesntExistToTheSolarSystemSuccessfully 15ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.ReturnSattelitesAroundABody 2ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.ReturnCorrectAuDistanceBetweenBodies < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.CanRemoveABodyWithSatellitesFromTheSolarSystemSuccessfully < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.RemoveAnAsteroidFromTheSolarSystemSuccessfully 1ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.AddAnAsteroidToTheSolarSystemSuccessfully 1ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.ReturnCorrectKmDistanceBetweenAMoonAndADifferentBody < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.CanAddABodyWithSatellitesFromTheSolarSystemSuccessfully < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.AddABodyToTheSolarSystemSuccessfully < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.ReturnAllBodiesUnderAStar < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ScanForAsteroidsEventShould.ExecuteTheRightServices 43ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.RemoveABodyToTheSolarSystemSuccessfully < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.ReturnAsteroidBasedOnName < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.SolarSystemServiceShould.ReturnCorrectAuDistanceBetweenABodyAndAsteroidCorrectly < 1ms
✔️ Passed Kuiper.Tests.Unit.Repositories.JsonFileSolarSystemRepositoryShould.SetCorrectName 10ms
✔️ Passed Kuiper.Tests.Unit.Repositories.JsonFileSolarSystemRepositoryShould.SetCorrectOrbitRadius < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.SetCourseEventShould.ExecuteTheRightServices 15ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.SetCorrectOrbitRadius < 1ms
✔️ Passed Kuiper.Tests.Unit.Repositories.JsonFileSolarSystemRepositoryShould.CreateStarBodyTypeFromJson 5ms
✔️ Passed Kuiper.Tests.Unit.Repositories.JsonFileSolarSystemRepositoryShould.SetCorrectOrbitVelocity < 1ms
✔️ Passed Kuiper.Tests.Unit.Repositories.JsonFileSolarSystemRepositoryShould.CreatePlanetBodyTypeFromJson < 1ms
✔️ Passed Kuiper.Tests.Unit.Repositories.JsonFileSolarSystemRepositoryShould.SetCorrectOriginDegrees < 1ms
✔️ Passed Kuiper.Tests.Unit.Repositories.JsonFileSolarSystemRepositoryShould.CreateMoonBodyTypeFromJson < 1ms
✔️ Passed Kuiper.Tests.Unit.Repositories.JsonFileSolarSystemRepositoryShould.NotFailIfJsonFileExist < 1ms
✔️ Passed Kuiper.Tests.Unit.Repositories.JsonFileSolarSystemRepositoryShould.CreateDwarfPlanetBodyTypeFromJson < 1ms
✔️ Passed Kuiper.Tests.Unit.Repositories.JsonFileSolarSystemRepositoryShould.CreateGasGiantBodyTypeFromJson < 1ms
✔️ Passed Kuiper.Tests.Unit.Repositories.JsonFileSolarSystemRepositoryShould.FailIfJsonFileDoesNotExist 1ms
✔️ Passed Kuiper.Tests.Unit.Repositories.JsonFileSolarSystemRepositoryShould.CreateCorrectAmountOfBodiesFromJson < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.AccountShould.WithdrawSucessfully < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.AccountShould.TransactionsHaveHumanOutput < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.AccountShould.KeepTransactionOfAcitvities < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.AccountShould.DepositSucessfully < 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.ReturnItsPositionInSpaceAtAGivenTime 7ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.AddBodyAsSatelliteIfItHasAParent 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.CreateAMoon < 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.CreateBodyWithOriginDegrees < 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.DontAddBodyAsSatelliteIfItsAnAsteroid < 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.ReturnItsInitialPositionInSpace < 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.CreateBodyWithVelocity < 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.CreateAGasGiant < 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.SetCorrectOrbitVelocity < 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.CreateAStar < 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.CreateADwarfPlanet < 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.SetCorrectName < 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.CreateAPlanet < 1ms
✔️ Passed Kuiper.Tests.Unit.Domain.CelestialBodyShould.SetCorrectOriginDegrees < 1ms
✔️ Passed Kuiper.Tests.Unit.Systems.GameTimeServiceShould.ThrowExceptionIfRealStartTimeNeverSet < 1ms
✔️ Passed Kuiper.Tests.Unit.Systems.GameTimeServiceShould.ReturnGameStartDate 3ms
✔️ Passed Kuiper.Tests.Unit.Systems.GameTimeServiceShould.ReturnGamDateInNextWeekWhenStartingRealYesterday < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.CaptainServiceShould.SaveSuccessfully 16ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipEngineShould.CalculateThrustToWeightRationCorrectly 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipEngineShould.CalculateExhaustVelocityCorretly < 1ms
✔️ Passed Kuiper.Tests.Unit.Systems.ConsoleCommandParseShould.ParseAndExecute_WithNullGroupedCommand_ParsesWithNameAsGroup 12ms
✔️ Passed Kuiper.Tests.Unit.Services.CaptainServiceShould.LoadCaptainWhenSavesFound 15ms
✔️ Passed Kuiper.Tests.Unit.Systems.ConsoleCommandParseShould.ParseAndExecute_WithArgs_ExecutesWithArgs < 1ms
✔️ Passed Kuiper.Tests.Unit.Systems.ConsoleCommandParseShould.ParseAndExecute_WithoutArgs_ExecutesWithNullArgs < 1ms
✔️ Passed Kuiper.Tests.Unit.Systems.ConsoleCommandParseShould.Parse_WithoutArgs_ParsesWithNullArgs < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.CaptainServiceShould.SetupANewCaptainIfNoSavesFound 2ms
✔️ Passed Kuiper.Tests.Unit.Systems.ConsoleCommandParseShould.Parse_WithNullGroupedCommand_ParsesWithNameAsGroup < 1ms
✔️ Passed Kuiper.Tests.Unit.Systems.ConsoleCommandParseShould.Parse_WithArgs_ParsesWithArgs < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.CaptainServiceShould.ReturnCaptainIfAlreadySetup 2ms
✔️ Passed Kuiper.Tests.Unit.Services.CaptainServiceShould.ThrowIfCaptainIsNotSet < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipServiceShould.DoNothingWhenTheDestinationIsFubar 3ms
✔️ Passed Kuiper.Tests.Unit.Services.EventServiceShould.ExecuteAllEventsThatHappenedBeforeNow 8ms
✔️ Passed Kuiper.Tests.Unit.Services.EventServiceShould.AddEventToEventList < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipServiceShould.UpdateShipStatusWhenDestinationValid 5ms
✔️ Passed Kuiper.Tests.Unit.Services.EventServiceShould.RemoveEventFromEventList < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipServiceShould.ShowDestinationsWhenCurrentLocationIsAsteroid 4ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipServiceShould.UpdateShipStatusWhenDestinationReached < 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipServiceShould.ReturnMergedListOfPlanetMoonsAndAsteroid 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipServiceShould.UpdateShipStatusWhenDestinationIsAsteroid 3ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipServiceShould.CalculatedVToTarget 2ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipServiceShould.DoNothingWhenTheDestinationIsNotReachable 1ms
✔️ Passed Kuiper.Tests.Unit.Services.ShipServiceShould.CalculateTimeToTarget 3ms

Run Messages

Informational

[xUnit.net 00:00:00.00] xUnit.net VSTest Adapter v2.4.3+1b45f5407b (64-bit .NET 6.0.8)
[xUnit.net 00:00:00.59]   Discovering: kuiper-tests
[xUnit.net 00:00:00.63]   Discovered:  kuiper-tests
[xUnit.net 00:00:00.64]   Starting:    kuiper-tests
[xUnit.net 00:00:00.96]   Finished:    kuiper-tests
Warning

Error


Created using Liquid Test Reports

Code Coverage

# Summary
Generated on: 09/07/2022 - 14:20:06
Parser: CoberturaParser
Assemblies: 1
Classes: 25
Files: 25
Covered lines: 541
Uncovered lines: 76
Coverable lines: 617
Total lines: 1178
Line coverage: 87.6% (541 of 617)
Covered branches: 63
Total branches: 74
Branch coverage: 85.1% (63 of 74)
Covered methods: 123
Total methods: 139
Method coverage: 88.4% (123 of 139)
Name Covered Uncovered Coverable Total Line coverage Covered Total Branch coverage Covered Total Method coverage
kuiper-game 541 76 617 1178 87.6% 63 74 85.1% 123 139 88.4%
Kuiper.Domain.Account 21 0 21 44 100% 0 0 5 5 100%
Kuiper.Domain.Captain 16 0 16 30 100% 0 0 7 7 100%
Kuiper.Domain.CelestialBodies.CelestialBody 46 0 46 82 100% 6 6 100% 12 12 100%
Kuiper.Domain.Mining.Asteroid 20 0 20 32 100% 0 0 5 5 100%
Kuiper.Domain.Physics 1 0 1 8 100% 0 0 1 1 100%
Kuiper.Domain.SaveFile 5 0 5 17 100% 0 0 5 5 100%
Kuiper.Domain.Ship.FuelTank 14 0 14 38 100% 0 0 5 5 100%
Kuiper.Domain.Ship.Ship 57 0 57 101 100% 6 6 100% 16 16 100%
Kuiper.Domain.Ship.ShipEngine 18 1 19 35 94.7% 0 0 6 7 85.7%
Kuiper.Domain.ShipStatusExtensions 0 6 6 24 0% 0 4 0% 0 1 0%
Kuiper.Domain.Transaction 12 0 12 22 100% 0 0 5 5 100%
Kuiper.Repositories.JsonFileSolarSystemRepository 25 14 39 72 64.1% 6 8 75% 3 6 50%
Kuiper.Services.AccountService 14 0 14 34 100% 0 0 5 5 100%
Kuiper.Services.CaptainService 62 0 62 99 100% 6 6 100% 5 5 100%
Kuiper.Services.EventService 36 0 36 58 100% 12 12 100% 5 5 100%
Kuiper.Services.GameTimeService 16 0 16 44 100% 2 2 100% 5 5 100%
Kuiper.Services.MiningService 0 15 15 34 0% 0 0 0 3 0%
Kuiper.Services.ShipService 54 0 54 86 100% 6 6 100% 7 7 100%
Kuiper.Services.SolarSystemService 65 8 73 126 89% 10 12 83.3% 14 15 93.3%
Kuiper.Systems.CaptainsConsole 0 11 11 29 0% 0 0 0 2 0%
Kuiper.Systems.CommandInfrastructure.ConsoleCommandParser 28 12 40 69 70% 9 12 75% 3 5 60%
Kuiper.Systems.ConsoleWriter 8 0 8 19 100% 0 0 2 2 100%
Kuiper.Systems.Events.ScanForAsteroidsEvent 13 0 13 30 100% 0 0 3 3 100%
Kuiper.Systems.Events.SetCourseEvent 10 0 10 24 100% 0 0 4 4 100%
Kuiper.Systems.Mining.SCanForAsteroidsCommand 0 9 9 21 0% 0 0 0 3 0%