From 73a85aecdf15860b1e40e38ab5b700e44f640de2 Mon Sep 17 00:00:00 2001 From: deadprogram Date: Fri, 21 Apr 2017 10:05:59 +0200 Subject: [PATCH] sysfs: increase test coverage for pwm pin Signed-off-by: deadprogram --- sysfs/pwm_pin_test.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/sysfs/pwm_pin_test.go b/sysfs/pwm_pin_test.go index 2ed867f9..5be475a0 100644 --- a/sysfs/pwm_pin_test.go +++ b/sysfs/pwm_pin_test.go @@ -38,6 +38,11 @@ func TestPwmPin(t *testing.T) { fs.Files["/sys/class/pwm/pwmchip0/pwm10/period"].Contents = "6" data, _ := pin.Period() gobottest.Assert(t, data, "6") + + gobottest.Refute(t, fs.Files["/sys/class/pwm/pwmchip0/pwm10/duty_cycle"].Contents, "1") + err = pin.WriteDuty("100") + gobottest.Assert(t, err, nil) + gobottest.Assert(t, fs.Files["/sys/class/pwm/pwmchip0/pwm10/duty_cycle"].Contents, "100") } func TestPwmPinExportError(t *testing.T) { @@ -77,3 +82,23 @@ func TestPwmPinUnxportError(t *testing.T) { gobottest.Refute(t, pin.Unexport(), nil) } + +func TestPwmPinPeriodError(t *testing.T) { + fs := NewMockFilesystem([]string{ + "/sys/class/pwm/pwmchip0/export", + "/sys/class/pwm/pwmchip0/unexport", + "/sys/class/pwm/pwmchip0/pwm10/enable", + "/sys/class/pwm/pwmchip0/pwm10/period", + "/sys/class/pwm/pwmchip0/pwm10/duty_cycle", + }) + + SetFilesystem(fs) + + pin := NewPwmPin(10) + pin.read = func(string) ([]byte, error) { + return nil, &os.PathError{Err: syscall.EBUSY} + } + + _, err := pin.Period() + gobottest.Refute(t, err, nil) +}