# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
USE_RUBY="ruby32 ruby33 ruby34"
RUBY_FAKEGEM_BINWRAP=""
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
RUBY_FAKEGEM_EXTRAINSTALL="db"
RUBY_FAKEGEM_GEMSPEC="acts-as-taggable-on.gemspec"
inherit ruby-fakegem
DESCRIPTION="Advanced tagging for Rails."
HOMEPAGE="https://github.com/mbleigh/acts-as-taggable-on/"
SRC_URI="https://github.com/mbleigh/acts-as-taggable-on/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~amd64"
IUSE="test"
ruby_add_rdepend "|| ( dev-ruby/activerecord:8.1 dev-ruby/activerecord:8.0 dev-ruby/activerecord:7.2 dev-ruby/activerecord:7.1 )"
ruby_add_bdepend "test? (
dev-ruby/database_cleaner
|| ( dev-ruby/rails:8.1 dev-ruby/rails:8.0 dev-ruby/rails:7.2 dev-ruby/rails:7.1 )
dev-ruby/rspec-its
)"
all_ruby_prepare() {
sed -e 's/git ls-files/find * -print/' \
-e "s:_relative ': './:" \
-i ${PN}.gemspec || die
# Provide a database.yml file for sqlite3.
cp spec/internal/config/database.yml.sample spec/internal/config/database.yml || die
sed -i -e '/^mysql/,$d' spec/internal/config/database.yml || die
sed -i -e '/barrier/ s:^:#:' spec/spec_helper.rb || die
# Avoid deprecation warning which cannot be solved due to issues with default_parser.
sed -i -e '/WARNING/,/WARNING/ s:^:#:' lib/acts-as-taggable-on.rb || die
# Avoid tests failing on encoding issues. This started failing at
# some point due to dependencies and is not a regression from
# previous versions.
sed -e '311 s/it/xit/' \
-i spec/acts_as_taggable_on/tag_spec.rb || die
sed -e '579,620 s/it/xit/' \
-e '/should be able to create and find tags in languages without capitalization/ s/context/xcontext/' \
-i spec/acts_as_taggable_on/taggable_spec.rb || die
}