Commit Graph

321 Commits

Author SHA1 Message Date
Juan Batiz-Benet
d464e3d143 commands: go fmt 2014-10-21 18:16:04 -07:00
Matt Bell
dd81bf630f commands: Fixed tests 2014-10-21 18:07:49 -07:00
Matt Bell
ca44d0da2c commands: Removed Command#Register and exported Subcommands so subcommands can be defined statically 2014-10-21 18:05:54 -07:00
Matt Bell
6ff98df9c1 commands: Do command collision check in GetOptions 2014-10-21 18:00:26 -07:00
Matt Bell
4f10f03660 commands: Fixed tests 2014-10-21 16:15:22 -07:00
Matt Bell
dd84a3eb44 commands: Got rid of Response#Stream() in favor of setting value to a io.Reader 2014-10-21 16:15:06 -07:00
Matt Bell
b65a5bacbe commands: Made Error implement error interface 2014-10-21 15:25:47 -07:00
Matt Bell
8786878fdb commands: Fixed tests 2014-10-21 15:25:01 -07:00
Matt Bell
4896123c14 commands: Export command Run function 2014-10-21 15:24:39 -07:00
Matt Bell
71ff571ecf commands/cli: Made Parse return component fields instead of a Request 2014-10-20 17:02:25 -07:00
Matt Bell
b022ba4a3a commands: Fixed tests 2014-10-20 14:39:23 -07:00
Matt Bell
7bd7ed6d52 commands: Added output stream field to Response 2014-10-20 14:38:36 -07:00
Matt Bell
c0b28dc19d commands: Added input stream field to Request 2014-10-20 14:38:09 -07:00
Juan Batiz-Benet
b10fc2cc50 turned req + res into interfaces 2014-10-20 11:49:07 -07:00
Juan Batiz-Benet
bbef82f4fa "enc" -> EncShort 2014-10-20 08:00:28 -07:00
Juan Batiz-Benet
4986600e54 parsePath no err 2014-10-20 08:00:28 -07:00
Juan Batiz-Benet
92528ba764 Sub -> Subcommand 2014-10-20 07:55:23 -07:00
Juan Batiz-Benet
84fa7bc46d AddOptionNames func 2014-10-20 07:53:55 -07:00
Juan Batiz-Benet
09d2277f0a f -> run, Function type. 2014-10-20 07:53:54 -07:00
Juan Batiz-Benet
7673ce6f65 fmt, lint, + vet commands/ 2014-10-20 07:53:14 -07:00
Matt Bell
a9fa767b09 commands/cli: Added test for detecting duplicate options 2014-10-20 07:04:55 -07:00
Matt Bell
117af86ca7 commands/cli: Error if there are duplicate values for an option 2014-10-20 07:04:55 -07:00
Matt Bell
b48b12e425 commands/cli: Fixed test for new parsing 2014-10-20 07:04:55 -07:00
Matt Bell
f87c418eee commands/cli: Refactored CLI parsing to match go tooling conventions 2014-10-20 07:04:54 -07:00
Matt Bell
e5e121a6b1 commands: Made Request#Option also return an existence bool 2014-10-20 07:04:54 -07:00
Matt Bell
4f06c6fdba commands: Formatted code 2014-10-20 07:04:54 -07:00
Matt Bell
d2176c05eb commands: Added Command#Get 2014-10-20 07:04:54 -07:00
Matt Bell
c054fb3655 commands: Added simple Command#Resolve test 2014-10-20 07:04:54 -07:00
Matt Bell
4af61ad994 commands: Added Command#Resolve 2014-10-20 07:04:54 -07:00
Matt Bell
4b0f44e441 commands: Fixed tests 2014-10-20 07:04:54 -07:00
Matt Bell
09311d4bab commands: Added 'NewEmptyRequest' 2014-10-20 07:04:54 -07:00
Matt Bell
968ec344e5 commands/cli: Made Parse return a Request object instead of separate values 2014-10-20 07:04:53 -07:00
Matt Bell
7a36278dbc commands: Allow setting Request fields in NewRequest 2014-10-20 07:04:53 -07:00
Matt Bell
47eea7fd93 commands: Added a option validation test for convertible string values 2014-10-20 07:04:53 -07:00
Matt Bell
1e8719e7f4 commands: Fixed tests 2014-10-20 07:04:53 -07:00
Matt Bell
c575b5087a commands: Added option value conversion, and moved option validation logic into Request#convertOptions 2014-10-20 07:04:53 -07:00
Matt Bell
e1a4b8d668 commands: Added Request#SetPath method 2014-10-20 07:04:53 -07:00
Matt Bell
793a8de9c2 commands: Refactored to make Request contain command path 2014-10-20 07:04:53 -07:00
Matt Bell
86bc450b20 commands/cli: Pass option definitions as an argument to parseOptions 2014-10-20 07:04:53 -07:00
Matt Bell
97b8719075 commands/cli: Removed parser string handling since the go runtime handles it for us automatically 2014-10-20 07:04:53 -07:00
Matt Bell
5d9fa93c85 commands/cli: Added test for single-dash option value 2014-10-20 07:04:53 -07:00
Matt Bell
66e6da3ddd commands/cli: Added value parsing for single-dash options 2014-10-20 07:04:52 -07:00
Matt Bell
08885c0ced commands/cli: Fixed tests for refactor 2014-10-20 07:04:52 -07:00
Matt Bell
bb32633136 commands/cli: Refactored parsing to always get the command path at the beginning of the CLI input 2014-10-20 07:04:52 -07:00
Matt Bell
66b0727de6 commands/cli: Renamed parse functions to parse* 2014-10-20 07:04:52 -07:00
Matt Bell
1b35615824 commands: Made Command#GetOption method, for getting all options for a given command path 2014-10-20 07:04:52 -07:00
Matt Bell
f437230d88 commands/cli: Added path/args test 2014-10-20 07:04:52 -07:00
Matt Bell
4bd3a77778 commands/cli: Added path/args parsing 2014-10-20 07:04:52 -07:00
Matt Bell
b3eecf4f64 commands/cli: Added simple option parser test 2014-10-20 07:04:52 -07:00
Matt Bell
bf328181cd commands/cli: Added CLI option parsing 2014-10-20 07:04:52 -07:00
Matt Bell
43670971d8 commands: Formatted code 2014-10-20 07:04:52 -07:00
Matt Bell
94ca2642a1 commands: Added test for Response error marshalling 2014-10-20 07:04:51 -07:00
Matt Bell
aa592cec80 commands: Added error marshalling to Response 2014-10-20 07:04:51 -07:00
Matt Bell
01938ac574 commands: Updated Response test to use safer option setting 2014-10-20 07:04:51 -07:00
Matt Bell
308ee5c949 commands: Added Request#SetOption so we can set options with multiple names 2014-10-20 07:04:51 -07:00
Matt Bell
808d9c1912 commands: Wrote tests for Response marshalling 2014-10-20 07:04:51 -07:00
Matt Bell
a3a843759b commands: Added marshalling to Response 2014-10-20 07:04:51 -07:00
Matt Bell
95b0dd29f8 commands: Added an Error struct for creating marshallable errors 2014-10-20 07:04:51 -07:00
Matt Bell
d1595ce34c commands: Added basic methods to Request 2014-10-20 07:04:51 -07:00
Matt Bell
df034c9c0b commands: Updated Command tests for new Response API 2014-10-20 07:04:51 -07:00
Matt Bell
b2ee05a0be commands: Updated Command to use Response for output rather than (interface{}, error) 2014-10-20 07:04:50 -07:00
Matt Bell
f31fd53df9 commands: Added Response 2014-10-20 07:04:50 -07:00
Matt Bell
97ce60f8a4 commands: Added global options list to command tests 2014-10-20 07:04:50 -07:00
Matt Bell
d7e9afc801 commands: Use global options when registering and calling commands 2014-10-20 07:04:50 -07:00
Matt Bell
47ebf174f4 commands: Created a list of global options (for options owned by commands package) 2014-10-20 07:04:50 -07:00
Matt Bell
e593c180fe commands: Added tests for Command.Register 2014-10-20 07:04:50 -07:00
Matt Bell
5b18844c06 commands: Check for option name collisions 2014-10-20 07:04:50 -07:00
Matt Bell
dd682963a2 commands: Wrote tests for command option validation 2014-10-20 07:04:50 -07:00
Matt Bell
15b7388c0e commands: Request struct 2014-10-20 07:04:49 -07:00
Matt Bell
30ea427b7b commands: Created Option struct 2014-10-20 07:04:49 -07:00
Matt Bell
dd2a10509f commands: Implemented Command 2014-10-20 07:04:49 -07:00