Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: Copy toys-core test data into new directory #262

Merged
merged 1 commit into from
Mar 3, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
/**/.yardoc/
/**/.bundle/
!/toys-core/test-data/gems-cases/bundle-with-vendored-path/.bundle
/toys-core/test-data/gems-cases/bundle-with-vendored-path/vendor
!/toys-core/test/gems-cases/bundle-with-vendored-path/.bundle
/toys-core/test/gems-cases/bundle-with-vendored-path/vendor
/toys/core-docs
Expand Down
1 change: 1 addition & 0 deletions toys-core/.rubocop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ inherit_from: "../.rubocop-common.yml"
AllCops:
Exclude:
- "test/gems-cases/bundle-with-vendored-path/vendor/**/*"
- "test-data/**/*"

# Apparent Rubocop bug on Ruby 3.1
Layout/BlockAlignment:
Expand Down
Empty file.
Empty file.
Empty file.
1 change: 1 addition & 0 deletions toys-core/test-data/data1/input.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
hello
1 change: 1 addition & 0 deletions toys-core/test-data/data2/indirectory
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
whoops
1 change: 1 addition & 0 deletions toys-core/test-data/data2/input.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
world
10 changes: 10 additions & 0 deletions toys-core/test-data/gems-cases/activate-highline/run_test.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# frozen_string_literal: true

require "toys-core"
require "toys/utils/gems"

# Activate a gem
Toys::Utils::Gems.new.activate("highline", "= 2.0.1")

# Make sure it is accessible.
require "highline"
6 changes: 6 additions & 0 deletions toys-core/test-data/gems-cases/bundle-update-required/Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# frozen_string_literal: true

source "https://rubygems.org"

gem "rubocop", "~> 0.81.0"
gem "rubocop-performance", "~> 1.5.2"
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
GEM
remote: https://rubygems.org/
specs:
ast (2.4.1)
jaro_winkler (1.5.4)
parallel (1.19.2)
parser (2.7.1.4)
ast (~> 2.4.1)
rainbow (3.0.0)
rexml (3.2.4)
rubocop (0.80.1)
jaro_winkler (~> 1.5.1)
parallel (~> 1.10)
parser (>= 2.7.0.1)
rainbow (>= 2.2.2, < 4.0)
rexml
ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 1.7)
rubocop-performance (1.5.2)
rubocop (>= 0.71.0)
ruby-progressbar (1.10.1)
unicode-display_width (1.6.1)

PLATFORMS
ruby

DEPENDENCIES
rubocop (~> 0.80.0)
rubocop-performance (~> 1.5.2)

BUNDLED WITH
2.3.26
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# frozen_string_literal: true

require "toys-core"
require "toys/utils/gems"

# Load the local bundle
Toys::Utils::Gems.new.bundle(search_dirs: Dir.getwd)
5 changes: 5 additions & 0 deletions toys-core/test-data/gems-cases/bundle-using-gemspec/Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# frozen_string_literal: true

source "https://rubygems.org"

gemspec
15 changes: 15 additions & 0 deletions toys-core/test-data/gems-cases/bundle-using-gemspec/foobar.gemspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# frozen_string_literal: true

::Gem::Specification.new do |spec|
spec.name = "foobar"
spec.version = "0.0.1"
spec.summary = "Hello"
spec.authors = ["Me"]

spec.files = ::Dir.glob("lib/**/*.rb")
spec.require_paths = ["lib"]

spec.required_ruby_version = ">= 2.4"
spec.add_dependency "abbrev"
spec.add_dependency "highline", "2.0.1"
end
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# frozen_string_literal: true

module Foobar
end
13 changes: 13 additions & 0 deletions toys-core/test-data/gems-cases/bundle-using-gemspec/run_test.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# frozen_string_literal: true

require "toys-core"
require "toys/utils/gems"

# Load the local bundle
Toys::Utils::Gems.new.bundle(search_dirs: Dir.getwd, retries: 2)

# Highline is in the local bundle. Make sure it is accessible.
require "highline"

# Make sure toys-core is still accessible.
require "toys/utils/help_text"
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# frozen_string_literal: true

source "https://rubygems.org"

gem "abbrev"
gem "highline", "~> 2.0"
gem "toys", ">= 0.10.0"
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# frozen_string_literal: true

require "toys-core"
require "toys/utils/gems"

# Load the local bundle
Toys::Utils::Gems.new.bundle(search_dirs: Dir.getwd)

# Highline is in the local bundle. Make sure it is accessible.
require "highline"

# Make sure toys-core is still accessible.
require "toys/utils/help_text"
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# frozen_string_literal: true

source "https://rubygems.org"

gem "abbrev"
gem "highline", "= 2.0.1"
gem "json"
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# frozen_string_literal: true

require "toys-core"
require "toys/utils/gems"
require "json"

# Load the local bundle
Toys::Utils::Gems.new.bundle(search_dirs: Dir.getwd)

# Make sure we can still use JSON
::JSON.parse "{}"
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# frozen_string_literal: true

source "https://rubygems.org"

gem "abbrev"
gem "highline", "~> 2.0"
gem "toys", "= 0.10.0"
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# frozen_string_literal: true

require "toys-core"
require "toys/utils/gems"

# Load the local bundle
Toys::Utils::Gems.new.bundle(search_dirs: Dir.getwd)

# Shouldn't get here
puts "should-not-get-here"
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
Gemfile
gems.rb
.gems.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# frozen_string_literal: true

source "https://rubygems.org"

gem "abbrev"
gem "highline", "~> 2.0"
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# frozen_string_literal: true

source "https://rubygems.org"

gem "minitest", "~> 5.14"
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# frozen_string_literal: true

require "toys-core"
require "toys/utils/gems"

# Load the local bundle
Toys::Utils::Gems.new.bundle(search_dirs: Dir.getwd)

# Highline is in the local bundle. Make sure it is accessible.
require "highline"
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
---
BUNDLE_PATH: "vendor"
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# frozen_string_literal: true

source "https://rubygems.org"

gem "abbrev"
gem "highline", "2.0.2"
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# frozen_string_literal: true

require "toys-core"
require "toys/utils/gems"

# Load the local bundle
Toys::Utils::Gems.new.bundle(search_dirs: Dir.getwd)

# Highline is in the local bundle. Make sure it is accessible.
require "highline"

# Make sure toys-core is still accessible.
require "toys/utils/help_text"

# Make sure supports_suggestions doesn't crash
Toys::Compat.supports_suggestions?

# Make sure highline is installed in the vendor directory
abort if Dir.glob("#{__dir__}/vendor/*ruby/*/gems/highline-*/lib/highline.rb").empty?
6 changes: 6 additions & 0 deletions toys-core/test-data/gems-cases/bundle-without-toys/Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# frozen_string_literal: true

source "https://rubygems.org"

gem "abbrev"
gem "highline", "2.0.2"
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
GEM
remote: https://rubygems.org/
specs:
abbrev (0.1.2)
highline (2.0.2)

PLATFORMS
ruby

DEPENDENCIES
abbrev
highline (= 2.0.2)

BUNDLED WITH
2.3.26
16 changes: 16 additions & 0 deletions toys-core/test-data/gems-cases/bundle-without-toys/run_test.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# frozen_string_literal: true

require "toys-core"
require "toys/utils/gems"

# Load the local bundle
Toys::Utils::Gems.new.bundle(search_dirs: Dir.getwd)

# Highline is in the local bundle. Make sure it is accessible.
require "highline"

# Make sure toys-core is still accessible.
require "toys/utils/help_text"

# Make sure supports_suggestions doesn't crash
Toys::Compat.supports_suggestions?
12 changes: 12 additions & 0 deletions toys-core/test-data/lookup-cases/append/.toys.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# frozen_string_literal: true

append "namespace-1" do
tool "tool-1-2" do
desc "file tool-1-2 short description"
long_desc "file tool-1-2 long description"

def run
puts "file tool-1-2 execution"
end
end
end
23 changes: 23 additions & 0 deletions toys-core/test-data/lookup-cases/config-items/.toys.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# frozen_string_literal: true

tool "tool-1" do
desc "file tool-1 short description"
long_desc "file tool-1 long description"

def run
puts "file tool-1 execution"
end
end

tool "namespace-1" do
desc "file namespace-1 short description"

tool "tool-1-1" do
desc "file tool-1-1 short description"
long_desc "file tool-1-1 long description"

def run
puts "file tool-1-1 execution"
end
end
end
8 changes: 8 additions & 0 deletions toys-core/test-data/lookup-cases/config-items/.toys/tool-2.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# frozen_string_literal: true

desc "directory tool-2 short description"
long_desc "directory tool-2 long description"

def run
puts "directory tool-2 execution"
end
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
root
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ruby
11 changes: 11 additions & 0 deletions toys-core/test-data/lookup-cases/data-finder/ns-1/.toys.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# frozen_string_literal: true

raise "failed!" unless IO.read(find_data("foo/bar.txt")).strip == "ruby"

tool "foo" do
raise "failed!" unless IO.read(find_data("foo/bar.txt")).strip == "ruby"

def run
exit(1) unless IO.read(find_data("foo/bar.txt")).strip == "ruby"
end
end
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
toys
11 changes: 11 additions & 0 deletions toys-core/test-data/lookup-cases/data-finder/ns-1/ns-1a/.toys.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# frozen_string_literal: true

raise "failed!" unless IO.read(find_data("foo/bar.txt")).strip == "toys"

tool "foo" do
raise "failed!" unless IO.read(find_data("foo/bar.txt")).strip == "toys"

def run
exit(1) unless IO.read(find_data("foo/bar.txt")).strip == "toys"
end
end
14 changes: 14 additions & 0 deletions toys-core/test-data/lookup-cases/data-finder/ns-1/ns-1b/.toys.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# frozen_string_literal: true

raise "failed!" unless IO.read(find_data("foo/bar.txt")).strip == "ruby"
raise "failed!" unless IO.read(find_data("foo/root.txt")).strip == "root"

tool "foo" do
raise "failed!" unless IO.read(find_data("foo/bar.txt")).strip == "ruby"
raise "failed!" unless IO.read(find_data("foo/root.txt")).strip == "root"

def run
exit(1) unless IO.read(find_data("foo/bar.txt")).strip == "ruby"
exit(1) unless IO.read(find_data("foo/root.txt")).strip == "root"
end
end
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
fail
11 changes: 11 additions & 0 deletions toys-core/test-data/lookup-cases/data-finder/ns-2/.toys.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# frozen_string_literal: true

raise "failed!" unless find_data("foo/bar.txt").nil?

tool "foo" do
raise "failed!" unless find_data("foo/bar.txt").nil?

def run
exit(1) unless find_data("foo/bar.txt").nil?
end
end
11 changes: 11 additions & 0 deletions toys-core/test-data/lookup-cases/data-finder/ns-3/.toys.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# frozen_string_literal: true

raise "failed!" unless find_data("foo/bar.txt").nil?

tool "foo" do
raise "failed!" unless find_data("foo/bar.txt").nil?

def run
exit(1) unless find_data("foo/bar.txt").nil?
end
end
Loading