Skip to content

Commit

Permalink
Merge pull request #249 from observerly/feature/monitor/IsSafe
Browse files Browse the repository at this point in the history
feat: Added (m *SafetyMonitor) IsSafe().
  • Loading branch information
michealroberts authored May 25, 2022
2 parents 2b852dc + 1242080 commit c46f757
Show file tree
Hide file tree
Showing 3 changed files with 77 additions and 48 deletions.
97 changes: 49 additions & 48 deletions coverage.txt
Original file line number Diff line number Diff line change
Expand Up @@ -68,34 +68,6 @@ github.com/observerly/alpacago/pkg/alpacago/camera.go:823.40,832.2 3 1
github.com/observerly/alpacago/pkg/alpacago/camera.go:840.75,851.2 3 1
github.com/observerly/alpacago/pkg/alpacago/camera.go:859.68,870.2 3 1
github.com/observerly/alpacago/pkg/alpacago/camera.go:878.39,887.2 3 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:10.137,19.2 3 5
github.com/observerly/alpacago/pkg/alpacago/conditions.go:27.59,29.2 1 2
github.com/observerly/alpacago/pkg/alpacago/conditions.go:38.66,49.2 3 19
github.com/observerly/alpacago/pkg/alpacago/conditions.go:57.65,59.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:67.64,69.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:77.62,79.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:87.62,89.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:97.62,99.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:107.62,109.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:117.67,119.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:127.64,129.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:137.68,139.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:147.68,149.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:157.65,159.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:169.67,171.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:179.62,181.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:189.63,191.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:199.50,208.2 3 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:216.87,224.16 4 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:229.2,229.20 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:235.2,237.26 2 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:224.16,226.3 1 0
github.com/observerly/alpacago/pkg/alpacago/conditions.go:229.20,232.3 2 0
github.com/observerly/alpacago/pkg/alpacago/conditions.go:246.90,254.16 4 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:259.2,259.20 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:265.2,267.26 2 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:254.16,256.3 1 0
github.com/observerly/alpacago/pkg/alpacago/conditions.go:259.20,262.3 2 0
github.com/observerly/alpacago/pkg/alpacago/dome.go:20.107,29.2 3 5
github.com/observerly/alpacago/pkg/alpacago/dome.go:37.44,39.2 1 2
github.com/observerly/alpacago/pkg/alpacago/dome.go:48.51,59.2 3 1
Expand Down Expand Up @@ -138,21 +110,6 @@ github.com/observerly/alpacago/pkg/alpacago/focuser.go:137.70,139.2 1 1
github.com/observerly/alpacago/pkg/alpacago/focuser.go:147.53,149.2 1 1
github.com/observerly/alpacago/pkg/alpacago/focuser.go:157.35,166.2 3 0
github.com/observerly/alpacago/pkg/alpacago/focuser.go:176.49,187.2 3 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:10.113,19.2 3 5
github.com/observerly/alpacago/pkg/alpacago/rotator.go:28.54,39.2 3 3
github.com/observerly/alpacago/pkg/alpacago/rotator.go:47.46,49.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:57.44,59.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:67.60,69.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:77.50,79.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:87.46,89.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:97.50,107.2 3 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:115.50,117.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:125.56,127.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:135.35,144.2 3 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:153.51,164.2 3 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:173.59,184.2 3 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:193.61,204.2 3 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:213.51,224.2 3 1
github.com/observerly/alpacago/pkg/alpacago/telescope.go:63.134,73.2 3 6
github.com/observerly/alpacago/pkg/alpacago/telescope.go:81.42,90.2 3 1
github.com/observerly/alpacago/pkg/alpacago/telescope.go:100.63,103.2 2 1
Expand Down Expand Up @@ -254,8 +211,8 @@ github.com/observerly/alpacago/pkg/alpacago/alpaca.go:37.2,39.35 2 47
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:43.2,50.16 2 47
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:33.13,35.3 1 38
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:39.35,41.3 1 9
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:60.56,62.2 1 191
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:71.104,73.2 1 364
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:60.56,62.2 1 192
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:71.104,73.2 1 365
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:88.119,95.16 3 7
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:100.2,100.20 1 7
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:106.2,108.26 2 7
Expand All @@ -266,9 +223,9 @@ github.com/observerly/alpacago/pkg/alpacago/alpaca.go:135.2,135.20 1 5
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:141.2,143.26 2 5
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:130.16,132.3 1 0
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:135.20,138.3 2 0
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:159.118,165.16 3 71
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:170.2,170.20 1 71
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:176.2,178.26 2 71
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:159.118,165.16 3 72
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:170.2,170.20 1 72
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:176.2,178.26 2 72
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:165.16,167.3 1 0
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:170.20,173.3 2 0
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:194.121,200.16 3 54
Expand Down Expand Up @@ -300,6 +257,34 @@ github.com/observerly/alpacago/pkg/alpacago/alpaca.go:357.103,359.2 1 1
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:373.105,375.2 1 1
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:383.94,385.2 1 1
github.com/observerly/alpacago/pkg/alpacago/alpaca.go:393.108,395.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:10.137,19.2 3 5
github.com/observerly/alpacago/pkg/alpacago/conditions.go:27.59,29.2 1 2
github.com/observerly/alpacago/pkg/alpacago/conditions.go:38.66,49.2 3 19
github.com/observerly/alpacago/pkg/alpacago/conditions.go:57.65,59.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:67.64,69.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:77.62,79.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:87.62,89.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:97.62,99.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:107.62,109.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:117.67,119.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:127.64,129.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:137.68,139.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:147.68,149.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:157.65,159.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:169.67,171.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:179.62,181.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:189.63,191.2 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:199.50,208.2 3 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:216.87,224.16 4 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:229.2,229.20 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:235.2,237.26 2 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:224.16,226.3 1 0
github.com/observerly/alpacago/pkg/alpacago/conditions.go:229.20,232.3 2 0
github.com/observerly/alpacago/pkg/alpacago/conditions.go:246.90,254.16 4 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:259.2,259.20 1 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:265.2,267.26 2 1
github.com/observerly/alpacago/pkg/alpacago/conditions.go:254.16,256.3 1 0
github.com/observerly/alpacago/pkg/alpacago/conditions.go:259.20,262.3 2 0
github.com/observerly/alpacago/pkg/alpacago/discovery.go:32.63,40.2 2 1
github.com/observerly/alpacago/pkg/alpacago/discovery.go:42.120,43.30 1 6
github.com/observerly/alpacago/pkg/alpacago/discovery.go:47.2,49.35 2 6
Expand All @@ -321,3 +306,19 @@ github.com/observerly/alpacago/pkg/alpacago/filterwheel.go:77.57,87.2 3 1
github.com/observerly/alpacago/pkg/alpacago/monitor.go:10.125,19.2 3 5
github.com/observerly/alpacago/pkg/alpacago/monitor.go:27.53,29.2 1 2
github.com/observerly/alpacago/pkg/alpacago/monitor.go:38.60,49.2 3 1
github.com/observerly/alpacago/pkg/alpacago/monitor.go:57.48,59.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:10.113,19.2 3 5
github.com/observerly/alpacago/pkg/alpacago/rotator.go:28.54,39.2 3 3
github.com/observerly/alpacago/pkg/alpacago/rotator.go:47.46,49.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:57.44,59.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:67.60,69.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:77.50,79.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:87.46,89.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:97.50,107.2 3 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:115.50,117.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:125.56,127.2 1 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:135.35,144.2 3 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:153.51,164.2 3 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:173.59,184.2 3 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:193.61,204.2 3 1
github.com/observerly/alpacago/pkg/alpacago/rotator.go:213.51,224.2 3 1
10 changes: 10 additions & 0 deletions pkg/alpacago/monitor.go
Original file line number Diff line number Diff line change
Expand Up @@ -47,3 +47,13 @@ func (m *SafetyMonitor) SetConnected(connected bool) error {

return m.Alpaca.Put("safetymonitor", m.DeviceNumber, "connected", form)
}

/*
IsSafe()
@returns true if the state is safe, false if it is unsafe. Indicates whether the monitored state is safe for use.
@see https://ascom-standards.org/api/#/SafetyMonitor%20Specific%20Methods/get_safetymonitor__device_number__issafe
*/
func (m *SafetyMonitor) IsSafe() (bool, error) {
return m.Alpaca.GetBooleanResponse("safetymonitor", m.DeviceNumber, "issafe")
}
18 changes: 18 additions & 0 deletions pkg/alpacago/monitor_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -96,3 +96,21 @@ func TestNewSafetyMonitorSetConnected(t *testing.T) {
t.Errorf("got %q", monitor.Alpaca.ErrorMessage)
}
}

func TestNewSafetyMonitorIsSafe(t *testing.T) {
var got, err = monitor.IsSafe()

var want = true

if err != nil {
t.Errorf("got %q", err)
}

if got != want {
t.Errorf("got %v, wanted %v", got, want)
}

if monitor.Alpaca.ErrorNumber != 0 {
t.Errorf("got %q", monitor.Alpaca.ErrorMessage)
}
}

0 comments on commit c46f757

Please sign in to comment.