nofxx-annotate 2.1.1 → 2.2.2

Sign up to get free protection for your applications and to get access to all the features.
data/Manifest.txt CHANGED
@@ -5,17 +5,17 @@ README.rdoc
5
5
  Rakefile
6
6
  annotate.gemspec
7
7
  bin/annotate
8
- config/hoe.rb
9
- config/requirements.rb
10
8
  lib/annotate.rb
11
- lib/annotate_models/annotate_models.rb
12
- lib/annotate_routes/annotate_routes.rb
9
+ lib/annotate/annotate_models.rb
10
+ lib/annotate/annotate_routes.rb
13
11
  lib/tasks/annotate_models.rake
14
12
  lib/tasks/annotate_routes.rake
15
13
  script/console
16
14
  script/destroy
17
15
  script/generate
18
16
  setup.rb
17
+ spec/annotate/annotate_models_spec.rb
18
+ spec/annotate/annotate_routes_spec.rb
19
19
  spec/annotate_spec.rb
20
20
  spec/spec.opts
21
21
  spec/spec_helper.rb
@@ -27,17 +27,17 @@ README.rdoc
27
27
  Rakefile
28
28
  annotate.gemspec
29
29
  bin/annotate
30
- config/hoe.rb
31
- config/requirements.rb
32
30
  lib/annotate.rb
33
- lib/annotate_models/annotate_models.rb
34
- lib/annotate_routes/annotate_routes.rb
31
+ lib/annotate/annotate_models.rb
32
+ lib/annotate/annotate_routes.rb
35
33
  lib/tasks/annotate_models.rake
36
34
  lib/tasks/annotate_routes.rake
37
35
  script/console
38
36
  script/destroy
39
37
  script/generate
40
38
  setup.rb
39
+ spec/annotate/annotate_models_spec.rb
40
+ spec/annotate/annotate_routes_spec.rb
41
41
  spec/annotate_spec.rb
42
42
  spec/spec.opts
43
43
  spec/spec_helper.rb
@@ -49,17 +49,17 @@ README.rdoc
49
49
  Rakefile
50
50
  annotate.gemspec
51
51
  bin/annotate
52
- config/hoe.rb
53
- config/requirements.rb
54
52
  lib/annotate.rb
55
- lib/annotate_models/annotate_models.rb
56
- lib/annotate_routes/annotate_routes.rb
53
+ lib/annotate/annotate_models.rb
54
+ lib/annotate/annotate_routes.rb
57
55
  lib/tasks/annotate_models.rake
58
56
  lib/tasks/annotate_routes.rake
59
57
  script/console
60
58
  script/destroy
61
59
  script/generate
62
60
  setup.rb
61
+ spec/annotate/annotate_models_spec.rb
62
+ spec/annotate/annotate_routes_spec.rb
63
63
  spec/annotate_spec.rb
64
64
  spec/spec.opts
65
65
  spec/spec_helper.rb
data/annotate.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{annotate}
5
- s.version = "2.1.1"
5
+ s.version = "2.2.2"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Marcos Piccinini"]
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
12
12
  s.email = ["x@nofxx.com"]
13
13
  s.executables = ["annotate"]
14
14
  s.extra_rdoc_files = ["History.txt", "License.txt", "Manifest.txt", "README.rdoc"]
15
- s.files = ["History.txt", "License.txt", "Manifest.txt", "README.rdoc", "Rakefile", "annotate.gemspec", "bin/annotate", "config/hoe.rb", "config/requirements.rb", "lib/annotate.rb", "lib/annotate_models/annotate_models.rb", "lib/annotate_routes/annotate_routes.rb", "lib/tasks/annotate_models.rake", "lib/tasks/annotate_routes.rake", "script/console", "script/destroy", "script/generate", "setup.rb", "spec/annotate_spec.rb", "spec/spec.opts", "spec/spec_helper.rb", "tasks/rspec.rake"]
15
+ s.files = ["History.txt", "License.txt", "Manifest.txt", "README.rdoc", "Rakefile", "annotate.gemspec", "bin/annotate", "lib/annotate.rb", "lib/annotate/annotate_models.rb", "lib/annotate/annotate_routes.rb", "lib/tasks/annotate_models.rake", "lib/tasks/annotate_routes.rake", "script/console", "script/destroy", "script/generate", "setup.rb", "spec/annotate/annotate_models_spec.rb", "spec/annotate/annotate_routes_spec.rb", "spec/annotate_spec.rb", "spec/spec.opts", "spec/spec_helper.rb", "tasks/rspec.rake"]
16
16
  s.has_rdoc = true
17
17
  s.homepage = %q{http://github.com/nofxx/annotate}
18
18
  s.rdoc_options = ["--main", "README.rdoc"]
@@ -1,14 +1,18 @@
1
1
  module AnnotateModels
2
2
  class << self
3
+ # Annotate Models plugin use this header
4
+ COMPAT_PREFIX = "== Schema Info"
5
+ PREFIX = "== Schema Information"
6
+
3
7
  MODEL_DIR = "app/models"
4
8
  FIXTURE_DIRS = ["test/fixtures","spec/fixtures"]
5
- UNIT_TEST_DIR = File.join(RAILS_ROOT, "test/unit" )
6
- SPEC_MODEL_DIR = File.join(RAILS_ROOT, "spec/models")
9
+ # File.join for windows reverse bar compat?
10
+ # I dont use windows, can`t test
11
+ UNIT_TEST_DIR = File.join("test", "unit" )
12
+ SPEC_MODEL_DIR = File.join("spec", "models")
7
13
  # Object Daddy http://github.com/flogic/object_daddy/tree/master
8
- EXEMPLARS_DIR = File.join(RAILS_ROOT, "spec/exemplars")
9
- PREFIX = "== Schema Information"
10
- # Annotate Models as plugin use this header
11
- COMPAT_PREFIX = "== Schema Info"
14
+ EXEMPLARS_DIR = File.join("spec", "exemplars")
15
+
12
16
 
13
17
  # Simple quoting for the default column value
14
18
  def quote(value)
@@ -20,8 +20,8 @@ module AnnotateRoutes
20
20
  PREFIX = "#== Route Info"
21
21
 
22
22
  def self.do_annotate
23
- routes_rb = File.join(RAILS_ROOT, "config/routes.rb")
24
- header = PREFIX + "\n# Generated on #{Time.now}"
23
+ routes_rb = File.join("config", "routes.rb")
24
+ header = PREFIX + "\n# Generated on #{Time.now}\n#"
25
25
  if File.exists? routes_rb
26
26
  routes_map = `rake routes`
27
27
  routes_map = routes_map.split("\n")
data/lib/annotate.rb CHANGED
@@ -2,7 +2,7 @@ $:.unshift(File.dirname(__FILE__)) unless
2
2
  $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
3
3
 
4
4
  module Annotate
5
- VERSION = '2.1.1'
5
+ VERSION = '2.2.2'
6
6
  end
7
7
 
8
8
 
@@ -1,6 +1,6 @@
1
1
  desc "Add schema information (as comments) to model and fixture files"
2
2
  task :annotate_models => :environment do
3
- require 'annotate_models/annotate_models'
3
+ require 'annotate/annotate_models'
4
4
  options={}
5
5
  options[:position_in_class] = ENV['position_in_class'] || ENV['position']
6
6
  options[:position_in_fixture] = ENV['position_in_fixture'] || ENV['position']
@@ -1,5 +1,5 @@
1
1
  desc "Prepends the route map to the top of routes.rb"
2
2
  task :annotate_routes do
3
- require 'annotate_routes/annotate_routes'
3
+ require 'annotate/annotate_routes'
4
4
  AnnotateRoutes.do_annotate
5
5
  end
@@ -0,0 +1,35 @@
1
+ require File.dirname(__FILE__) + '/../spec_helper.rb'
2
+ require 'annotate/annotate_models'
3
+
4
+ describe AnnotateModels do
5
+
6
+ def mock_klass(stubs={})
7
+ @mock_file ||= mock("Klass", stubs)
8
+ end
9
+
10
+ def mock_column(stubs={})
11
+ @mock_column ||= mock("Column", stubs)
12
+ end
13
+
14
+ it { AnnotateModels.quote(nil).should eql("NULL") }
15
+ it { AnnotateModels.quote(true).should eql("TRUE") }
16
+ it { AnnotateModels.quote(false).should eql("FALSE") }
17
+ it { AnnotateModels.quote(25).should eql("25") }
18
+ it { AnnotateModels.quote(25.6).should eql("25.6") }
19
+ it { AnnotateModels.quote(1e-20).should eql("1.0e-20") }
20
+
21
+ it "should get schema info" do
22
+
23
+ AnnotateModels.get_schema_info(mock_klass(
24
+ :table_name => "users",
25
+ :primary_key => "id",
26
+ :column_names => ["id","login"],
27
+ :columns => [
28
+ mock_column(:type => "integer", :default => nil, :null => false, :name => "id", :limit => nil),
29
+ mock_column(:type => "string", :default => nil, :null => false, :name => "name", :limit => 50)
30
+ ]), "Hello").should eql("# Hello\n#\n# Table name: users\n#\n# id :integer not null, primary key\n# id :integer not null, primary key\n#\n\n")
31
+
32
+
33
+ end
34
+
35
+ end
@@ -0,0 +1,30 @@
1
+ require File.dirname(__FILE__) + '/../spec_helper.rb'
2
+ require 'annotate/annotate_routes'
3
+
4
+ describe AnnotateRoutes do
5
+
6
+ def mock_file(stubs={})
7
+ @mock_file ||= mock(File, stubs)
8
+ end
9
+
10
+ it "should check if routes.rb exists" do
11
+ File.should_receive(:join).with("config", "routes.rb").and_return(mock_file)
12
+ File.should_receive(:exists?).with(@mock_file).and_return(false)
13
+ AnnotateRoutes.should_receive(:puts).with("Can`t find routes.rb")
14
+
15
+ AnnotateRoutes.do_annotate
16
+ end
17
+
18
+ it "should annotate!" do
19
+ File.should_receive(:join).with("config", "routes.rb").and_return("config/routes.rb")
20
+ File.should_receive(:exists?).with("config/routes.rb").and_return(true)
21
+ AnnotateRoutes.should_receive(:`).with("rake routes").and_return("bad line\ngood line")
22
+ File.should_receive(:read).with("config/routes.rb").and_return("bla")
23
+ File.should_receive(:open).with("config/routes.rb", "wb").and_yield(mock_file)
24
+ @mock_file.should_receive(:puts).with(/bla\n\n#== Route Info\n# Generated on .*\n#\n# good line/)
25
+
26
+ AnnotateRoutes.do_annotate
27
+ end
28
+
29
+
30
+ end
@@ -1,11 +1,9 @@
1
1
  require File.dirname(__FILE__) + '/spec_helper.rb'
2
2
 
3
- # Time to add your specs!
4
- # http://rspec.info/
5
- describe "Place your specs here" do
3
+ describe Annotate do
6
4
 
7
- it "find this spec in spec directory" do
8
- violated "Be sure to write your specs"
5
+ it "should have a version" do
6
+ Annotate::VERSION.should be_instance_of(String)
9
7
  end
10
8
 
11
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nofxx-annotate
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.1
4
+ version: 2.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcos Piccinini
@@ -50,17 +50,17 @@ files:
50
50
  - Rakefile
51
51
  - annotate.gemspec
52
52
  - bin/annotate
53
- - config/hoe.rb
54
- - config/requirements.rb
55
53
  - lib/annotate.rb
56
- - lib/annotate_models/annotate_models.rb
57
- - lib/annotate_routes/annotate_routes.rb
54
+ - lib/annotate/annotate_models.rb
55
+ - lib/annotate/annotate_routes.rb
58
56
  - lib/tasks/annotate_models.rake
59
57
  - lib/tasks/annotate_routes.rake
60
58
  - script/console
61
59
  - script/destroy
62
60
  - script/generate
63
61
  - setup.rb
62
+ - spec/annotate/annotate_models_spec.rb
63
+ - spec/annotate/annotate_routes_spec.rb
64
64
  - spec/annotate_spec.rb
65
65
  - spec/spec.opts
66
66
  - spec/spec_helper.rb
data/config/hoe.rb DELETED
@@ -1,69 +0,0 @@
1
- require 'annotate_models/version'
2
-
3
- AUTHOR = 'Dave Thomas' # can also be an array of Authors
4
- EMAIL = "ctran@pragmaquest.com"
5
- DESCRIPTION = "Add a comment summarizing the current schema to the top of each ActiveRecord model source file"
6
- GEM_NAME = 'annotate-models' # what ppl will type to install your gem
7
- RUBYFORGE_PROJECT = 'annotate-models' # The unix name for your project
8
- HOMEPATH = "http://#{RUBYFORGE_PROJECT}.rubyforge.org"
9
- DOWNLOAD_PATH = "http://rubyforge.org/projects/#{RUBYFORGE_PROJECT}"
10
-
11
- @config_file = "~/.rubyforge/user-config.yml"
12
- @config = nil
13
- RUBYFORGE_USERNAME = "unknown"
14
- def rubyforge_username
15
- unless @config
16
- begin
17
- @config = YAML.load(File.read(File.expand_path(@config_file)))
18
- rescue
19
- puts <<-EOS
20
- ERROR: No rubyforge config file found: #{@config_file}
21
- Run 'rubyforge setup' to prepare your env for access to Rubyforge
22
- - See http://newgem.rubyforge.org/rubyforge.html for more details
23
- EOS
24
- exit
25
- end
26
- end
27
- RUBYFORGE_USERNAME.replace @config["username"]
28
- end
29
-
30
-
31
- REV = nil
32
- # UNCOMMENT IF REQUIRED:
33
- # REV = `svn info`.each {|line| if line =~ /^Revision:/ then k,v = line.split(': '); break v.chomp; else next; end} rescue nil
34
- VERS = AnnotateModels::VERSION::STRING + (REV ? ".#{REV}" : "")
35
- RDOC_OPTS = ['--quiet', '--title', 'annotate_models documentation',
36
- "--opname", "index.html",
37
- "--line-numbers",
38
- "--main", "README",
39
- "--inline-source"]
40
-
41
- class Hoe
42
- def extra_deps
43
- @extra_deps.reject! { |x| Array(x).first == 'hoe' }
44
- @extra_deps
45
- end
46
- end
47
-
48
- # Generate all the Rake tasks
49
- # Run 'rake -T' to see list of generated tasks (from gem root directory)
50
- hoe = Hoe.new(GEM_NAME, VERS) do |p|
51
- p.developer(AUTHOR, EMAIL)
52
- p.description = DESCRIPTION
53
- p.summary = DESCRIPTION
54
- p.url = HOMEPATH
55
- p.rubyforge_name = RUBYFORGE_PROJECT if RUBYFORGE_PROJECT
56
- p.test_globs = ["test/**/test_*.rb"]
57
- p.clean_globs |= ['**/.*.sw?', '*.gem', '.config', '**/.DS_Store'] #An array of file patterns to delete on clean.
58
-
59
- # == Optional
60
- p.changes = p.paragraphs_of("History.txt", 0..1).join("\n\n")
61
- p.extra_deps = [] # An array of rubygem dependencies [name, version], e.g. [ ['active_support', '>= 1.3.1'] ]
62
- p.spec_extras = {} # A hash of extra values to set in the gemspec.
63
-
64
- end
65
-
66
- CHANGES = hoe.paragraphs_of('History.txt', 0..1).join("\\n\\n")
67
- PATH = (RUBYFORGE_PROJECT == GEM_NAME) ? RUBYFORGE_PROJECT : "#{RUBYFORGE_PROJECT}/#{GEM_NAME}"
68
- hoe.remote_rdoc_dir = File.join(PATH.gsub(/^#{RUBYFORGE_PROJECT}\/?/,''), 'rdoc')
69
- hoe.rsync_args = '-av --delete --ignore-errors'
@@ -1,17 +0,0 @@
1
- require 'fileutils'
2
- include FileUtils
3
-
4
- require 'rubygems'
5
- %w[rake hoe newgem rubigen].each do |req_gem|
6
- begin
7
- require req_gem
8
- rescue LoadError
9
- puts "This Rakefile requires the '#{req_gem}' RubyGem."
10
- puts "Installation: gem install #{req_gem} -y"
11
- exit
12
- end
13
- end
14
-
15
- $:.unshift(File.join(File.dirname(__FILE__), %w[.. lib]))
16
-
17
- require 'annotate_models'