summaryrefslogtreecommitdiff
path: root/tool/test_for_warn_bundled_gems
diff options
context:
space:
mode:
Diffstat (limited to 'tool/test_for_warn_bundled_gems')
-rw-r--r--tool/test_for_warn_bundled_gems/.gitignore1
-rw-r--r--tool/test_for_warn_bundled_gems/Gemfile0
-rw-r--r--tool/test_for_warn_bundled_gems/Gemfile.lock11
-rw-r--r--tool/test_for_warn_bundled_gems/README.md3
-rwxr-xr-xtool/test_for_warn_bundled_gems/test.sh53
-rw-r--r--tool/test_for_warn_bundled_gems/test_no_warn_dash_gem.rb8
-rw-r--r--tool/test_for_warn_bundled_gems/test_no_warn_dependency.rb10
-rw-r--r--tool/test_for_warn_bundled_gems/test_no_warn_sub_feature.rb8
-rw-r--r--tool/test_for_warn_bundled_gems/test_warn_bootsnap.rb11
-rw-r--r--tool/test_for_warn_bundled_gems/test_warn_bootsnap_rubyarchdir_gem.rb11
-rw-r--r--tool/test_for_warn_bundled_gems/test_warn_bundle_exec.rb1
-rwxr-xr-xtool/test_for_warn_bundled_gems/test_warn_bundle_exec_shebang.rb3
-rw-r--r--tool/test_for_warn_bundled_gems/test_warn_bundled_gems.rb8
-rw-r--r--tool/test_for_warn_bundled_gems/test_warn_dash_gem.rb7
-rw-r--r--tool/test_for_warn_bundled_gems/test_warn_dependency.rb8
-rw-r--r--tool/test_for_warn_bundled_gems/test_warn_sub_feature.rb7
-rw-r--r--tool/test_for_warn_bundled_gems/test_warn_zeitwerk.rb12
17 files changed, 162 insertions, 0 deletions
diff --git a/tool/test_for_warn_bundled_gems/.gitignore b/tool/test_for_warn_bundled_gems/.gitignore
new file mode 100644
index 0000000000..a9a5aecf42
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/.gitignore
@@ -0,0 +1 @@
+tmp
diff --git a/tool/test_for_warn_bundled_gems/Gemfile b/tool/test_for_warn_bundled_gems/Gemfile
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/Gemfile
diff --git a/tool/test_for_warn_bundled_gems/Gemfile.lock b/tool/test_for_warn_bundled_gems/Gemfile.lock
new file mode 100644
index 0000000000..003cb81444
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/Gemfile.lock
@@ -0,0 +1,11 @@
+GEM
+ specs:
+
+PLATFORMS
+ arm64-darwin-22
+ ruby
+
+DEPENDENCIES
+
+BUNDLED WITH
+ 2.5.0.dev
diff --git a/tool/test_for_warn_bundled_gems/README.md b/tool/test_for_warn_bundled_gems/README.md
new file mode 100644
index 0000000000..dc2d2a6cb9
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/README.md
@@ -0,0 +1,3 @@
+This directory contains tests for the bundled gems warning under the Bundler.
+
+see [test.sh](./test.sh) for details.
diff --git a/tool/test_for_warn_bundled_gems/test.sh b/tool/test_for_warn_bundled_gems/test.sh
new file mode 100755
index 0000000000..a14d5bcedc
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test.sh
@@ -0,0 +1,53 @@
+#!/bin/bash
+
+echo "* Show warning require and LoadError"
+ruby test_warn_bundled_gems.rb
+echo
+
+echo "* Show warning when bundled gems called as dependency"
+ruby test_warn_dependency.rb
+echo
+
+echo "* Show warning sub-feature like bigdecimal/util"
+ruby test_warn_sub_feature.rb
+echo
+
+echo "* Show warning dash gem like net/smtp"
+ruby test_warn_dash_gem.rb
+echo
+
+echo "* Show warning when bundle exec with ruby and script"
+bundle exec ruby test_warn_bundle_exec.rb
+echo
+
+echo "* Show warning when bundle exec with shebang's script"
+bundle exec ./test_warn_bundle_exec_shebang.rb
+echo
+
+echo "* Show warning when bundle exec with -r option"
+bundle exec ruby -rostruct -e ''
+echo
+
+echo "* Show warning with bootsnap"
+ruby test_warn_bootsnap.rb
+echo
+
+echo "* Show warning with bootsnap for gem with native extension"
+ruby test_warn_bootsnap_rubyarchdir_gem.rb
+echo
+
+echo "* Show warning with zeitwerk"
+ruby test_warn_zeitwerk.rb
+echo
+
+echo "* Don't show warning bundled gems on Gemfile"
+ruby test_no_warn_dependency.rb
+echo
+
+echo "* Don't show warning with net/smtp when net-smtp on Gemfile"
+ruby test_no_warn_dash_gem.rb
+echo
+
+echo "* Don't show warning bigdecimal/util when bigdecimal on Gemfile"
+ruby test_no_warn_sub_feature.rb
+echo
diff --git a/tool/test_for_warn_bundled_gems/test_no_warn_dash_gem.rb b/tool/test_for_warn_bundled_gems/test_no_warn_dash_gem.rb
new file mode 100644
index 0000000000..72ae23b040
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test_no_warn_dash_gem.rb
@@ -0,0 +1,8 @@
+require "bundler/inline"
+
+gemfile do
+ source "https://rubygems.org"
+ gem "net-smtp"
+end
+
+require "net/smtp"
diff --git a/tool/test_for_warn_bundled_gems/test_no_warn_dependency.rb b/tool/test_for_warn_bundled_gems/test_no_warn_dependency.rb
new file mode 100644
index 0000000000..94a32a9108
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test_no_warn_dependency.rb
@@ -0,0 +1,10 @@
+require "bundler/inline"
+
+gemfile do
+ source "https://rubygems.org"
+ gem "activesupport", "7.0.7.2"
+ gem "bigdecimal"
+ gem "mutex_m"
+end
+
+require "active_support/all"
diff --git a/tool/test_for_warn_bundled_gems/test_no_warn_sub_feature.rb b/tool/test_for_warn_bundled_gems/test_no_warn_sub_feature.rb
new file mode 100644
index 0000000000..7d62a2f9d0
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test_no_warn_sub_feature.rb
@@ -0,0 +1,8 @@
+require "bundler/inline"
+
+gemfile do
+ source "https://rubygems.org"
+ gem "bigdecimal"
+end
+
+require "bigdecimal/util"
diff --git a/tool/test_for_warn_bundled_gems/test_warn_bootsnap.rb b/tool/test_for_warn_bundled_gems/test_warn_bootsnap.rb
new file mode 100644
index 0000000000..eac58de974
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test_warn_bootsnap.rb
@@ -0,0 +1,11 @@
+require "bundler/inline"
+
+gemfile do
+ source "https://rubygems.org"
+ gem "bootsnap", require: false
+end
+
+require 'bootsnap'
+Bootsnap.setup(cache_dir: 'tmp/cache')
+
+require 'csv'
diff --git a/tool/test_for_warn_bundled_gems/test_warn_bootsnap_rubyarchdir_gem.rb b/tool/test_for_warn_bundled_gems/test_warn_bootsnap_rubyarchdir_gem.rb
new file mode 100644
index 0000000000..477933f6f2
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test_warn_bootsnap_rubyarchdir_gem.rb
@@ -0,0 +1,11 @@
+require "bundler/inline"
+
+gemfile do
+ source "https://rubygems.org"
+ gem "bootsnap", require: false
+end
+
+require 'bootsnap'
+Bootsnap.setup(cache_dir: 'tmp/cache')
+
+require 'syslog'
diff --git a/tool/test_for_warn_bundled_gems/test_warn_bundle_exec.rb b/tool/test_for_warn_bundled_gems/test_warn_bundle_exec.rb
new file mode 100644
index 0000000000..30db47ce61
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test_warn_bundle_exec.rb
@@ -0,0 +1 @@
+require "base64"
diff --git a/tool/test_for_warn_bundled_gems/test_warn_bundle_exec_shebang.rb b/tool/test_for_warn_bundled_gems/test_warn_bundle_exec_shebang.rb
new file mode 100755
index 0000000000..0338928e1e
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test_warn_bundle_exec_shebang.rb
@@ -0,0 +1,3 @@
+#!/usr/bin/env ruby
+
+require "base64"
diff --git a/tool/test_for_warn_bundled_gems/test_warn_bundled_gems.rb b/tool/test_for_warn_bundled_gems/test_warn_bundled_gems.rb
new file mode 100644
index 0000000000..13168292e3
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test_warn_bundled_gems.rb
@@ -0,0 +1,8 @@
+require "bundler/inline"
+
+gemfile do
+ source "https://rubygems.org"
+end
+
+require "mutex_m"
+require "rss"
diff --git a/tool/test_for_warn_bundled_gems/test_warn_dash_gem.rb b/tool/test_for_warn_bundled_gems/test_warn_dash_gem.rb
new file mode 100644
index 0000000000..04ef2a52c0
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test_warn_dash_gem.rb
@@ -0,0 +1,7 @@
+require "bundler/inline"
+
+gemfile do
+ source "https://rubygems.org"
+end
+
+require "net/smtp"
diff --git a/tool/test_for_warn_bundled_gems/test_warn_dependency.rb b/tool/test_for_warn_bundled_gems/test_warn_dependency.rb
new file mode 100644
index 0000000000..9be3a2f6d9
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test_warn_dependency.rb
@@ -0,0 +1,8 @@
+require "bundler/inline"
+
+gemfile do
+ source "https://rubygems.org"
+ gem "activesupport", "7.0.7.2"
+end
+
+require "active_support/all"
diff --git a/tool/test_for_warn_bundled_gems/test_warn_sub_feature.rb b/tool/test_for_warn_bundled_gems/test_warn_sub_feature.rb
new file mode 100644
index 0000000000..bf7eb3572d
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test_warn_sub_feature.rb
@@ -0,0 +1,7 @@
+require "bundler/inline"
+
+gemfile do
+ source "https://rubygems.org"
+end
+
+require "bigdecimal/util"
diff --git a/tool/test_for_warn_bundled_gems/test_warn_zeitwerk.rb b/tool/test_for_warn_bundled_gems/test_warn_zeitwerk.rb
new file mode 100644
index 0000000000..d554a0e675
--- /dev/null
+++ b/tool/test_for_warn_bundled_gems/test_warn_zeitwerk.rb
@@ -0,0 +1,12 @@
+require "bundler/inline"
+
+gemfile do
+ source "https://rubygems.org"
+ gem "zeitwerk", require: false
+end
+
+require "zeitwerk"
+loader = Zeitwerk::Loader.for_gem(warn_on_extra_files: false)
+loader.setup
+
+require 'csv'