# The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.
# config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
# config.i18n.default_locale = :de
+ config.i18n.enforce_available_locales = false
end
end
require 'spec_helper'
describe FeedItem do
- pending "add some examples to (or delete) #{__FILE__}"
+ before(:each) do
+ @feed_item = FeedItem.new(
+ :feed_name => "feed",
+ :title => "foo",
+ :description => "bar"
+ )
+ end
+
+ it "is valid with valid attributes" do
+ expect(@feed_item).to be_valid
+ end
+
+ it "is not valid without a feed name" do
+ @feed_item.feed_name = nil
+ expect(@feed_item).not_to be_valid
+ end
+
+ it "is not valid without a title" do
+ @feed_item.title = nil
+ expect(@feed_item).not_to be_valid
+ end
+
+ it "is not valid without a description" do
+ @feed_item.description = nil
+ expect(@feed_item).not_to be_valid
+ end
+
+ it "is not valid with an improper feed name" do
+ @feed_item.feed_name = 'feed name'
+ expect(@feed_item).not_to be_valid
+ @feed_item.feed_name = 'feed%20name'
+ expect(@feed_item).not_to be_valid
+ @feed_item.feed_name = 'feed&name'
+ expect(@feed_item).not_to be_valid
+ @feed_item.feed_name = 'feed%26name'
+ expect(@feed_item).not_to be_valid
+ @feed_item.feed_name = 'feed<name'
+ expect(@feed_item).not_to be_valid
+ @feed_item.feed_name = 'feed%3Cname'
+ expect(@feed_item).not_to be_valid
+ @feed_item.feed_name = 'feed%name'
+ expect(@feed_item).not_to be_valid
+ @feed_item.feed_name = 'index'
+ expect(@feed_item).not_to be_valid
+ @feed_item.feed_name = 'show'
+ expect(@feed_item).not_to be_valid
+ @feed_item.feed_name = 'update'
+ expect(@feed_item).not_to be_valid
+ @feed_item.feed_name = 'action'
+ expect(@feed_item).not_to be_valid
+ end
end
--- /dev/null
+# This file is copied to spec/ when you run 'rails generate rspec:install'
+ENV["RAILS_ENV"] ||= 'test'
+require File.expand_path("../../config/environment", __FILE__)
+require 'rspec/rails'
+require 'rspec/autorun'
+
+# Requires supporting ruby files with custom matchers and macros, etc,
+# in spec/support/ and its subdirectories.
+Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f }
+
+# Checks for pending migrations before tests are run.
+# If you are not using ActiveRecord, you can remove this line.
+ActiveRecord::Migration.check_pending! if defined?(ActiveRecord::Migration)
+
+RSpec.configure do |config|
+ # ## Mock Framework
+ #
+ # If you prefer to use mocha, flexmock or RR, uncomment the appropriate line:
+ #
+ # config.mock_with :mocha
+ # config.mock_with :flexmock
+ # config.mock_with :rr
+
+ # Remove this line if you're not using ActiveRecord or ActiveRecord fixtures
+ config.fixture_path = "#{::Rails.root}/spec/fixtures"
+
+ # If you're not using ActiveRecord, or you'd prefer not to run each of your
+ # examples within a transaction, remove the following line or assign false
+ # instead of true.
+ config.use_transactional_fixtures = true
+
+ # If true, the base class of anonymous controllers will be inferred
+ # automatically. This will be the default behavior in future versions of
+ # rspec-rails.
+ config.infer_base_class_for_anonymous_controllers = false
+
+ # Run specs in random order to surface order dependencies. If you find an
+ # order dependency and want to debug it, you can fix the order by providing
+ # the seed, which is printed after each run.
+ # --seed 1234
+ config.order = "random"
+end