sinatra_resource 0.4.21 → 0.4.22

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.
Files changed (88) hide show
  1. data/Gemfile +18 -0
  2. data/Gemfile.lock +51 -0
  3. data/README.mdown +1 -1
  4. data/VERSION +1 -1
  5. data/examples/datacatalog/.bundle/config +2 -0
  6. data/examples/datacatalog/Gemfile +14 -0
  7. data/examples/datacatalog/Gemfile.lock +33 -0
  8. data/examples/datacatalog/Rakefile +2 -2
  9. data/examples/datacatalog/app.rb +0 -2
  10. data/examples/datacatalog/config/config.rb +5 -7
  11. data/examples/datacatalog/lib/base.rb +2 -2
  12. data/examples/datacatalog/lib/resource.rb +5 -5
  13. data/examples/datacatalog/lib/roles.rb +2 -2
  14. data/examples/datacatalog/model_helpers/search.rb +6 -6
  15. data/examples/datacatalog/models/categorization.rb +1 -1
  16. data/examples/datacatalog/models/note.rb +1 -1
  17. data/examples/datacatalog/models/source.rb +3 -3
  18. data/examples/datacatalog/models/usage.rb +2 -2
  19. data/examples/datacatalog/models/user.rb +7 -7
  20. data/examples/datacatalog/resources/categories.rb +7 -7
  21. data/examples/datacatalog/resources/categories_sources.rb +4 -4
  22. data/examples/datacatalog/resources/notes.rb +1 -1
  23. data/examples/datacatalog/resources/sources.rb +3 -3
  24. data/examples/datacatalog/resources/sources_usages.rb +3 -3
  25. data/examples/datacatalog/resources/users.rb +3 -3
  26. data/examples/datacatalog/tasks/db.rake +2 -2
  27. data/examples/datacatalog/tasks/test.rake +1 -1
  28. data/examples/datacatalog/test/helpers/assertions/assert_include.rb +1 -1
  29. data/examples/datacatalog/test/helpers/assertions/assert_not_include.rb +1 -1
  30. data/examples/datacatalog/test/helpers/lib/model_factories.rb +7 -7
  31. data/examples/datacatalog/test/helpers/lib/model_helpers.rb +1 -1
  32. data/examples/datacatalog/test/helpers/lib/request_helpers.rb +7 -7
  33. data/examples/datacatalog/test/helpers/resource_test_helper.rb +1 -1
  34. data/examples/datacatalog/test/helpers/shared/api_keys.rb +11 -11
  35. data/examples/datacatalog/test/helpers/shared/common_body_responses.rb +1 -1
  36. data/examples/datacatalog/test/helpers/shared/model_counts.rb +2 -2
  37. data/examples/datacatalog/test/helpers/shared/status_codes.rb +4 -4
  38. data/examples/datacatalog/test/helpers/test_cases/resource_test_case.rb +4 -4
  39. data/examples/datacatalog/test/helpers/test_helper.rb +4 -10
  40. data/examples/datacatalog/test/models/categorization_test.rb +6 -6
  41. data/examples/datacatalog/test/models/category_test.rb +8 -8
  42. data/examples/datacatalog/test/models/note_test.rb +6 -6
  43. data/examples/datacatalog/test/models/search_test.rb +4 -4
  44. data/examples/datacatalog/test/models/source_test.rb +5 -5
  45. data/examples/datacatalog/test/models/user_test.rb +11 -11
  46. data/examples/datacatalog/test/resources/categories/categories_delete_test.rb +12 -12
  47. data/examples/datacatalog/test/resources/categories/categories_get_many_test.rb +9 -9
  48. data/examples/datacatalog/test/resources/categories/categories_get_one_test.rb +7 -7
  49. data/examples/datacatalog/test/resources/categories/categories_post_test.rb +16 -16
  50. data/examples/datacatalog/test/resources/categories/categories_put_test.rb +17 -17
  51. data/examples/datacatalog/test/resources/categories_sources/categories_sources_delete_test.rb +25 -25
  52. data/examples/datacatalog/test/resources/categories_sources/categories_sources_get_many_test.rb +5 -5
  53. data/examples/datacatalog/test/resources/categories_sources/categories_sources_get_one_test.rb +15 -15
  54. data/examples/datacatalog/test/resources/categories_sources/categories_sources_post_test.rb +31 -31
  55. data/examples/datacatalog/test/resources/categories_sources/categories_sources_put_test.rb +41 -41
  56. data/examples/datacatalog/test/resources/notes/notes_get_many_test.rb +15 -15
  57. data/examples/datacatalog/test/resources/notes/notes_get_one_test.rb +7 -7
  58. data/examples/datacatalog/test/resources/notes/notes_post_test.rb +12 -12
  59. data/examples/datacatalog/test/resources/sources/sources_delete_test.rb +12 -12
  60. data/examples/datacatalog/test/resources/sources/sources_get_many_search_test.rb +20 -20
  61. data/examples/datacatalog/test/resources/sources/sources_get_many_test.rb +8 -8
  62. data/examples/datacatalog/test/resources/sources/sources_get_one_test.rb +17 -9
  63. data/examples/datacatalog/test/resources/sources/sources_post_test.rb +13 -13
  64. data/examples/datacatalog/test/resources/sources/sources_put_test.rb +30 -30
  65. data/examples/datacatalog/test/resources/sources_usages/sources_usages_delete_test.rb +24 -24
  66. data/examples/datacatalog/test/resources/sources_usages/sources_usages_get_many_filter_test.rb +9 -9
  67. data/examples/datacatalog/test/resources/sources_usages/sources_usages_get_many_test.rb +9 -9
  68. data/examples/datacatalog/test/resources/sources_usages/sources_usages_get_one_test.rb +15 -15
  69. data/examples/datacatalog/test/resources/sources_usages/sources_usages_post_test.rb +16 -16
  70. data/examples/datacatalog/test/resources/sources_usages/sources_usages_put_test.rb +33 -33
  71. data/examples/datacatalog/test/resources/users/users_delete_test.rb +21 -21
  72. data/examples/datacatalog/test/resources/users/users_get_many_test.rb +16 -16
  73. data/examples/datacatalog/test/resources/users/users_get_one_test.rb +8 -8
  74. data/examples/datacatalog/test/resources/users/users_post_test.rb +13 -13
  75. data/examples/datacatalog/test/resources/users/users_put_test.rb +18 -18
  76. data/lib/builder/action_definitions.rb +8 -8
  77. data/lib/builder/helpers.rb +10 -12
  78. data/lib/builder/mongo_helpers.rb +13 -14
  79. data/lib/builder.rb +10 -10
  80. data/lib/exceptions.rb +1 -1
  81. data/lib/resource.rb +20 -20
  82. data/lib/roles.rb +2 -2
  83. data/lib/utility.rb +2 -2
  84. data/notes/permissions.mdown +6 -6
  85. data/sinatra_resource.gemspec +9 -4
  86. data/spec/spec_helper.rb +1 -1
  87. data/spec/utility_spec.rb +2 -2
  88. metadata +30 -4
data/Gemfile ADDED
@@ -0,0 +1,18 @@
1
+ source :rubygems
2
+
3
+ gem 'query_string_filter', '>= 0.1.4'
4
+
5
+ gem 'activesupport', '~> 2.3.8'
6
+ gem 'frequency', '>= 0.1.2', '< 0.2.0'
7
+ gem 'kronos', '>= 0.1.6'
8
+ gem 'mongo_mapper', '= 0.8.4'
9
+ gem 'sinatra', '>= 1.0'
10
+ gem 'sinatra_resource', '>= 0.4.21', '< 0.5'
11
+
12
+ group :test do
13
+ gem 'crack', '>= 0.1.4'
14
+ gem 'pending', '>= 0.1.1'
15
+ gem 'rr', '>= 0.10.11'
16
+ gem 'timecop', '>= 0.3.5'
17
+ gem 'tu-context', '>= 0.5.8'
18
+ end
data/Gemfile.lock ADDED
@@ -0,0 +1,51 @@
1
+ GEM
2
+ remote: http://rubygems.org/
3
+ specs:
4
+ activesupport (2.3.8)
5
+ bson (1.0.4)
6
+ crack (0.1.8)
7
+ frequency (0.1.5)
8
+ jnunemaker-validatable (1.8.4)
9
+ activesupport (>= 2.3.4)
10
+ kronos (0.1.7)
11
+ mongo (1.0.7)
12
+ bson (>= 1.0.4)
13
+ mongo_mapper (0.8.2)
14
+ activesupport (>= 2.3.4)
15
+ jnunemaker-validatable (~> 1.8.4)
16
+ plucky (~> 0.3.1)
17
+ pending (0.1.1)
18
+ plucky (0.3.4)
19
+ mongo (~> 1.0.7)
20
+ polyglot (0.3.1)
21
+ query_string_filter (0.1.6)
22
+ treetop (>= 1.4.2)
23
+ rack (1.2.1)
24
+ rr (0.10.11)
25
+ sinatra (1.0)
26
+ rack (>= 1.0)
27
+ sinatra_resource (0.4.21)
28
+ mongo_mapper (= 0.8.2)
29
+ query_string_filter (>= 0.1.4)
30
+ sinatra (>= 1.0)
31
+ timecop (0.3.5)
32
+ treetop (1.4.8)
33
+ polyglot (>= 0.3.1)
34
+ tu-context (0.5.8)
35
+
36
+ PLATFORMS
37
+ ruby
38
+
39
+ DEPENDENCIES
40
+ activesupport (~> 2.3.8)
41
+ crack (>= 0.1.4)
42
+ frequency (>= 0.1.2, < 0.2.0)
43
+ kronos (>= 0.1.6)
44
+ mongo_mapper (= 0.8.2)
45
+ pending (>= 0.1.1)
46
+ query_string_filter (>= 0.1.4)
47
+ rr (>= 0.10.11)
48
+ sinatra (>= 1.0)
49
+ sinatra_resource (>= 0.4.21, < 0.5)
50
+ timecop (>= 0.3.5)
51
+ tu-context (>= 0.5.8)
data/README.mdown CHANGED
@@ -16,7 +16,7 @@ You will need gemcutter if you don't have it already:
16
16
  I recommend a user-level install:
17
17
 
18
18
  gem install resource_sinatra
19
-
19
+
20
20
  Note: in general, beware of `sudo gem install <project_name>` -- it gives elevated privileges. Do you trust `<project name>`? Better to be safe and use a local install to `~/.gem`.
21
21
 
22
22
  ## Usage
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.21
1
+ 0.4.22
@@ -0,0 +1,2 @@
1
+ ---
2
+ BUNDLE_DISABLE_SHARED_GEMS: "1"
@@ -0,0 +1,14 @@
1
+ source :rubygems
2
+
3
+ gem 'sinatra', '>= 1.0'
4
+ gem 'mongo_mapper', '= 0.8.4'
5
+
6
+ group :test do
7
+ gem 'crack', '>= 0.1.4'
8
+ gem 'pending', '>= 0.1.1'
9
+ gem 'tu-context', '>= 0.5.8'
10
+ end
11
+
12
+ group :development do
13
+ gem 'yard'
14
+ end
@@ -0,0 +1,33 @@
1
+ GEM
2
+ remote: http://rubygems.org/
3
+ specs:
4
+ activesupport (2.3.8)
5
+ bson (1.0.7)
6
+ crack (0.1.8)
7
+ jnunemaker-validatable (1.8.4)
8
+ activesupport (>= 2.3.4)
9
+ mongo (1.0.8)
10
+ bson (>= 1.0.5)
11
+ mongo_mapper (0.8.4)
12
+ activesupport (>= 2.3.4)
13
+ jnunemaker-validatable (~> 1.8.4)
14
+ plucky (~> 0.3.5)
15
+ pending (0.1.1)
16
+ plucky (0.3.5)
17
+ mongo (~> 1.0.8)
18
+ rack (1.2.1)
19
+ sinatra (1.0)
20
+ rack (>= 1.0)
21
+ tu-context (0.5.8)
22
+ yard (0.5.8)
23
+
24
+ PLATFORMS
25
+ ruby
26
+
27
+ DEPENDENCIES
28
+ crack (>= 0.1.4)
29
+ mongo_mapper (= 0.8.4)
30
+ pending (>= 0.1.1)
31
+ sinatra (>= 1.0)
32
+ tu-context (>= 0.5.8)
33
+ yard
@@ -13,11 +13,11 @@ namespace :environment do
13
13
  puts "Loading application environment..."
14
14
  require File.dirname(__FILE__) + '/app'
15
15
  end
16
-
16
+
17
17
  task :models do
18
18
  puts "Loading models..."
19
19
  Config.setup_mongomapper
20
20
  base = File.dirname(__FILE__)
21
- Dir.glob(base + '/models/*.rb' ).each { |f| require f }
21
+ Dir.glob(base + '/models/*.rb').each { |f| require f }
22
22
  end
23
23
  end
@@ -1,6 +1,4 @@
1
1
  require 'rubygems'
2
-
3
- gem 'sinatra', '>= 1.0'
4
2
  require 'sinatra/base'
5
3
 
6
4
  require File.dirname(__FILE__) + '/config/config'
@@ -1,20 +1,18 @@
1
1
  require 'rubygems'
2
-
3
- gem 'mongo_mapper', '= 0.8.2'
4
2
  require 'mongo_mapper'
5
3
 
6
4
  module Config
7
-
5
+
8
6
  def self.setup
9
7
  setup_mongomapper
10
8
  # More application setup can go here...
11
9
  end
12
-
10
+
13
11
  def self.setup_mongomapper
14
12
  MongoMapper.connection = new_mongo_connection
15
13
  MongoMapper.database = environment_config['mongo_database']
16
14
  end
17
-
15
+
18
16
  def self.new_mongo_connection
19
17
  Mongo::Connection.new(environment_config["mongo_hostname"])
20
18
  end
@@ -44,7 +42,7 @@ module Config
44
42
  end
45
43
  end
46
44
  end
47
-
45
+
48
46
  def self.environment=(env)
49
47
  @environment = env
50
48
  end
@@ -52,7 +50,7 @@ module Config
52
50
  def self.environments
53
51
  config.keys
54
52
  end
55
-
53
+
56
54
  def self.config
57
55
  if @config
58
56
  @config
@@ -1,9 +1,9 @@
1
1
  module DataCatalog
2
-
2
+
3
3
  class Base < Sinatra::Base
4
4
  before do
5
5
  content_type :json
6
6
  end
7
7
  end
8
-
8
+
9
9
  end
@@ -1,9 +1,9 @@
1
1
  require 'uri'
2
2
 
3
3
  module DataCatalog
4
-
4
+
5
5
  module Resource
6
-
6
+
7
7
  def self.included(includee)
8
8
  includee.instance_eval do
9
9
  include SinatraResource::Resource
@@ -21,12 +21,12 @@ module DataCatalog
21
21
  def convert(object)
22
22
  object == "" ? "" : object.to_json
23
23
  end
24
-
24
+
25
25
  def full_uri(path)
26
26
  base_uri = Config.environment_config["base_uri"]
27
27
  URI.join(base_uri, path).to_s
28
28
  end
29
-
29
+
30
30
  def log_event(event, params)
31
31
  # Application-logic could go here.
32
32
  end
@@ -73,5 +73,5 @@ module DataCatalog
73
73
  end
74
74
 
75
75
  end
76
-
76
+
77
77
  end
@@ -1,10 +1,10 @@
1
1
  require File.expand_path(File.dirname(__FILE__) + '/../../../lib/sinatra_resource')
2
2
 
3
3
  module DataCatalog
4
-
4
+
5
5
  module Roles
6
6
  include SinatraResource::Roles
7
-
7
+
8
8
  role :anonymous
9
9
  role :basic => :anonymous
10
10
  role :owner => :basic
@@ -1,7 +1,7 @@
1
1
  module DataCatalog
2
-
2
+
3
3
  class Search
4
-
4
+
5
5
  # Returns an array of strings, tokenized with stopwords removed.
6
6
  #
7
7
  # @param [<String>] array
@@ -11,7 +11,7 @@ module DataCatalog
11
11
  def self.process(array)
12
12
  unstop(tokenize(array))
13
13
  end
14
-
14
+
15
15
  # Tokenize an array of strings.
16
16
  #
17
17
  # @param [<String>] array
@@ -25,7 +25,7 @@ module DataCatalog
25
25
  end
26
26
 
27
27
  REMOVE = %r([!,;])
28
-
28
+
29
29
  # Tokenize a string, removing extra characters too.
30
30
  #
31
31
  # @param [String] string
@@ -86,7 +86,7 @@ module DataCatalog
86
86
  def self.unstop(array)
87
87
  array - STOP_WORDS
88
88
  end
89
-
89
+
90
90
  end
91
-
91
+
92
92
  end
@@ -18,7 +18,7 @@ module DataCatalog
18
18
  belongs_to :category, :class_name => 'DataCatalog::Category'
19
19
 
20
20
  # == Validations
21
-
21
+
22
22
  validate :validate_associations
23
23
 
24
24
  def validate_associations
@@ -9,7 +9,7 @@ module DataCatalog
9
9
  key :text, String
10
10
  key :user_id, ObjectId
11
11
  timestamps!
12
-
12
+
13
13
  # == Indices
14
14
 
15
15
  # == Associations
@@ -1,5 +1,5 @@
1
1
  module DataCatalog
2
-
2
+
3
3
  class Source
4
4
 
5
5
  include MongoMapper::Document
@@ -35,9 +35,9 @@ module DataCatalog
35
35
 
36
36
  validates_presence_of :title
37
37
  validates_presence_of :url
38
-
38
+
39
39
  # == Callbacks
40
-
40
+
41
41
  before_save :update_keywords
42
42
  def update_keywords
43
43
  self._keywords = DataCatalog::Search.process([title, description])
@@ -1,7 +1,7 @@
1
1
  module DataCatalog
2
2
 
3
3
  class Usage
4
-
4
+
5
5
  include MongoMapper::EmbeddedDocument
6
6
 
7
7
  # == Attributes
@@ -21,7 +21,7 @@ module DataCatalog
21
21
  #
22
22
  # validates_presence_of :title
23
23
  # validates_presence_of :url
24
-
24
+
25
25
  # == Class Methods
26
26
 
27
27
  # == Various Instance Methods
@@ -1,9 +1,9 @@
1
1
  require 'digest/sha1'
2
2
 
3
3
  module DataCatalog
4
-
4
+
5
5
  class User
6
-
6
+
7
7
  include MongoMapper::Document
8
8
 
9
9
  # == Attributes
@@ -19,7 +19,7 @@ module DataCatalog
19
19
  ensure_index :email
20
20
 
21
21
  # == Validations
22
-
22
+
23
23
  validates_presence_of :name
24
24
  validates_presence_of :role
25
25
  validate :validate_role
@@ -31,9 +31,9 @@ module DataCatalog
31
31
  errors.add(:role, "must be in #{VALID_ROLES.inspect}")
32
32
  end
33
33
  end
34
-
34
+
35
35
  # == Callbacks
36
-
36
+
37
37
  before_create :assign_api_key
38
38
  def assign_api_key
39
39
  unless _api_key
@@ -46,9 +46,9 @@ module DataCatalog
46
46
  s = "#{Time.now.to_f}#{salt}#{rand(100_000_000)}#{name}#{email}"
47
47
  Digest::SHA1.hexdigest(s)
48
48
  end
49
-
49
+
50
50
  # == Various Instance Methods
51
-
51
+
52
52
  def token
53
53
  Digest::SHA1.hexdigest("#{id}/#{email}/123456789")
54
54
  end
@@ -15,7 +15,7 @@ module DataCatalog
15
15
  permission :delete => :curator
16
16
 
17
17
  # == Properties
18
-
18
+
19
19
  property :name
20
20
  property :log
21
21
 
@@ -29,13 +29,13 @@ module DataCatalog
29
29
  }
30
30
  end
31
31
  end
32
-
32
+
33
33
  # == Callbacks
34
-
34
+
35
35
  callback :before_create do |action|
36
36
  action.params["log"] = "before_create"
37
37
  end
38
-
38
+
39
39
  callback :after_create do |action, category|
40
40
  category.log += " after_create"
41
41
  end
@@ -43,7 +43,7 @@ module DataCatalog
43
43
  callback :before_update do |action, category|
44
44
  action.params["log"] = "before_update"
45
45
  end
46
-
46
+
47
47
  callback :after_update do |action, category|
48
48
  category.log += " after_update"
49
49
  end
@@ -51,14 +51,14 @@ module DataCatalog
51
51
  callback :before_destroy do |action, category|
52
52
  action.headers 'X-Test-Callbacks' => 'before_destroy'
53
53
  end
54
-
54
+
55
55
  callback :after_destroy do |action, category|
56
56
  x = action.response['X-Test-Callbacks']
57
57
  action.headers 'X-Test-Callbacks' => "#{x} after_destroy"
58
58
  end
59
59
 
60
60
  end
61
-
61
+
62
62
  Categories.build
63
63
 
64
64
  end
@@ -14,7 +14,7 @@ module DataCatalog
14
14
  :source_id => child.id
15
15
  )
16
16
  end
17
-
17
+
18
18
  relation :delete do |parent, child|
19
19
  Categorization.find(:conditions => {
20
20
  :category_id => parent.id,
@@ -30,7 +30,7 @@ module DataCatalog
30
30
  permission :create => :curator
31
31
  permission :update => :curator
32
32
  permission :delete => :curator
33
-
33
+
34
34
  # == Properties
35
35
 
36
36
  property :title
@@ -38,9 +38,9 @@ module DataCatalog
38
38
  property :raw, :w => :admin
39
39
 
40
40
  # == Callbacks
41
-
41
+
42
42
  end
43
-
43
+
44
44
  CategoriesSources.build
45
45
 
46
46
  end
@@ -22,7 +22,7 @@ module DataCatalog
22
22
  # == Callbacks
23
23
 
24
24
  end
25
-
25
+
26
26
  Notes.build
27
27
 
28
28
  end
@@ -13,13 +13,13 @@ module DataCatalog
13
13
  permission :create => :curator
14
14
  permission :update => :curator
15
15
  permission :delete => :curator
16
-
16
+
17
17
  # == Properties
18
18
 
19
19
  property :title
20
20
  property :url
21
21
  property :raw, :w => :admin, :hide_by_default => true
22
-
22
+
23
23
  property :categories do |source|
24
24
  source.categorizations.map do |categorization|
25
25
  {
@@ -32,7 +32,7 @@ module DataCatalog
32
32
 
33
33
  # == Callbacks
34
34
  end
35
-
35
+
36
36
  Sources.build
37
37
 
38
38
  end
@@ -16,7 +16,7 @@ module DataCatalog
16
16
  permission :create => :curator
17
17
  permission :update => :curator
18
18
  permission :delete => :curator
19
-
19
+
20
20
  # == Properties
21
21
 
22
22
  property :title
@@ -24,9 +24,9 @@ module DataCatalog
24
24
  property :description
25
25
 
26
26
  # == Callbacks
27
-
27
+
28
28
  end
29
-
29
+
30
30
  SourcesUsages.build
31
31
 
32
32
  end
@@ -15,19 +15,19 @@ module DataCatalog
15
15
  permission :delete => :owner
16
16
 
17
17
  # == Properties
18
-
18
+
19
19
  property :name, :r => :basic
20
20
  property :email, :r => :owner
21
21
  property :role, :r => :owner, :w => :admin
22
22
  property :_api_key, :r => :owner, :w => :admin
23
-
23
+
24
24
  property :token, :r => :owner do |user|
25
25
  user.token
26
26
  end
27
27
 
28
28
  # == Callbacks
29
29
  end
30
-
30
+
31
31
  Users.build
32
32
 
33
33
  end
@@ -1,5 +1,5 @@
1
1
  namespace :db do
2
-
2
+
3
3
  def verbosely_drop_database
4
4
  db_name = Config.drop_database
5
5
  puts "Dropped database: #{db_name}."
@@ -25,5 +25,5 @@ namespace :db do
25
25
  verbosely_drop_database
26
26
  end
27
27
  end
28
-
28
+
29
29
  end
@@ -2,7 +2,7 @@ desc "Run tests"
2
2
  task :test => %w(db:reset:test test:models test:resources)
3
3
 
4
4
  namespace :test do
5
-
5
+
6
6
  desc "Run model tests"
7
7
  Rake::TestTask.new(:models) do |t|
8
8
  t.test_files = FileList["test/models/*_test.rb"]
@@ -11,7 +11,7 @@ module Test
11
11
  end
12
12
  end
13
13
  end
14
-
14
+
15
15
  end
16
16
  end
17
17
  end
@@ -11,7 +11,7 @@ module Test
11
11
  end
12
12
  end
13
13
  end
14
-
14
+
15
15
  end
16
16
  end
17
17
  end
@@ -1,25 +1,25 @@
1
1
  module ModelFactories
2
-
2
+
3
3
  def create_source(custom={})
4
4
  create_model!(DataCatalog::Source, custom, {
5
5
  :title => "Healthcare Spending Data",
6
6
  :url => "http://data.gov/details/23",
7
7
  })
8
8
  end
9
-
9
+
10
10
  def create_category(custom={})
11
11
  create_model!(DataCatalog::Category, custom, {
12
12
  :name => "Sample Category",
13
13
  })
14
14
  end
15
-
15
+
16
16
  def create_categorization(custom={})
17
17
  create_model!(DataCatalog::Categorization, custom, {
18
18
  :source_id => "",
19
19
  :category_id => "",
20
20
  })
21
21
  end
22
-
22
+
23
23
  def create_note(custom={})
24
24
  create_model!(DataCatalog::Note, custom, {
25
25
  :text => "Sample Note",
@@ -34,9 +34,9 @@ module ModelFactories
34
34
  :role => "basic",
35
35
  })
36
36
  end
37
-
37
+
38
38
  # -----
39
-
39
+
40
40
  def new_usage(custom={})
41
41
  new_model!(DataCatalog::Usage, custom, {
42
42
  :title => "Sample Usage",
@@ -62,5 +62,5 @@ module ModelFactories
62
62
  end
63
63
  model
64
64
  end
65
-
65
+
66
66
  end
@@ -3,7 +3,7 @@ module ModelHelpers
3
3
  def self.included(includee)
4
4
  includee.extend(ClassMethods)
5
5
  end
6
-
6
+
7
7
  module ClassMethods
8
8
 
9
9
  # Is a document (looked up from +symbol+) missing +key+?