Commit Graph

42 Commits

Author SHA1 Message Date
Tristan B. Velloza Kildaire 0400f18ead - Show one how to use the API 2023-06-03 11:53:24 +02:00
Tristan B. Velloza Kildaire 75a6cdc85a - Added README 2023-06-03 11:49:20 +02:00
Tristan B. Velloza Kildaire 97508fe66c Unit tests
- Do a unit test that attempts parsing BROKEN shcedule JSON data
2023-06-02 16:35:26 +02:00
Tristan B. Velloza Kildaire 04dc338183 Schedule
- Made into a class instead of a struct
- Constructor is never used, construction only done via static factory method `fromJSON(JSONValue)`
2023-06-02 16:32:09 +02:00
Tristan B. Velloza Kildaire 997a7edc8e - Updated package description 2023-06-02 16:21:15 +02:00
Tristan B. Velloza Kildaire b4d21db39b Schedule
- Trimmed whitespace
2023-06-02 16:17:59 +02:00
Tristan B. Velloza Kildaire c84bba28b7 Schedule
- Added `source` support with a getter, `getSource()`
- Added `getStage()`

Unit tests

- Updated unit test to be a full test suite
2023-06-02 16:16:41 +02:00
Tristan B. Velloza Kildaire e8859f9bf2 Schedule
- Added unit test to show how to build a `Schedule` from the provided JSON
2023-06-02 11:45:41 +02:00
Tristan B. Velloza Kildaire d830d11e2d Schedule
- Added TODOs regarding fetching the `source` field
2023-06-02 11:43:28 +02:00
Tristan B. Velloza Kildaire 32416b94db Schedule
- Implemented `getArea()`
2023-06-02 11:41:33 +02:00
Tristan B. Velloza Kildaire 78f152bd8c Calendar
- Corrected unit test description
2023-06-02 11:40:51 +02:00
Tristan B. Velloza Kildaire edec3177ed Package
- Documented module
2023-06-02 11:36:58 +02:00
Tristan B. Velloza Kildaire f414d4fcea Unit tests
- Documented all unit tests
2023-06-02 11:35:59 +02:00
Tristan B. Velloza Kildaire 069c1872c4 Package
- Documented all public imports
2023-06-02 11:30:39 +02:00
Tristan B. Velloza Kildaire 0f1a70287f Calendar
- Documented module
- Documented `EskomCalendar` class
2023-06-02 11:30:26 +02:00
Tristan B. Velloza Kildaire c7131308f3 Exceptions
- Documented module
2023-06-02 11:28:42 +02:00
Tristan B. Velloza Kildaire 5bddcf0a14 Schedule
- Documented class, constructor, module and all methods
- Made constructor private
2023-06-02 11:28:12 +02:00
Tristan B. Velloza Kildaire 123598594e EskomCalendarException
- Documented `EskomCalendarException` and its constructors, fields and methods
2023-06-02 08:50:48 +02:00
Tristan B. Velloza Kildaire e29f3ecc70 Schedule
- `fromJSON(JSONValue)` now throws an `EskomCalendarException` on error parsing
2023-06-02 08:49:13 +02:00
Tristan B. Velloza Kildaire 03f3ea61d0 ErrType
- Added new enum member `INVALID_SCHEDULE_DATA` which is to be used on error parsing schedule data
2023-06-02 08:48:52 +02:00
Tristan B. Velloza Kildaire ee658beae1 EskomCalendar
- Cleaned up whitespace
- Documented `getSchedulesFrom()` and `getSchedulesUntil()`
2023-06-02 08:46:14 +02:00
Tristan B. Velloza Kildaire 09928428ab Unit test
- Test failing network connection
2023-06-02 08:40:28 +02:00
Tristan B. Velloza Kildaire 2198479158 Exceptions
- Added `getError()` to `EskomCalendarException` to fetch the `ErrType`
2023-06-02 08:40:10 +02:00
Tristan B. Velloza Kildaire 4ffeadf890 EskomCalendar
- Documented `getAreas(string)` and `getAreas()`
2023-06-02 08:34:44 +02:00
Tristan B. Velloza Kildaire 12323b4601 EskomCalendar
- Fixed documentation for `getTodaySchedules(string)`
2023-06-02 08:33:36 +02:00
Tristan B. Velloza Kildaire d41f5bee29 EskomCalendar
- Removed whitespace
- Documented `getTodaySchedules(string)`
2023-06-01 22:04:20 +02:00
Tristan B. Velloza Kildaire 03e9f4791c EskomCalendar
- Documented `doGet(string)`
2023-06-01 21:58:34 +02:00
Tristan B. Velloza Kildaire f20ac32fd9 - Moved all exception code to seperate module 2023-06-01 21:55:45 +02:00
Tristan B. Velloza Kildaire 97d378c3ae - Updated `.gitignore` 2023-06-01 21:49:24 +02:00
Tristan B. Velloza Kildaire 0351131454 - Moved `Schedule` into `schedule` module
- Made a `package.d` module
2023-06-01 21:49:17 +02:00
Tristan B. Velloza Kildaire d536c47998 - Made into module 2023-06-01 21:28:16 +02:00
Tristan B. Velloza Kildaire 00f9c8258c - Updated `.gitignore` 2023-06-01 21:21:12 +02:00
Tristan B. Velloza Kildaire c4d8ee5777 - Updated LICENSE 2023-06-01 21:20:58 +02:00
Tristan B. Velloza Kildaire 86ab3361dc - Changed package name to `eskomcalendar4d` 2023-06-01 21:20:01 +02:00
Tristan B. Velloza Kildaire 8a0a10c52f - Updated package information
- Removed `main()` method
- Updated `.gitignore`
2023-06-01 21:19:02 +02:00
Tristan B. Velloza Kildaire 9057ebc3b1 EskomCalendar
- Documented both constructors
- Documented `ErrType` and its enum members
- Any curl request goes through `doGet(string)` which wraps the `CurlException` in an `EskomCalendarException`
- Typo fixes
- Added unit test to dynamically test multiple areas and their respective schedules
2023-06-01 21:06:02 +02:00
Tristan B. Velloza Kildaire 2237f01826 EskomCalendar
- `getTodaySchdules(string)` now works as intended
2023-06-01 14:30:08 +02:00
Tristan B. Velloza Kildaire e28b56a919 EskomCalendar
- Added `getSchdulesUntil()` which gets until a certain point
- `getSchdulesFrom()` now uses the updated `getSchedules()`
- WIP: `getTodaySchdules()`
- Refactored `getSchedules()` to be able to use default arguments but allow customizing the `from` and to` time
2023-06-01 14:19:28 +02:00
Tristan B. Velloza Kildaire abaa1557c5 EskomCalendar
- Implemented `getSchdulesFrom(string, SysTime)` to fetch schedules that start from a given time
- Added `getTodaySchdules(string)` which gets schedules that would start from today

Unit tests

- Added unit test for `getSchdulesFrom(string, SysTime)`
2023-06-01 09:16:21 +02:00
Tristan B. Velloza Kildaire 33c5e5d63d EskomCalendar
- Added `getSchedules(string)` to fetch schedules for a given area
- Added new `ErrType.NO_SCHEDULES_AVAILABLE` if no schedules are available for a given area
- Added `Schedule` type to represent a `Schedule`

Unit tests

- Added test for `getSchedules(string)`
2023-06-01 09:08:47 +02:00
Tristan B. Velloza Kildaire 5e8740a53c EskomCalendar
- Apply URI encoding to the regex in `getAreas(string)`
2023-06-01 08:46:23 +02:00
Tristan B. Velloza Kildaire ba793efee5 Initial commit 2023-06-01 08:43:27 +02:00