towerops/test/towerops
Graham McIntire 434386816e feat(on_call): drag-drop reorder + restrictions editor + new-schedule polish
Three deferred followups from the chunk-4 plan, all together:

A. Restrictions editor
- Resolver: time_of_week support (weekday set + time-of-day window),
  in addition to the existing time_of_day.
- New OnCall.update_layer_restrictions/2 + clear_layer_restrictions/1.
- schedule_live/show: per-layer Restrict on-call shifts form
  (Always on call / Time of day / Time of week with Mon-Sun checkboxes),
  changes patched live and persisted via the resolver.

B. Drag-and-drop reorder
- New OnCall.reorder_layers/2 + reorder_escalation_rules/2 (atomic
  transaction; validates id count + membership).
- assets/js/sortable_list.ts: minimal HTML5 drag-and-drop hook (no
  external dep; mirrors the existing DeviceListReorder pattern),
  registered as SortableList in app.ts.
- schedule_live/show + escalation_policy_live/show: layer/level cards
  now carry data-id + draggable + a visible drag handle. Up/down arrow
  buttons remain as a fallback for users on assistive tech.

C. Unified new-schedule UX
- schedule_live/show pre-opens the Add Layer form when the schedule
  has zero layers, so the new-schedule -> add-layers flow lands ready
  to act on. Two existing tests updated to seed a layer first; two
  new tests verify the auto-open behaviour both ways.

Full suite 10,231 / 0 failures. Format/dialyzer clean.
2026-04-28 14:27:38 -05:00
..
accounts tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
admin more tests and fixes 2026-02-07 11:50:18 -06:00
agent tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
agents refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
alerts tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
api_tokens add parallel build 2026-01-19 14:17:05 -06:00
billing test: add on-call, incident, and PagerDuty notification test coverage 2026-03-14 15:10:27 -05:00
capacity feat: add backhaul capacity analysis foundation 2026-03-06 17:54:32 -06:00
cn_maestro tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
config_changes tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
contexts help update 2026-02-04 17:56:48 -06:00
devices refactor: convert 6 Gleam modules to idiomatic Elixir with TDD (#196) 2026-03-28 09:52:07 -05:00
ecto_types tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
equipment refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
gaiia refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
integrations fix: resolve compilation errors, test failures, and credo issues 2026-02-14 12:23:10 -06:00
job_monitoring more tests and fixes 2026-02-07 11:50:18 -06:00
maintenance Add GeoIP import HTTP tests 2026-03-10 16:02:49 -05:00
mobile_sessions more tests and fixes 2026-02-07 11:50:18 -06:00
monitoring tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
netbox tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
on_call feat(on_call): drag-drop reorder + restrictions editor + new-schedule polish 2026-04-28 14:27:38 -05:00
organizations refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
pagerduty test: add on-call, incident, and PagerDuty notification test coverage 2026-03-14 15:10:27 -05:00
preseem refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
profiles tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
proto remove-gleam (#218) 2026-03-29 11:03:20 -05:00
rate_limit chore: rate_limit rewrite + on-call redesign plan + handoff_notifications_mode 2026-04-28 12:17:29 -05:00
reports tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
security fix: resolve test fixture issues and skip flaky/environmental tests 2026-03-15 17:48:36 -05:00
sites more tests and fixes 2026-02-07 11:50:18 -06:00
snmp tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
sonar tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
splynx perf: optimize test suite and CI pipeline for maximum speed 2026-03-05 15:04:57 -06:00
topology tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
uisp tests: remove remaining 1s sleeps in slow tests 2026-04-24 10:13:17 -05:00
visp fix: humanize raw error strings in integration sync modules 2026-03-12 13:53:28 -05:00
weather tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
workers tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
accounts_defensive_coverage_test.exs add 100% test coverage for Towerops.Accounts 2026-03-11 10:37:03 -05:00
accounts_test.exs add 100% test coverage for Towerops.Accounts 2026-03-11 10:37:03 -05:00
activity_feed_test.exs fix: ensure sync logs are in different minutes for activity feed test 2026-03-10 10:15:29 -05:00
admin_test.exs fix/security-and-quality-issues (#136) 2026-03-24 08:06:29 -05:00
agents_test.exs fix/ping-monitoring-without-snmp (#171) 2026-03-25 16:01:05 -05:00
alerts_test.exs perf(tests): remove/reduce Process.sleep calls for faster tests 2026-03-06 07:57:30 -06:00
api_tokens_test.exs perf(tests): remove/reduce Process.sleep calls for faster tests 2026-03-06 07:57:30 -06:00
application_test.exs Reliability improvements: Task.Supervisor, discovery retries, polling visibility 2026-02-09 16:05:30 -06:00
billing_test.exs fix: resolve all remaining test failures 2026-03-07 12:13:17 -06:00
capacity_test.exs fix: improve bandwidth counter handling to match LibreNMS approach (#168) 2026-03-25 13:33:45 -05:00
config_changes_test.exs tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
dashboard_test.exs fix agent check cascade and at-risk subscriber double-counting (#79) 2026-03-18 20:17:39 -05:00
devices_test.exs refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
error_tracker_ignorer_test.exs Ignore pod shutdown errors in ErrorTracker 2026-02-17 10:59:51 -06:00
gaiia_test.exs refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
geocoding_test.exs tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
geoip_test.exs more tests 2026-02-03 11:16:43 -06:00
honeybadger_filter_test.exs fix: suppress benign shutdown errors during K8s pod rollouts 2026-02-12 12:16:40 -06:00
http_test.exs Add GeoIP import HTTP tests 2026-03-10 16:02:49 -05:00
integrations_test.exs Store billing subscriber/MRR data on integrations for dashboard 2026-02-15 16:51:33 -06:00
job_monitoring_test.exs more tests and fixes 2026-02-07 11:50:18 -06:00
log_filter_test.exs Fix Credo issues and improve code quality 2026-01-19 15:09:19 -06:00
logger_filters_test.exs fix: suppress benign shutdown errors during K8s pod rollouts 2026-02-12 12:16:40 -06:00
maintenance_batch_test.exs fix: resolve test fixture issues and skip flaky/environmental tests 2026-03-15 17:48:36 -05:00
maintenance_context_test.exs tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
mobile_sessions_test.exs perf: optimize test suite and CI pipeline for maximum speed 2026-03-05 15:04:57 -06:00
monitoring_test.exs refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
numeric_test.exs refactor: convert 6 Gleam modules to idiomatic Elixir with TDD (#196) 2026-03-28 09:52:07 -05:00
on_call_test.exs feat(on_call): drag-drop reorder + restrictions editor + new-schedule polish 2026-04-28 14:27:38 -05:00
organizations_test.exs refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
preseem_test.exs refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
profiles_test.exs Add comprehensive test coverage for core context modules 2026-01-19 14:38:34 -06:00
query_helpers_test.exs refactor: convert 6 Gleam modules to idiomatic Elixir with TDD (#196) 2026-03-28 09:52:07 -05:00
rate_limit_test.exs chore: rate_limit rewrite + on-call redesign plan + handoff_notifications_mode 2026-04-28 12:17:29 -05:00
redis_health_check_test.exs faster tests 2026-01-27 09:30:18 -06:00
reports_test.exs tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
result_test.exs more tests 2026-02-03 13:20:33 -06:00
rf_links_test.exs refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
search_test.exs feat: comprehensive e2e test coverage for all user-facing features 2026-03-06 16:58:06 -06:00
settings_test.exs fix: use correct struct field names for Check protobuf (#141) 2026-03-24 12:04:48 -05:00
sites_test.exs make devices site optional and many test fix 2026-02-04 15:05:42 -06:00
snmp_test.exs refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
status_pages_test.exs refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
topology_test.exs feat: simplify device type to manual-only with 6 options (#109) 2026-03-22 11:24:53 -05:00
trace_test.exs tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
url_validator_test.exs refactor: convert 6 Gleam modules to idiomatic Elixir with TDD (#196) 2026-03-28 09:52:07 -05:00
weather_test.exs tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00