前提・実現したいこと
はじめて質問させていただきます。
独学でrailsチュートリアルを勉強しています。
6章の最後の6.4rails testでエラーが出て困っています。
wrong number of arguments
ruby:ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-linux]
rails:Rails 5.1.6
IDE:cloud9
発生している問題・エラーメッセージ
master:~/environment/sample_app (master) $ rails test Running via Spring preloader in process 17574 Traceback (most recent call last): 29: from -e:1:in `<main>' 28: from /home/ec2-user/.rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require' 27: from /home/ec2-user/.rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require' 26: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:286:in `load' 25: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:258:in `load_dependency' 24: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:286:in `block in load' 23: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:286:in `load' 22: from /home/ec2-user/environment/sample_app/bin/rails:9:in `<top (required)>' 21: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in `require' 20: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:258:in `load_dependency' 19: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in `block in require' 18: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in `require' 17: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/railties-5.1.6/lib/rails/commands.rb:16:in `<top (required)>' 16: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/railties-5.1.6/lib/rails/command.rb:44:in `invoke' 15: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/railties-5.1.6/lib/rails/command/base.rb:63:in `perform' 14: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/thor-0.20.3/lib/thor.rb:387:in `dispatch' 13: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/thor-0.20.3/lib/thor/invocation.rb:126:in `invoke_command' 12: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/thor-0.20.3/lib/thor/command.rb:27:in `run' 11: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/railties-5.1.6/lib/rails/commands/test/test_command.rb:38:in `perform' 10: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/railties-5.1.6/lib/rails/test_unit/runner.rb:39:in `run' 9: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/railties-5.1.6/lib/rails/test_unit/runner.rb:50:in `load_tests' 8: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/railties-5.1.6/lib/rails/test_unit/runner.rb:50:in `each' 7: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/railties-5.1.6/lib/rails/test_unit/runner.rb:50:in `block in load_tests' 6: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in `require' 5: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:258:in `load_dependency' 4: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in `block in require' 3: from /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:292:in `require' 2: from /home/ec2-user/environment/sample_app/test/models/user_test.rb:3:in `<top (required)>' 1: from /home/ec2-user/environment/sample_app/test/models/user_test.rb:70:in `<class:UserTest>' /home/ec2-user/.rvm/gems/ruby-2.6.3/gems/activesupport-5.1.6/lib/active_support/testing/declarative.rb:11:in `test': wrong number of arguments (given 0, expected 1) (ArgumentError)
該当のソースコード
usertest
1require 'test_helper' 2 3class UserTest < ActiveSupport::TestCase 4 def setup 5 @user = User.new(name: "Example User", email: "user@example.com", 6 password: "foobar", password_confirmation: "foobar") 7 end 8 9 test "should be valid" do 10 assert @user.valid? 11 end 12 13 test "name should be present" do 14 @user.name = "" 15 assert_not @user.valid? 16 end 17 18 test "email should be present" do 19 @user.email = " " 20 assert_not @user.valid? 21 end 22 23 test "name should not be too long" do 24 @user.name = "a" * 51 25 assert_not @user.valid? 26 end 27 28 test "email should not be too long" do 29 @user.email = "a" * 244 + "@example.com" 30 assert_not @user.valid? 31 end 32 33 test "email validation should accept valid addresses" do 34 valid_addresses = %w[user@example.com USER@foo.COM A_US-ER@foo.bar.org 35 first.last@foo.jp alice+bob@baz.cn] 36 valid_addresses.each do |valid_address| 37 @user.email = valid_address 38 assert @user.valid?, "#{valid_address.inspect} should be valid" 39 end 40 end 41 42 test "email validation should reject invalid addresses" do 43 invalid_addresses = %w[user@example,com user_at_foo.org user.name@example. 44 foo@bar_baz.com foo@bar+baz.com] 45 invalid_addresses.each do |invalid_address| 46 @user.email = invalid_address 47 assert_not @user.valid?, "#{invalid_address.inspect} should be invalid" 48 end 49 end 50 51 test "email addresses should be unique" do 52 duplicate_user = @user.dup 53 duplicate_user.email = @user.email.upcase 54 @user.save 55 assert_not duplicate_user.valid? 56 end 57 58 test "email addresses should be saved as lower-case" do 59 mixed_case_email = "Foo@ExAMPle.CoM" 60 @user.email = mixed_case_email 61 @user.save 62 assert_equal mixed_case_email.downcase, @user.reload.email 63 end 64 65 test "" do 66 @user.password = @user.password_confirmation = " " * 6 67 assert_not @user.valid? 68 end 69 70 test do 71 @user.password = @user.password_confirmation = "a" * 5 72 assert_not @user.vaild? 73 end 74 75end
Gimfile
1source 'https://rubygems.org' 2 3gem 'rails', '5.1.6' 4gem 'bcrypt', '3.1.12' 5gem 'bootstrap-sass', '3.3.7' 6gem 'puma', '3.9.1' 7gem 'sass-rails', '5.0.6' 8gem 'uglifier', '3.2.0' 9gem 'coffee-rails', '4.2.2' 10gem 'jquery-rails', '4.3.1' 11gem 'turbolinks', '5.0.1' 12gem 'jbuilder', '2.7.0' 13 14group :development, :test do 15 gem 'sqlite3', '1.3.13' 16 gem 'byebug', '9.0.6', platform: :mri 17end 18 19group :development do 20 gem 'web-console', '3.5.1' 21 gem 'listen', '3.1.5' 22 gem 'spring', '2.0.2' 23 gem 'spring-watcher-listen', '2.0.1' 24end 25 26group :test do 27 gem 'rails-controller-testing', '1.0.2' 28 gem 'minitest', '5.10.3' 29 gem 'minitest-reporters', '1.1.14' 30 gem 'guard', '2.13.0' 31 gem 'guard-minitest', '2.4.4' 32end 33 34group :production do 35 gem 'pg', '0.20.0' 36end 37 38# Windows環境ではtzinfo-dataというgemを含める必要があります 39gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby] 40
試したこと
DBの作り直しとgumインストール等してみましたが変化なしでした…
$ rails db:drop $ rails db:create $ rails db:migrate
変化なし
$rake db:migrate:reset $rails db:migrate
$bundle install $bundle update
$ sudo yum install -y tmux Loaded plugins: priorities, update-motd, upgrade-helper amzn-main | 2.1 kB 00:00:00 amzn-updates | 2.5 kB 00:00:00 1062 packages excluded due to repository priority protections Package tmux-1.8-4.12.amzn1.x86_64 already installed and latest version Nothing to do
どこか他に確認すべき点はありますでしょうか?
よろしくお願いいたします。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。