-
Notifications
You must be signed in to change notification settings - Fork 8
2.0 New Entity Checklist
Cohen Adair edited this page Dec 7, 2023
·
10 revisions
A checklist and considerations when adding new entities or entity properties.
- [] Local database changes. This usually means a new table.
- [] Protobuf changes:
- [] New message type
- [] New message ID to applicable entities, such as
angler_id
being added to theCatch
message.
- [] More page row
- [] New manager class:
- [] Inherit from correct entity manager (i.e.
NamedEntityManager
,ImageEntityManager
, etc.) - [] Initialize in
AppManager
. - [] Override parent methods as needed (i.e.
matchesFilter
,displayName
, etc.)
- [] Inherit from correct entity manager (i.e.
- [] Add save page (add/edit functionality)
- [] Update
UnitsPage
if needed - [] Add list page
- [] Add entity page (details of a single entity, shown when list item is selected)
- [] Add to applicable editable form(s), such as a new catch field.
- [] Ensure new field is tracked by default.
- [] Add to "Add all" button
- [] Add to applicable save forms (i.e.
SaveCatchPage
,SaveReportPage
). - [] Add to applicable entity pages (i.e.
CatchPage
). - [] Add to applicable entity
matchesFilter
method - [] If added property to Catch, update
isolatedFilteredCatches
. - [] Add to stats feature, if applicable:
- [] As "Per X" in
CatchSummary
. - [] As standard report.
- [] As "Per X" in
- [] Add new field to
CsvPage
, if applicable. - [] Add new mock for manager (mocks.dart); run
./gen_mocks.sh
. - [] Add new mock manager to
StubbedAppManager
. - [] Fix any broken tests.
- [] Update existing tests where applicable.
- [] Add new tests (note: do pages last so individual widgets are already tested).
- [] Manually test all changes.