Commit Graph
23 Commits
Author SHA1 Message Date
Stevan Freeborn b2a023f9c0 chore: house keeping 2026-05-05 21:30:52 -05:00
Stevan Freeborn a6a6cf49c7 build: upgrade to .NET 10 and update dependencies
- Bump TargetFramework to net10.0 in Directory.Build.props
- Update Microsoft.Extensions and OpenTelemetry packages to latest versions
- Update test SDK and xunit runner
- Refactor TestWebSocketServer to use HostBuilder and ConfigureWebHost
  to respond to deprecation notice
- Pin FluentAssertions version to [7.2.0]
- Remove redundant Microsoft.Extensions.Http reference in StevesBot.Webhook
2026-01-11 18:43:51 -06:00
Stevan Freeborn 7826e835ef feat(youtube): multiple stream notifications
Refactors the notification storage to support multiple stream IDs
using a ConcurrentDictionary. This ensures that the bot can track and
ignore duplicate notifications for multiple streams within a
rolling 24-hour window, rather than only tracking the single most
recent stream.

- Updated ILastPostedStreamStore to include RemoveValuesOlderThan24Hours.
- Switched LastPostedStreamStore to use ConcurrentDictionary with UTC timestamps.
- Injected TimeProvider to enable deterministic testing of time-based expiration.
- Added automatic cache pruning in NotificationHandler on every request.
- Renamed Unit/LastPostedStreamStore.cs to Unit/LastPostedStreamStoreTests.cs and expanded test coverage.
2026-01-11 10:32:57 -06:00
Stevan Freeborn 168d080e04 fix: trim double quotes from message format and cleanup usings in tests 2025-06-15 11:17:13 -05:00
Stevan Freeborn 770995f22e chore: fix bad file rename 2025-06-04 15:48:54 -05:00
Stevan Freeborn 9d8f5269b8 chore: rename file 2025-06-04 15:43:11 -05:00
Stevan Freeborn 3fa6195e18 chore: run dotnet format 2025-06-04 15:34:35 -05:00
Stevan Freeborn 8c800ce658 chore: working on preparations for deployment 2025-06-04 10:46:21 -05:00
Stevan Freeborn 8e0ec2d3d5 refactor: moving telemetry wip 2025-06-03 16:31:09 -05:00
Stevan Freeborn e616bdedda tests: finish adding tests for webhook 2025-06-03 12:44:02 -05:00
Stevan Freeborn 68ba283856 tests: more tests 2025-06-03 11:31:09 -05:00
Stevan Freeborn 3d0321bc42 tests: add test for notification handler 2025-06-02 11:11:36 -05:00
Stevan Freeborn 7f9404dff3 chore: stub out tests 2025-06-02 00:00:28 -05:00
Stevan Freeborn 390b6f56c5 tests: add tests for data client 2025-05-31 21:58:18 -05:00
Stevan Freeborn 7a12f2768d tests: add tests for page info 2025-05-30 17:27:23 -05:00
Stevan Freeborn cbf7598227 tests: WRITE TESTS FIRST...when will I learn 2025-05-30 15:46:20 -05:00
Stevan Freeborn c7d0df2fca tests: begin adding tests to webhook project 2025-05-29 23:01:00 -05:00
Stevan Freeborn 0d31f12012 tests: add tests for library 2025-05-29 22:41:53 -05:00
Stevan Freeborn ce45893caa refactor: extract tests to library test project 2025-05-29 00:09:19 -05:00
Stevan Freeborn 21adfcd3bb tests: begin moving tests to lib test project 2025-05-28 17:15:38 -05:00
Stevan Freeborn 1afd17f2d1 feat: create discord message when stream goes live 2025-05-27 23:13:19 -05:00
Stevan Freeborn c544e33e28 feat: determine if notification is for stream or not 2025-05-27 16:48:57 -05:00
Stevan Freeborn a8de49cee3 refactor: reorganize solution for better multi-project support/management 2025-05-25 18:38:52 -05:00