Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set Output Params Correctly #197

Merged
merged 2 commits into from
Jan 1, 2024

Fix Issue With Delete Old Packages Task

864302c
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Merged

Set Output Params Correctly #197

Fix Issue With Delete Old Packages Task
864302c
Select commit
Loading
Failed to load commit list.
GitHub Actions / .NET Tests succeeded Jan 1, 2024 in 0s

.NET Tests ✅

Tests passed successfully

Report Passed Failed Skipped Time
src/TestResults/Aydsko.iRacingData.IntegrationTests.trx 9s
src/TestResults/net48/Aydsko.iRacingData.UnitTests.trx 125✅ 21s
src/TestResults/net6.0/Aydsko.iRacingData.UnitTests.trx 125✅ 18s
src/TestResults/net8.0/Aydsko.iRacingData.UnitTests.trx 125✅ 10s

✅ src/TestResults/Aydsko.iRacingData.IntegrationTests.trx

No tests found

✅ src/TestResults/net48/Aydsko.iRacingData.UnitTests.trx

125 tests were completed in 21s with 125 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Aydsko.iRacingData.UnitTests.CapturedResponseValidationTests 68✅ 5s
Aydsko.iRacingData.UnitTests.Converters.ServiceStatusHistoryItemArrayConverterConverterTests 2✅ 16ms
Aydsko.iRacingData.UnitTests.Converters.StatusTimeStampConverterTests 4✅ 1ms
Aydsko.iRacingData.UnitTests.Converters.StringFromStringOrNumberConverterTests 8✅ 8ms
Aydsko.iRacingData.UnitTests.Converters.TenThousandthSecondDurationConverterTests 8✅ 1ms
Aydsko.iRacingData.UnitTests.CookiePersistenceTests 3✅ 29ms
Aydsko.iRacingData.UnitTests.DataClientTrackAssetScreenshotUrisTests 4✅ 181ms
Aydsko.iRacingData.UnitTests.DictionaryExtensionTests 6✅ 9ms
Aydsko.iRacingData.UnitTests.PasswordEncodingTests 12✅ 132ms
Aydsko.iRacingData.UnitTests.ServicesTests 2✅ 419ms
Aydsko.iRacingData.UnitTests.TrackScreenshotServiceTests 2✅ 80ms
Aydsko.iRacingData.UnitTests.UrlExtensionsTests 6✅ 1ms

✅ Aydsko.iRacingData.UnitTests.CapturedResponseValidationTests

✅ GetBestLapStatisticsSuccessfulAsync
✅ GetCarAssetDetailsSuccessfulAsync
✅ GetCarClassesSuccessfulAsync
✅ GetCarsSuccessfulAsync
✅ GetCategoriesSuccessfulAsync
✅ GetClubHistoryLookupsSuccessfulAsync
✅ GetCountriesSuccessfulAsync
✅ GetCustomerLeagueSessionsAsync
✅ GetDivisionsSuccessfulAsync
✅ GetDriverAwardsSuccessfulAsync
✅ GetDriverInfoWithLicensesSuccessfulAsync
✅ GetDriverInfoWithoutLicensesSuccessfulAsync
✅ GetEventTypesSuccessfulAsync
✅ GetHostedSessionsCombinedSuccessfulAsync
✅ GetHostedSessionsSuccessfulAsync
✅ GetLeaguePointsSystemsSuccessfulAsync
✅ GetLeagueWithLicensesSucceedsAsync
✅ GetLeagueWithoutLicensesSucceedsAsync
✅ GetLicenseLookupsSuccessfulAsync
✅ GetLookupsSuccessfulAsync
✅ GetMemberChartDataSuccessfulAsync
✅ GetMemberDivisionSuccessfulAsync
✅ GetMemberInfoDuringMaintenanceThrowsAsync
✅ GetMemberInfoSucceedsAsync
✅ GetMemberParticipationCreditsSucceedsAsync
✅ GetMemberProfileSuccessfulAsync
✅ GetMemberRecapSuccessfulAsync
✅ GetMemberRecentRacesSucceedsAsync
✅ GetMemberSummarySuccessfulAsync
✅ GetMemberYearlyStatisticsSuccessfulAsync
✅ GetPastSeasonsForSeriesSuccessfulAsync
✅ GetRaceGuideSuccessfulAsync
✅ GetSeasonDriverStandingsSuccessfulAsync
✅ GetSeasonQualifyResultsSuccesfulAsync
✅ GetSeasonResultsHandlesBadRequestAsync
✅ GetSeasonsWithoutSeriesSuccessfulAsync
✅ GetSeasonsWithSeriesSuccessfulAsync
✅ GetSeasonTeamStandingsSuccessfulAsync
✅ GetSeasonTimeTrialResultsSuccessfulAsync
✅ GetSeasonTimeTrialStandingsSuccessfulAsync
✅ GetSeriesAssetsSuccessfulAsync
✅ GetSeriesSuccessfulAsync
✅ GetServiceStatusSuccessfulAsync
✅ GetSingleDriverSubsessionLapsForbiddenThrowsErrorsAsync
✅ GetSingleDriverSubsessionLapsSuccessfulAsync
✅ GetSpectatorSubsessionIdentifiersAsync
✅ GetStatisticsSeriesSuccesfulAsync
✅ GetSubsessionEventLogForbiddenThrowsErrorsAsync
✅ GetSubsessionEventLogSuccessfulAsync
✅ GetSubSessionLapChartSuccessfulAsync
✅ GetSubSessionResultForbiddenThrowsErrorsAsync
✅ GetSubSessionResultForLeagueSuccessfulAsync
✅ GetSubSessionResultForTeamSuccessfulAsync
✅ GetSubSessionResultSuccessfulAsync
✅ GetSubSessionResultUnauthorizedThrowsErrorsAsync
✅ GetTeamSubsessionLapsForbiddenThrowsErrorsAsync
✅ GetTeamSubsessionLapsSuccessfulAsync
✅ GetTeamSuccessfulAsync
✅ GetTimeAttackMemberSeasonResultsSuccessfulAsync
✅ GetTimeAttackSeriesSuccessfulAsync
✅ GetTrackAssetsSuccessfulAsync
✅ GetTracksSuccessfulAsync
✅ GetWorldRecordStatisticsSuccessfulAsync
✅ ListSeasonsSuccessfulAsync
✅ SearchDriversSuccessfulAsync
✅ SearchHostedResultsSuccessfulAsync
✅ SearchLeagueDirectorySuccessfulAsync
✅ SearchOfficialResultsSuccessfulAsync

✅ Aydsko.iRacingData.UnitTests.Converters.ServiceStatusHistoryItemArrayConverterConverterTests

✅ Read Value: 11:29:57 to 11:30:57 27 Jan 2023
✅ Write Value: 11:29:57 to 11:30:57 27 Jan 2023

✅ Aydsko.iRacingData.UnitTests.Converters.StatusTimeStampConverterTests

✅ Read Value: 11:19:12 27-Jan-2023
✅ Read Value: 22:29:57 27 Jan 2023
✅ Write Value: 11:19:12 27-Jan-2023
✅ Write Value: 22:29:57 27 Jan 2023

✅ Aydsko.iRacingData.UnitTests.Converters.StringFromStringOrNumberConverterTests

✅ Read Value: JSON Null value
✅ Read Value: JSON Number value of 1
✅ Read Value: JSON Number value of zero
✅ Read Value: JSON String value of 'ABC123'
✅ Write Value: JSON Null value
✅ Write Value: JSON Number value of 1
✅ Write Value: JSON Number value of zero
✅ Write Value: JSON String value of 'ABC123'

✅ Aydsko.iRacingData.UnitTests.Converters.TenThousandthSecondDurationConverterTests

✅ Read Value: 0 / 0:00.000
✅ Read Value: 600000 / 1:00.000
✅ Read Value: 834560 / 1:23.456
✅ Read Value: null / null
✅ Write Value: 0 / 0:00.000
✅ Write Value: 600000 / 1:00.000
✅ Write Value: 834560 / 1:23.456
✅ Write Value: null / null

✅ Aydsko.iRacingData.UnitTests.CookiePersistenceTests

✅ GivenOptionsWithARestoreFuncTheFuncIsCalledToGetTheCookiesAsync
✅ GivenOptionsWithASaveActionTheSaveActionIsCalledWithTheCookiesAsync
✅ GivenOptionsWithNullDelegateValuesWhenAMethodIsCalledThenItWillSucceedAsync

✅ Aydsko.iRacingData.UnitTests.DataClientTrackAssetScreenshotUrisTests

✅ GivenHungaroringTrack_ThenGetTrackAssetScreenshotUrisReturnsCorrectResultsAsync
✅ GivenHungaroringTrackId_ThenGetTrackAssetScreenshotUrisAsyncReturnsCorrectResultsAsync
✅ GivenSuzukaTrack_ThenGetTrackAssetScreenshotUrisReturnsCorrectResultsAsync
✅ GivenSuzukaTrackId_ThenGetScreenshotsByTrackIdReturnsCorrectResultsAsync

✅ Aydsko.iRacingData.UnitTests.DictionaryExtensionTests

✅ CheckAddParameterIfNotNull<Boolean>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.Boolean])
✅ CheckAddParameterIfNotNull<DateTime>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.DateTime])
✅ CheckAddParameterIfNotNull<EventType>(Aydsko.iRacingData.UnitTests.ExampleData`1[Aydsko.iRacingData.Common.EventType])
✅ CheckAddParameterIfNotNull<IEnumerable`1>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.Collections.Generic.IEnumerable`1[System.String]])
✅ CheckAddParameterIfNotNull<Int32[]>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.Int32[]])
✅ CheckAddParameterIfNotNull<String>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.String])

✅ Aydsko.iRacingData.UnitTests.PasswordEncodingTests

✅ LoginIsNotCalledIfCookiesAreSuccessfullyRestoredAsync("[email protected]","MyPassWord","xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ LoginIsNotCalledIfCookiesAreSuccessfullyRestoredAsync("[email protected]","SuperSecretPassword","nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaMethodAsync("[email protected]","MyPassWord","xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaMethodAsync("[email protected]","SuperSecretPassword","nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaMethodWithPasswordIsEncodedParamAsync("[email protected]","MyPassWord",False,"xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaMethodWithPasswordIsEncodedParamAsync("[email protected]","xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=",True,"xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaMethodWithPasswordIsEncodedParamAsync("[email protected]","nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=",True,"nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaMethodWithPasswordIsEncodedParamAsync("[email protected]","SuperSecretPassword",False,"nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaOptionsAsync("[email protected]","MyPassWord",False,"xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaOptionsAsync("[email protected]","xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=",True,"xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaOptionsAsync("[email protected]","nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=",True,"nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaOptionsAsync("[email protected]","SuperSecretPassword",False,"nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")

✅ Aydsko.iRacingData.UnitTests.ServicesTests

✅ LoginAndUserAgentDefaultWorksWhenResolvedFromServicesAsync
✅ LoginAndUserAgentWorksWhenResolvedFromServicesAsync

✅ Aydsko.iRacingData.UnitTests.TrackScreenshotServiceTests

✅ GivenHungaroringTrackId_ThenGetScreenshotsByTrackIdReturnsCorrectResultsAsync
✅ GivenSuzukaTrackId_ThenGetScreenshotsByTrackIdReturnsCorrectResultsAsync

✅ Aydsko.iRacingData.UnitTests.UrlExtensionsTests

✅ ValidateToUrlWithQueryMethod("https://example.com?a=b",[[foo, bar], [baz, bat]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[[=&?, =?&=?&]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[[foo, bar], [baz, bat]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[[foo, bar]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[[foo, System.String[]]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[])

✅ src/TestResults/net6.0/Aydsko.iRacingData.UnitTests.trx

125 tests were completed in 18s with 125 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Aydsko.iRacingData.UnitTests.CapturedResponseValidationTests 68✅ 3s
Aydsko.iRacingData.UnitTests.Converters.ServiceStatusHistoryItemArrayConverterConverterTests 2✅ 3ms
Aydsko.iRacingData.UnitTests.Converters.StatusTimeStampConverterTests 4✅ 0ms
Aydsko.iRacingData.UnitTests.Converters.StringFromStringOrNumberConverterTests 8✅ 0ms
Aydsko.iRacingData.UnitTests.Converters.TenThousandthSecondDurationConverterTests 8✅ 18ms
Aydsko.iRacingData.UnitTests.CookiePersistenceTests 3✅ 5ms
Aydsko.iRacingData.UnitTests.DataClientTrackAssetScreenshotUrisTests 4✅ 146ms
Aydsko.iRacingData.UnitTests.DictionaryExtensionTests 6✅ 5ms
Aydsko.iRacingData.UnitTests.PasswordEncodingTests 12✅ 15ms
Aydsko.iRacingData.UnitTests.ServicesTests 2✅ 483ms
Aydsko.iRacingData.UnitTests.TrackScreenshotServiceTests 2✅ 67ms
Aydsko.iRacingData.UnitTests.UrlExtensionsTests 6✅ 0ms

✅ Aydsko.iRacingData.UnitTests.CapturedResponseValidationTests

✅ GetBestLapStatisticsSuccessfulAsync
✅ GetCarAssetDetailsSuccessfulAsync
✅ GetCarClassesSuccessfulAsync
✅ GetCarsSuccessfulAsync
✅ GetCategoriesSuccessfulAsync
✅ GetClubHistoryLookupsSuccessfulAsync
✅ GetCountriesSuccessfulAsync
✅ GetCustomerLeagueSessionsAsync
✅ GetDivisionsSuccessfulAsync
✅ GetDriverAwardsSuccessfulAsync
✅ GetDriverInfoWithLicensesSuccessfulAsync
✅ GetDriverInfoWithoutLicensesSuccessfulAsync
✅ GetEventTypesSuccessfulAsync
✅ GetHostedSessionsCombinedSuccessfulAsync
✅ GetHostedSessionsSuccessfulAsync
✅ GetLeaguePointsSystemsSuccessfulAsync
✅ GetLeagueWithLicensesSucceedsAsync
✅ GetLeagueWithoutLicensesSucceedsAsync
✅ GetLicenseLookupsSuccessfulAsync
✅ GetLookupsSuccessfulAsync
✅ GetMemberChartDataSuccessfulAsync
✅ GetMemberDivisionSuccessfulAsync
✅ GetMemberInfoDuringMaintenanceThrowsAsync
✅ GetMemberInfoSucceedsAsync
✅ GetMemberParticipationCreditsSucceedsAsync
✅ GetMemberProfileSuccessfulAsync
✅ GetMemberRecapSuccessfulAsync
✅ GetMemberRecentRacesSucceedsAsync
✅ GetMemberSummarySuccessfulAsync
✅ GetMemberYearlyStatisticsSuccessfulAsync
✅ GetPastSeasonsForSeriesSuccessfulAsync
✅ GetRaceGuideSuccessfulAsync
✅ GetSeasonDriverStandingsSuccessfulAsync
✅ GetSeasonQualifyResultsSuccesfulAsync
✅ GetSeasonResultsHandlesBadRequestAsync
✅ GetSeasonsWithoutSeriesSuccessfulAsync
✅ GetSeasonsWithSeriesSuccessfulAsync
✅ GetSeasonTeamStandingsSuccessfulAsync
✅ GetSeasonTimeTrialResultsSuccessfulAsync
✅ GetSeasonTimeTrialStandingsSuccessfulAsync
✅ GetSeriesAssetsSuccessfulAsync
✅ GetSeriesSuccessfulAsync
✅ GetServiceStatusSuccessfulAsync
✅ GetSingleDriverSubsessionLapsForbiddenThrowsErrorsAsync
✅ GetSingleDriverSubsessionLapsSuccessfulAsync
✅ GetSpectatorSubsessionIdentifiersAsync
✅ GetStatisticsSeriesSuccesfulAsync
✅ GetSubsessionEventLogForbiddenThrowsErrorsAsync
✅ GetSubsessionEventLogSuccessfulAsync
✅ GetSubSessionLapChartSuccessfulAsync
✅ GetSubSessionResultForbiddenThrowsErrorsAsync
✅ GetSubSessionResultForLeagueSuccessfulAsync
✅ GetSubSessionResultForTeamSuccessfulAsync
✅ GetSubSessionResultSuccessfulAsync
✅ GetSubSessionResultUnauthorizedThrowsErrorsAsync
✅ GetTeamSubsessionLapsForbiddenThrowsErrorsAsync
✅ GetTeamSubsessionLapsSuccessfulAsync
✅ GetTeamSuccessfulAsync
✅ GetTimeAttackMemberSeasonResultsSuccessfulAsync
✅ GetTimeAttackSeriesSuccessfulAsync
✅ GetTrackAssetsSuccessfulAsync
✅ GetTracksSuccessfulAsync
✅ GetWorldRecordStatisticsSuccessfulAsync
✅ ListSeasonsSuccessfulAsync
✅ SearchDriversSuccessfulAsync
✅ SearchHostedResultsSuccessfulAsync
✅ SearchLeagueDirectorySuccessfulAsync
✅ SearchOfficialResultsSuccessfulAsync

✅ Aydsko.iRacingData.UnitTests.Converters.ServiceStatusHistoryItemArrayConverterConverterTests

✅ Read Value: 11:29:57 to 11:30:57 27 Jan 2023
✅ Write Value: 11:29:57 to 11:30:57 27 Jan 2023

✅ Aydsko.iRacingData.UnitTests.Converters.StatusTimeStampConverterTests

✅ Read Value: 11:19:12 27-Jan-2023
✅ Read Value: 22:29:57 27 Jan 2023
✅ Write Value: 11:19:12 27-Jan-2023
✅ Write Value: 22:29:57 27 Jan 2023

✅ Aydsko.iRacingData.UnitTests.Converters.StringFromStringOrNumberConverterTests

✅ Read Value: JSON Null value
✅ Read Value: JSON Number value of 1
✅ Read Value: JSON Number value of zero
✅ Read Value: JSON String value of 'ABC123'
✅ Write Value: JSON Null value
✅ Write Value: JSON Number value of 1
✅ Write Value: JSON Number value of zero
✅ Write Value: JSON String value of 'ABC123'

✅ Aydsko.iRacingData.UnitTests.Converters.TenThousandthSecondDurationConverterTests

✅ Read Value: 0 / 0:00.000
✅ Read Value: 600000 / 1:00.000
✅ Read Value: 834560 / 1:23.456
✅ Read Value: null / null
✅ Write Value: 0 / 0:00.000
✅ Write Value: 600000 / 1:00.000
✅ Write Value: 834560 / 1:23.456
✅ Write Value: null / null

✅ Aydsko.iRacingData.UnitTests.CookiePersistenceTests

✅ GivenOptionsWithARestoreFuncTheFuncIsCalledToGetTheCookiesAsync
✅ GivenOptionsWithASaveActionTheSaveActionIsCalledWithTheCookiesAsync
✅ GivenOptionsWithNullDelegateValuesWhenAMethodIsCalledThenItWillSucceedAsync

✅ Aydsko.iRacingData.UnitTests.DataClientTrackAssetScreenshotUrisTests

✅ GivenHungaroringTrack_ThenGetTrackAssetScreenshotUrisReturnsCorrectResultsAsync
✅ GivenHungaroringTrackId_ThenGetTrackAssetScreenshotUrisAsyncReturnsCorrectResultsAsync
✅ GivenSuzukaTrack_ThenGetTrackAssetScreenshotUrisReturnsCorrectResultsAsync
✅ GivenSuzukaTrackId_ThenGetScreenshotsByTrackIdReturnsCorrectResultsAsync

✅ Aydsko.iRacingData.UnitTests.DictionaryExtensionTests

✅ CheckAddParameterIfNotNull<Boolean>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.Boolean])
✅ CheckAddParameterIfNotNull<DateTime>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.DateTime])
✅ CheckAddParameterIfNotNull<EventType>(Aydsko.iRacingData.UnitTests.ExampleData`1[Aydsko.iRacingData.Common.EventType])
✅ CheckAddParameterIfNotNull<IEnumerable`1>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.Collections.Generic.IEnumerable`1[System.String]])
✅ CheckAddParameterIfNotNull<Int32[]>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.Int32[]])
✅ CheckAddParameterIfNotNull<String>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.String])

✅ Aydsko.iRacingData.UnitTests.PasswordEncodingTests

✅ LoginIsNotCalledIfCookiesAreSuccessfullyRestoredAsync("[email protected]","MyPassWord","xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ LoginIsNotCalledIfCookiesAreSuccessfullyRestoredAsync("[email protected]","SuperSecretPassword","nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaMethodAsync("[email protected]","MyPassWord","xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaMethodAsync("[email protected]","SuperSecretPassword","nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaMethodWithPasswordIsEncodedParamAsync("[email protected]","MyPassWord",False,"xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaMethodWithPasswordIsEncodedParamAsync("[email protected]","xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=",True,"xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaMethodWithPasswordIsEncodedParamAsync("[email protected]","nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=",True,"nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaMethodWithPasswordIsEncodedParamAsync("[email protected]","SuperSecretPassword",False,"nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaOptionsAsync("[email protected]","MyPassWord",False,"xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaOptionsAsync("[email protected]","xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=",True,"xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaOptionsAsync("[email protected]","nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=",True,"nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaOptionsAsync("[email protected]","SuperSecretPassword",False,"nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")

✅ Aydsko.iRacingData.UnitTests.ServicesTests

✅ LoginAndUserAgentDefaultWorksWhenResolvedFromServicesAsync
✅ LoginAndUserAgentWorksWhenResolvedFromServicesAsync

✅ Aydsko.iRacingData.UnitTests.TrackScreenshotServiceTests

✅ GivenHungaroringTrackId_ThenGetScreenshotsByTrackIdReturnsCorrectResultsAsync
✅ GivenSuzukaTrackId_ThenGetScreenshotsByTrackIdReturnsCorrectResultsAsync

✅ Aydsko.iRacingData.UnitTests.UrlExtensionsTests

✅ ValidateToUrlWithQueryMethod("https://example.com?a=b",[[foo, bar], [baz, bat]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[[=&?, =?&=?&]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[[foo, bar], [baz, bat]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[[foo, bar]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[[foo, System.String[]]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[])

✅ src/TestResults/net8.0/Aydsko.iRacingData.UnitTests.trx

125 tests were completed in 10s with 125 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Aydsko.iRacingData.UnitTests.CapturedResponseValidationTests 68✅ 2s
Aydsko.iRacingData.UnitTests.Converters.ServiceStatusHistoryItemArrayConverterConverterTests 2✅ 3ms
Aydsko.iRacingData.UnitTests.Converters.StatusTimeStampConverterTests 4✅ 1ms
Aydsko.iRacingData.UnitTests.Converters.StringFromStringOrNumberConverterTests 8✅ 1ms
Aydsko.iRacingData.UnitTests.Converters.TenThousandthSecondDurationConverterTests 8✅ 25ms
Aydsko.iRacingData.UnitTests.CookiePersistenceTests 3✅ 5ms
Aydsko.iRacingData.UnitTests.DataClientTrackAssetScreenshotUrisTests 4✅ 74ms
Aydsko.iRacingData.UnitTests.DictionaryExtensionTests 6✅ 5ms
Aydsko.iRacingData.UnitTests.PasswordEncodingTests 12✅ 14ms
Aydsko.iRacingData.UnitTests.ServicesTests 2✅ 50ms
Aydsko.iRacingData.UnitTests.TrackScreenshotServiceTests 2✅ 38ms
Aydsko.iRacingData.UnitTests.UrlExtensionsTests 6✅ 1ms

✅ Aydsko.iRacingData.UnitTests.CapturedResponseValidationTests

✅ GetBestLapStatisticsSuccessfulAsync
✅ GetCarAssetDetailsSuccessfulAsync
✅ GetCarClassesSuccessfulAsync
✅ GetCarsSuccessfulAsync
✅ GetCategoriesSuccessfulAsync
✅ GetClubHistoryLookupsSuccessfulAsync
✅ GetCountriesSuccessfulAsync
✅ GetCustomerLeagueSessionsAsync
✅ GetDivisionsSuccessfulAsync
✅ GetDriverAwardsSuccessfulAsync
✅ GetDriverInfoWithLicensesSuccessfulAsync
✅ GetDriverInfoWithoutLicensesSuccessfulAsync
✅ GetEventTypesSuccessfulAsync
✅ GetHostedSessionsCombinedSuccessfulAsync
✅ GetHostedSessionsSuccessfulAsync
✅ GetLeaguePointsSystemsSuccessfulAsync
✅ GetLeagueWithLicensesSucceedsAsync
✅ GetLeagueWithoutLicensesSucceedsAsync
✅ GetLicenseLookupsSuccessfulAsync
✅ GetLookupsSuccessfulAsync
✅ GetMemberChartDataSuccessfulAsync
✅ GetMemberDivisionSuccessfulAsync
✅ GetMemberInfoDuringMaintenanceThrowsAsync
✅ GetMemberInfoSucceedsAsync
✅ GetMemberParticipationCreditsSucceedsAsync
✅ GetMemberProfileSuccessfulAsync
✅ GetMemberRecapSuccessfulAsync
✅ GetMemberRecentRacesSucceedsAsync
✅ GetMemberSummarySuccessfulAsync
✅ GetMemberYearlyStatisticsSuccessfulAsync
✅ GetPastSeasonsForSeriesSuccessfulAsync
✅ GetRaceGuideSuccessfulAsync
✅ GetSeasonDriverStandingsSuccessfulAsync
✅ GetSeasonQualifyResultsSuccesfulAsync
✅ GetSeasonResultsHandlesBadRequestAsync
✅ GetSeasonsWithoutSeriesSuccessfulAsync
✅ GetSeasonsWithSeriesSuccessfulAsync
✅ GetSeasonTeamStandingsSuccessfulAsync
✅ GetSeasonTimeTrialResultsSuccessfulAsync
✅ GetSeasonTimeTrialStandingsSuccessfulAsync
✅ GetSeriesAssetsSuccessfulAsync
✅ GetSeriesSuccessfulAsync
✅ GetServiceStatusSuccessfulAsync
✅ GetSingleDriverSubsessionLapsForbiddenThrowsErrorsAsync
✅ GetSingleDriverSubsessionLapsSuccessfulAsync
✅ GetSpectatorSubsessionIdentifiersAsync
✅ GetStatisticsSeriesSuccesfulAsync
✅ GetSubsessionEventLogForbiddenThrowsErrorsAsync
✅ GetSubsessionEventLogSuccessfulAsync
✅ GetSubSessionLapChartSuccessfulAsync
✅ GetSubSessionResultForbiddenThrowsErrorsAsync
✅ GetSubSessionResultForLeagueSuccessfulAsync
✅ GetSubSessionResultForTeamSuccessfulAsync
✅ GetSubSessionResultSuccessfulAsync
✅ GetSubSessionResultUnauthorizedThrowsErrorsAsync
✅ GetTeamSubsessionLapsForbiddenThrowsErrorsAsync
✅ GetTeamSubsessionLapsSuccessfulAsync
✅ GetTeamSuccessfulAsync
✅ GetTimeAttackMemberSeasonResultsSuccessfulAsync
✅ GetTimeAttackSeriesSuccessfulAsync
✅ GetTrackAssetsSuccessfulAsync
✅ GetTracksSuccessfulAsync
✅ GetWorldRecordStatisticsSuccessfulAsync
✅ ListSeasonsSuccessfulAsync
✅ SearchDriversSuccessfulAsync
✅ SearchHostedResultsSuccessfulAsync
✅ SearchLeagueDirectorySuccessfulAsync
✅ SearchOfficialResultsSuccessfulAsync

✅ Aydsko.iRacingData.UnitTests.Converters.ServiceStatusHistoryItemArrayConverterConverterTests

✅ Read Value: 11:29:57 to 11:30:57 27 Jan 2023
✅ Write Value: 11:29:57 to 11:30:57 27 Jan 2023

✅ Aydsko.iRacingData.UnitTests.Converters.StatusTimeStampConverterTests

✅ Read Value: 11:19:12 27-Jan-2023
✅ Read Value: 22:29:57 27 Jan 2023
✅ Write Value: 11:19:12 27-Jan-2023
✅ Write Value: 22:29:57 27 Jan 2023

✅ Aydsko.iRacingData.UnitTests.Converters.StringFromStringOrNumberConverterTests

✅ Read Value: JSON Null value
✅ Read Value: JSON Number value of 1
✅ Read Value: JSON Number value of zero
✅ Read Value: JSON String value of 'ABC123'
✅ Write Value: JSON Null value
✅ Write Value: JSON Number value of 1
✅ Write Value: JSON Number value of zero
✅ Write Value: JSON String value of 'ABC123'

✅ Aydsko.iRacingData.UnitTests.Converters.TenThousandthSecondDurationConverterTests

✅ Read Value: 0 / 0:00.000
✅ Read Value: 600000 / 1:00.000
✅ Read Value: 834560 / 1:23.456
✅ Read Value: null / null
✅ Write Value: 0 / 0:00.000
✅ Write Value: 600000 / 1:00.000
✅ Write Value: 834560 / 1:23.456
✅ Write Value: null / null

✅ Aydsko.iRacingData.UnitTests.CookiePersistenceTests

✅ GivenOptionsWithARestoreFuncTheFuncIsCalledToGetTheCookiesAsync
✅ GivenOptionsWithASaveActionTheSaveActionIsCalledWithTheCookiesAsync
✅ GivenOptionsWithNullDelegateValuesWhenAMethodIsCalledThenItWillSucceedAsync

✅ Aydsko.iRacingData.UnitTests.DataClientTrackAssetScreenshotUrisTests

✅ GivenHungaroringTrack_ThenGetTrackAssetScreenshotUrisReturnsCorrectResultsAsync
✅ GivenHungaroringTrackId_ThenGetTrackAssetScreenshotUrisAsyncReturnsCorrectResultsAsync
✅ GivenSuzukaTrack_ThenGetTrackAssetScreenshotUrisReturnsCorrectResultsAsync
✅ GivenSuzukaTrackId_ThenGetScreenshotsByTrackIdReturnsCorrectResultsAsync

✅ Aydsko.iRacingData.UnitTests.DictionaryExtensionTests

✅ CheckAddParameterIfNotNull<Boolean>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.Boolean])
✅ CheckAddParameterIfNotNull<DateTime>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.DateTime])
✅ CheckAddParameterIfNotNull<EventType>(Aydsko.iRacingData.UnitTests.ExampleData`1[Aydsko.iRacingData.Common.EventType])
✅ CheckAddParameterIfNotNull<IEnumerable`1>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.Collections.Generic.IEnumerable`1[System.String]])
✅ CheckAddParameterIfNotNull<Int32[]>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.Int32[]])
✅ CheckAddParameterIfNotNull<String>(Aydsko.iRacingData.UnitTests.ExampleData`1[System.String])

✅ Aydsko.iRacingData.UnitTests.PasswordEncodingTests

✅ LoginIsNotCalledIfCookiesAreSuccessfullyRestoredAsync("[email protected]","MyPassWord","xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ LoginIsNotCalledIfCookiesAreSuccessfullyRestoredAsync("[email protected]","SuperSecretPassword","nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaMethodAsync("[email protected]","MyPassWord","xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaMethodAsync("[email protected]","SuperSecretPassword","nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaMethodWithPasswordIsEncodedParamAsync("[email protected]","MyPassWord",False,"xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaMethodWithPasswordIsEncodedParamAsync("[email protected]","xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=",True,"xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaMethodWithPasswordIsEncodedParamAsync("[email protected]","nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=",True,"nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaMethodWithPasswordIsEncodedParamAsync("[email protected]","SuperSecretPassword",False,"nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaOptionsAsync("[email protected]","MyPassWord",False,"xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaOptionsAsync("[email protected]","xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=",True,"xGKecAR27ALXNuMLsGaG0v5Q9pSs2tZTZRKNgmHMg+Q=")
✅ ValidateLoginRequestViaOptionsAsync("[email protected]","nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=",True,"nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")
✅ ValidateLoginRequestViaOptionsAsync("[email protected]","SuperSecretPassword",False,"nXmEFCdpHheD1R3XBVkm6VQavR7ZLbW7SRmzo/MfFso=")

✅ Aydsko.iRacingData.UnitTests.ServicesTests

✅ LoginAndUserAgentDefaultWorksWhenResolvedFromServicesAsync
✅ LoginAndUserAgentWorksWhenResolvedFromServicesAsync

✅ Aydsko.iRacingData.UnitTests.TrackScreenshotServiceTests

✅ GivenHungaroringTrackId_ThenGetScreenshotsByTrackIdReturnsCorrectResultsAsync
✅ GivenSuzukaTrackId_ThenGetScreenshotsByTrackIdReturnsCorrectResultsAsync

✅ Aydsko.iRacingData.UnitTests.UrlExtensionsTests

✅ ValidateToUrlWithQueryMethod("https://example.com?a=b",[[foo, bar], [baz, bat]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[[=&?, =?&=?&]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[[foo, bar], [baz, bat]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[[foo, bar]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[[foo, System.String[]]])
✅ ValidateToUrlWithQueryMethod("https://example.com",[])