options 1.2.1 → 1.2.1.1
raw patch · 8 files changed
+82/−67 lines, 8 filesdep ~basedep ~chell
Dependency ranges changed: base, chell
Files
- lib/Options/Tokenize.hs +8/−0
- options.cabal +3/−3
- tests/OptionsTests/Api.hs +4/−3
- tests/OptionsTests/Help.hs +18/−16
- tests/OptionsTests/OptionTypes.hs +21/−20
- tests/OptionsTests/StringParsing.hs +5/−4
- tests/OptionsTests/Tokenize.hs +17/−16
- tests/OptionsTests/Util.hs +6/−5
lib/Options/Tokenize.hs view
@@ -11,6 +11,7 @@ , tokenize ) where +import Control.Applicative import Control.Monad.Error hiding (throwError) import qualified Control.Monad.Error import Control.Monad.State@@ -52,6 +53,13 @@ } newtype Tok a = Tok { unTok :: ErrorT String (StateT TokState Identity) a }++instance Functor Tok where+ fmap = liftM++instance Applicative Tok where+ pure = return+ (<*>) = ap instance Monad Tok where return = Tok . return
options.cabal view
@@ -1,5 +1,5 @@ name: options-version: 1.2.1+version: 1.2.1.1 license: MIT license-file: license.txt author: John Millikin <john@john-millikin.com>@@ -78,7 +78,7 @@ source-repository this type: git location: https://john-millikin.com/code/haskell-options/- tag: haskell-options_1.2.1+ tag: haskell-options_1.2.1.1 library ghc-options: -Wall -O2@@ -125,7 +125,7 @@ build-depends: base >= 4.0 && < 5.0- , chell >= 0.3.1 && < 0.4+ , chell >= 0.4 && < 0.5 , chell-quickcheck >= 0.2 && < 0.3 , containers >= 0.1 , monads-tf >= 0.1
tests/OptionsTests/Api.hs view
@@ -15,9 +15,10 @@ suite_Api :: Suite suite_Api = suite "api"- test_RepeatedFlags- test_CompatibleDuplicateFlags- test_ConflictingDuplicateFlags+ [ test_RepeatedFlags+ , test_CompatibleDuplicateFlags+ , test_ConflictingDuplicateFlags+ ] data RepeatedStringOpts = RepeatedStringOpts [String] deriving (Eq, Show)
tests/OptionsTests/Help.hs view
@@ -15,25 +15,27 @@ import Options.Types suite_Help :: Suite-suite_Help = suite "help"- suite_AddHelpFlags- test_CheckHelpFlag- test_ShowHelpSummary- test_ShowHelpSummary_Subcommand- test_ShowHelpAll- test_ShowHelpAll_Subcommand- test_ShowHelpGroup- test_ShowHelpGroup_Subcommand- test_ShowHelpGroup_SubcommandInvalid+suite_Help = suite "help" $+ suiteTests suite_AddHelpFlags +++ [ test_CheckHelpFlag+ , test_ShowHelpSummary+ , test_ShowHelpSummary_Subcommand+ , test_ShowHelpAll+ , test_ShowHelpAll_Subcommand+ , test_ShowHelpGroup+ , test_ShowHelpGroup_Subcommand+ , test_ShowHelpGroup_SubcommandInvalid+ ] suite_AddHelpFlags :: Suite suite_AddHelpFlags = suite "addHelpFlags"- test_AddHelpFlags_None- test_AddHelpFlags_Short- test_AddHelpFlags_Long- test_AddHelpFlags_Both- test_AddHelpFlags_NoAll- test_AddHelpFlags_Subcommand+ [ test_AddHelpFlags_None+ , test_AddHelpFlags_Short+ , test_AddHelpFlags_Long+ , test_AddHelpFlags_Both+ , test_AddHelpFlags_NoAll+ , test_AddHelpFlags_Subcommand+ ] groupHelp :: Maybe Group groupHelp = Just (Group
tests/OptionsTests/OptionTypes.hs view
@@ -20,26 +20,27 @@ suite_OptionTypes :: Suite suite_OptionTypes = suite "option-types"- test_Bool- test_String- test_Int- test_Int8- test_Int16- test_Int32- test_Int64- test_Word- test_Word8- test_Word16- test_Word32- test_Word64- test_Integer- test_Float- test_Double- test_Maybe- test_List- test_Set- test_Map- test_Enum+ [ test_Bool+ , test_String+ , test_Int+ , test_Int8+ , test_Int16+ , test_Int32+ , test_Int64+ , test_Word+ , test_Word8+ , test_Word16+ , test_Word32+ , test_Word64+ , test_Integer+ , test_Float+ , test_Double+ , test_Maybe+ , test_List+ , test_Set+ , test_Map+ , test_Enum+ ] parseValid :: (Show a, Eq a) => OptionType a -> String -> a -> Assertion parseValid t s expected = equal (optionTypeParse t s) (Right expected)
tests/OptionsTests/StringParsing.hs view
@@ -29,10 +29,11 @@ suite_StringParsing :: Suite suite_StringParsing = suite "string-parsing"- test_Defaults- test_Ascii- test_UnicodeValid- test_UnicodeInvalid+ [ test_Defaults+ , test_Ascii+ , test_UnicodeValid+ , test_UnicodeInvalid+ ] test_Defaults :: Test test_Defaults = assertions "defaults" $ do
tests/OptionsTests/Tokenize.hs view
@@ -16,22 +16,23 @@ suite_Tokenize :: Suite suite_Tokenize = suite "tokenize"- test_Empty- test_NoFlag- test_ShortFlag- test_ShortFlagUnknown- test_ShortFlagMissing- test_ShortFlagUnary- test_ShortFlagDuplicate- test_LongFlag- test_LongFlagUnknown- test_LongFlagMissing- test_LongFlagUnary- test_LongFlagDuplicate- test_EndFlags- test_Subcommand- test_SubcommandUnknown- test_Unicode+ [ test_Empty+ , test_NoFlag+ , test_ShortFlag+ , test_ShortFlagUnknown+ , test_ShortFlagMissing+ , test_ShortFlagUnary+ , test_ShortFlagDuplicate+ , test_LongFlag+ , test_LongFlagUnknown+ , test_LongFlagMissing+ , test_LongFlagUnary+ , test_LongFlagDuplicate+ , test_EndFlags+ , test_Subcommand+ , test_SubcommandUnknown+ , test_Unicode+ ] commandDefs :: OptionDefinitions commandDefs = OptionDefinitions
tests/OptionsTests/Util.hs view
@@ -27,13 +27,14 @@ suite_Util :: Suite suite_Util = suite "util"- test_ValidFieldName- test_ValidShortFlag- test_ValidLongFlag- test_HasDuplicates+ [ test_ValidFieldName+ , test_ValidShortFlag+ , test_ValidLongFlag+ , test_HasDuplicates #if defined(OPTIONS_ENCODING_UTF8)- property "decodeUtf8" prop_DecodeUtf8+ , property "decodeUtf8" prop_DecodeUtf8 #endif+ ] test_ValidFieldName :: Test test_ValidFieldName = assertions "validFieldName" $ do