Add more parser tests, alias for quiet flag.
This commit is contained in:
		
							parent
							
								
									a18e230afa
								
							
						
					
					
						commit
						30004992e5
					
				|  | @ -3,8 +3,8 @@ defmodule Parser do | |||
|   def parse(command) do | ||||
|     {options, cmd, _} = OptionParser.parse( | ||||
|       command, | ||||
|       switches: [node: :atom], | ||||
|       aliases: [n: :node] | ||||
|       switches: [node: :atom, quiet: :boolean], | ||||
|       aliases: [n: :node, q: :quiet] | ||||
|     ) | ||||
|     {clear_on_empty_command(cmd), options} | ||||
|   end | ||||
|  |  | |||
|  | @ -9,22 +9,37 @@ defmodule ParserTest do | |||
|     assert Parser.parse(["sandwich", "pastrami"]) == {["sandwich", "pastrami"], []} | ||||
|   end | ||||
| 
 | ||||
|   test "one arity 0 command, one single-dash option" do | ||||
|   test "one arity 1 command, one double-dash quiet flag" do | ||||
|     assert Parser.parse(["sandwich", "pastrami", "--quiet"]) ==  | ||||
|       {["sandwich", "pastrami"], [quiet: true]} | ||||
|   end | ||||
| 
 | ||||
|   test "one arity 1 command, one single-dash quiet flag" do | ||||
|     assert Parser.parse(["sandwich", "pastrami", "-q"]) ==  | ||||
|       {["sandwich", "pastrami"], [quiet: true]} | ||||
|   end | ||||
| 
 | ||||
|   test "one arity 0 command, one single-dash node option" do | ||||
|     assert Parser.parse(["sandwich", "-n", "rabbitmq@localhost"]) ==  | ||||
|       {["sandwich"], [node: "rabbitmq@localhost"]} | ||||
|   end | ||||
| 
 | ||||
|   test "one arity 1 command, one single-dash option" do | ||||
|   test "one arity 1 command, one single-dash node option" do | ||||
|     assert Parser.parse(["sandwich", "pastrami", "-n", "rabbitmq@localhost"]) ==  | ||||
|       {["sandwich", "pastrami"], [node: "rabbitmq@localhost"]} | ||||
|   end | ||||
| 
 | ||||
|   test "single-dash option before command" do | ||||
|   test "one arity 1 command, one single-dash node option and one quiet flag" do | ||||
|     assert Parser.parse(["sandwich", "pastrami", "-n", "rabbitmq@localhost", "--quiet"]) ==  | ||||
|       {["sandwich", "pastrami"], [node: "rabbitmq@localhost", quiet: true]} | ||||
|   end | ||||
| 
 | ||||
|   test "single-dash node option before command" do | ||||
|     assert Parser.parse(["-n", "rabbitmq@localhost", "sandwich", "pastrami"]) ==  | ||||
|       {["sandwich", "pastrami"], [node: "rabbitmq@localhost"]} | ||||
|   end | ||||
| 
 | ||||
|   test "no commands, one double-dash option" do | ||||
|   test "no commands, one double-dash node option" do | ||||
|     assert Parser.parse(["-n=rabbitmq@localhost"]) == {[], [node: "rabbitmq@localhost"]} | ||||
|   end | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue