Commit Graph

136 Commits

Author SHA1 Message Date
1783d5f6f7 Define a set of interfaces for the ETA repository 2025-11-11 10:51:34 -08:00
fb3be46ef2 Update shared test file and remove Redis-specific tests 2025-11-10 20:22:37 -08:00
20c97de94d Unify the new ETA functionality across all shuttle repositories 2025-11-10 20:20:39 -08:00
4481496fda Privatize implementation details for updating shuttle ETA information 2025-11-10 19:51:15 -08:00
c9cbde7a78 Rename internal method to something more representative of if 2025-11-10 19:35:21 -08:00
a3854aab6d Update test to account for Redis unpredictability 2025-11-10 19:13:39 -08:00
864097154e Make addTravelTimeDataPoint public, add tests, and fix the query interval 2025-11-10 19:05:32 -08:00
7a0937c04e Refactor updateShuttleLastStopArrival to use shuttle ID 2025-11-10 18:23:44 -08:00
ef20117f3c Modify getShuttleLastStopArrival to use shuttle ID 2025-11-10 18:21:55 -08:00
91517669f0 Implement updateEtasBasedOnHistoricalData and add a test for it 2025-11-10 18:11:54 -08:00
d92db84738 Implement travel time data point saving and loading, and tests 2025-11-10 16:46:34 -08:00
bd1ae07662 Rename historical parking query arguments to HistoricalParkingAverageFilterArguments 2025-11-10 16:46:07 -08:00
c946647483 Update getArrivedStopIfExists and implement tests for it 2025-11-10 15:45:38 -08:00
cba91dae55 Implement getShuttleLastStopArrival and updateShuttleLastStopArrival 2025-11-10 15:36:33 -08:00
2a80a049bd Add updated test cases and update call to stop arrival helper 2025-11-10 15:09:13 -08:00
63ed267ded Add necessary call to updateShuttleLastTimeArrival 2025-11-10 14:54:48 -08:00
321631e6c9 Add partial implementation and scaffolding of historical ETA update 2025-11-10 14:49:41 -08:00
4b4715cdb2 Add RedisShuttleRepository and ShuttleRepositorySharedTests, like pattern for parking data 2025-11-03 10:34:21 -08:00
9a959d388f Update verification of mock listener if removed 2025-10-21 16:24:36 -07:00
91ac397c75 Reorganize tests based on functions 2025-10-21 16:22:05 -07:00
4db517d4c0 Ensure shuttle repository uses typed EventEmitter overrides 2025-10-10 19:56:19 -07:00
72b77c3b60 Add a reconnection interval constant 2025-09-01 12:06:23 -07:00
051f6c12e7 Add error logging for unexpected Redis disconnections 2025-09-01 11:58:27 -07:00
14fbdc7408 Move testHelpers directory up one level 2025-07-31 22:41:05 -04:00
b7299b8359 Move all tests to subdirectories underneath code to be tested 2025-07-31 22:35:49 -04:00
6444251649 Implement mocking of environment file 2025-07-21 19:42:28 -04:00
883dc9ef6e Create a src-level environment.ts file for all environment variables 2025-07-21 19:35:04 -04:00
ee7b5eefda Rename query interface for historical data 2025-07-19 13:14:39 -04:00
182587596c Change properties to match GraphQL input and query result 2025-07-19 12:15:41 -04:00
8ee1f1522e Change ParkingStructureCountOptions and HistoricalParkingAverageQueryResult to use Date objects
This matches the behavior of `updatedTime` on shuttle objects. When returning API data, dates are converted into milliseconds since Epoch by the DateTime scalar implementation.
2025-07-19 12:12:08 -04:00
ed037cf2d2 Move repositories into folders. 2025-07-19 11:58:45 -04:00
86710657df Use TLS in production 2025-07-03 16:30:12 -04:00
d1b60772d8 Update RedisParkingRepository.ts to use Redis aggregation functions 2025-07-03 16:00:57 -04:00
f406e3e01d Add retention period for new time series 2025-07-03 15:53:06 -04:00
b9d5f7b3df Refactor parking repositories to use dedicated Constants file and smaller functions 2025-07-03 15:19:57 -04:00
53632fe470 Add BaseRedisRepository as parent class of RedisNotificationRepository.ts and RedisParkingRepository.ts 2025-07-02 20:00:44 -04:00
19336ce6ec Add setLoggingInterval method and implementation for tests and other purposes.
Let users control the logging interval of both parking repositories.
2025-07-02 19:48:16 -04:00
868a9f3b1d Add RedisParkingRepository.ts and convert existing tests to shared tests for both classes 2025-07-02 19:40:45 -04:00
ca2a66509b Implement getHistoricalAveragesOfParkingStructureCounts for InMemoryParkingRepository.ts, and add tests 2025-07-02 19:10:16 -04:00
2b04ca01a9 Update InMemoryParkingRepository.ts and tests to use the circular queue 2025-07-02 18:48:33 -04:00
4758d566da Add constant MAX_NUM_ENTRIES and adjust PARKING_LOGGING_INTERVAL_MS 2025-07-01 21:47:15 -04:00
8fb296027d Fix remaining issues with tests, and add implementation within InMemoryParkingRepository.ts 2025-07-01 21:37:26 -04:00
6759bba2ce Add properties to determine when the parking repository should log data 2025-07-01 21:23:15 -04:00
81272e94b1 Add getHistoricalAveragesOfParkingStructureCounts stub and update constructor with dependency injection support 2025-07-01 21:20:11 -04:00
1f252ee468 Define new method to get historical averages depending on timestamps and interval 2025-07-01 21:13:55 -04:00
461b1d1a59 implement class 2025-04-08 16:47:41 -07:00
e5c4387cff add stub methods for repo 2025-04-08 16:39:23 -07:00
922fd7abb8 add repository methods 2025-04-08 16:37:36 -07:00
e5b686f0be fix import errors 2025-04-08 16:30:43 -07:00
2741d229f9 rename entities.ts to ShuttleRepositoryEntities.ts 2025-04-08 16:07:48 -07:00