0
0
Rubyprogramming~20 mins

Gemfile for project dependencies in Ruby - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
Gemfile Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
Predict Output
intermediate
2:00remaining
What is the output of this Gemfile dependency version resolution?
Given this Gemfile snippet, what version of the 'rails' gem will Bundler install?
source 'https://rubygems.org'
gem 'rails', '~> 6.1.0'
gem 'rails', '>= 6.1.3'
Ruby
source 'https://rubygems.org'
gem 'rails', '~> 6.1.0'
gem 'rails', '>= 6.1.3'
ARails version 6.2.0
BRails version 6.1.3 or higher but less than 6.2.0
CRails version 6.1.0
DBundler will raise a version conflict error
Attempts:
2 left
💡 Hint
The '~>' operator means 'compatible with', and the '>= 6.1.3' means minimum version 6.1.3.
🧠 Conceptual
intermediate
1:30remaining
Which source declaration is correct in a Gemfile?
You want to specify the source for gems in your Gemfile. Which of these is the correct way to declare the source?
Asource 'https://rubygems.org'
Bset_source 'https://rubygems.org'
Cgem source 'https://rubygems.org'
Dsource = 'https://rubygems.org'
Attempts:
2 left
💡 Hint
Look for the keyword used to specify gem sources in Gemfile syntax.
🔧 Debug
advanced
2:00remaining
Why does this Gemfile cause a syntax error?
Examine this Gemfile snippet and identify why it causes a syntax error:
source 'https://rubygems.org'
gem 'nokogiri', '~> 1.12.0'
gem 'puma', '~> 5.0'
gem 'rails', '~> 6.1.0'
end
Ruby
source 'https://rubygems.org'
gem 'nokogiri', '~> 1.12.0'
gem 'puma', '~> 5.0'
gem 'rails', '~> 6.1.0'
end
AThe Gemfile must start with 'gemfile' keyword
BThe gem versions are invalid and cause a syntax error
CMissing 'source' declaration causes syntax error
DThe 'end' keyword is misplaced and causes a syntax error
Attempts:
2 left
💡 Hint
Check if all keywords and blocks are properly opened and closed.
🚀 Application
advanced
2:00remaining
How to specify a gem from a Git repository in Gemfile?
You want to use a gem directly from a GitHub repository instead of RubyGems. Which Gemfile line correctly specifies this?
Agem 'mygem', git: 'https://github.com/user/mygem.git'
Bgem 'mygem', source: 'https://github.com/user/mygem.git'
Cgem 'mygem', repo: 'https://github.com/user/mygem.git'
Dgem 'mygem', url: 'https://github.com/user/mygem.git'
Attempts:
2 left
💡 Hint
Look for the keyword that specifies a git repository in gem declaration.
Predict Output
expert
2:30remaining
How many gems will be installed by Bundler from this Gemfile?
Consider this Gemfile snippet:
source 'https://rubygems.org'
group :development, :test do
  gem 'rspec'
  gem 'pry'
end
group :production do
  gem 'puma'
end
gem 'rails'

How many gems will Bundler install when running in the test environment?
Ruby
source 'https://rubygems.org'
group :development, :test do
  gem 'rspec'
  gem 'pry'
end
group :production do
  gem 'puma'
end
gem 'rails'
A2 gems
B4 gems
C3 gems
D5 gems
Attempts:
2 left
💡 Hint
Bundler installs gems in the default group plus the groups for the current environment.