{- hsPID Copyright (C) 2018 Jonathan Lamothe This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . -} module Settings where import Control.Lens import Test.HUnit import Control.PID tests :: Test tests = TestLabel "Settings" $ TestList [ newSettingsTests ] newSettingsTests :: Test newSettingsTests = TestLabel "newSettings" $ TestList $ [ TestLabel "setpoint" $ new^.setpoint ~?= 0 , TestLabel "pFactor" $ new^.pFactor ~?= 1 , TestLabel "pidIFactor" $ new^.iFactor ~?= 1 , TestLabel "dFactor" $ new^.dFactor ~?= 1 , TestLabel "bias" $ new^.bias ~?= 0 , TestLabel "isReversed" $ new^.isReversed ~?= False , TestLabel "maxOutput" $ new^.maxOutput ~?= 100 ] new = newSettings :: Settings Rational