drydock 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,40 @@
1
+ require File.dirname(__FILE__) + "/../lib/drydock"
2
+ require "rubygems"
3
+ require "test/spec"
4
+ require "mocha"
5
+
6
+ class Test::Unit::TestCase
7
+ def test_command_direct(cmd, argv, &b)
8
+ Drydock::Command.new(cmd, &b).call(*argv)
9
+ end
10
+ def test_command(*args, &b)
11
+ command(*args, &b)
12
+ end
13
+ end
14
+
15
+ class JohnWestSmokedOysters < Drydock::Command; end;
16
+
17
+ Drydock.run = false
18
+
19
+ context "command" do
20
+
21
+ setup do
22
+ @mock = mock()
23
+ end
24
+
25
+ specify "should know a command alias" do
26
+ @mock.expects(:called).with(:eat_alias)
27
+ test_command_direct(:eat, [:eat_alias]) { |obj,argv|
28
+ @mock.called(obj.alias)
29
+ }
30
+ end
31
+
32
+ specify "should accept a custom command class" do
33
+ @mock.expects(:called).with(JohnWestSmokedOysters)
34
+ test_command(:eat => JohnWestSmokedOysters) { |obj,argv|
35
+ @mock.called(obj.class)
36
+ }
37
+ Drydock.run!(['eat'])
38
+ end
39
+
40
+ end
metadata ADDED
@@ -0,0 +1,90 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: drydock
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.0
5
+ platform: ruby
6
+ authors:
7
+ - Delano Mandelbaum
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-08-17 00:00:00 -04:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description: A seaworthy DSL for writing command line apps inspired by Blake Mizerany's Frylock
17
+ email: delano@solutious.com
18
+ executables: []
19
+
20
+ extensions: []
21
+
22
+ extra_rdoc_files:
23
+ - README.rdoc
24
+ - LICENSE.txt
25
+ - CHANGES.txt
26
+ files:
27
+ - CHANGES.txt
28
+ - LICENSE.txt
29
+ - README.rdoc
30
+ - Rakefile
31
+ - bin/example
32
+ - drydock.gemspec
33
+ - lib/drydock.rb
34
+ - test/command_test.rb
35
+ - doc
36
+ - doc/classes
37
+ - doc/classes/Drydock
38
+ - doc/classes/Drydock/Command.html
39
+ - doc/classes/Drydock/InvalidArgument.html
40
+ - doc/classes/Drydock/MissingArgument.html
41
+ - doc/classes/Drydock/NoCommandsDefined.html
42
+ - doc/classes/Drydock/UnknownCommand.html
43
+ - doc/classes/Drydock.html
44
+ - doc/created.rid
45
+ - doc/files
46
+ - doc/files/bin
47
+ - doc/files/bin/example.html
48
+ - doc/files/CHANGES_txt.html
49
+ - doc/files/lib
50
+ - doc/files/lib/drydock_rb.html
51
+ - doc/files/LICENSE_txt.html
52
+ - doc/files/README_rdoc.html
53
+ - doc/fr_class_index.html
54
+ - doc/fr_file_index.html
55
+ - doc/fr_method_index.html
56
+ - doc/index.html
57
+ - doc/rdoc-style.css
58
+ has_rdoc: true
59
+ homepage: http://github.com/delano/drydock
60
+ post_install_message:
61
+ rdoc_options:
62
+ - --line-numbers
63
+ - --inline-source
64
+ - --title
65
+ - "Drydock: a DSL for command-line apps"
66
+ - --main
67
+ - README.rdoc
68
+ require_paths:
69
+ - lib
70
+ required_ruby_version: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: "0"
75
+ version:
76
+ required_rubygems_version: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: "0"
81
+ version:
82
+ requirements: []
83
+
84
+ rubyforge_project: drydock
85
+ rubygems_version: 1.2.0
86
+ signing_key:
87
+ specification_version: 1
88
+ summary: A seaworthy DSL for writing command line apps
89
+ test_files: []
90
+