# Generated from upcastable-0.1.0.gem by gem2rpm -*- rpm-spec -*- %global gem_name upcastable Name: rubygem-%{gem_name} Version: 0.1.0 Release: 1%{?dist} Summary: Upcastable provides the feature to emulate upcasting in Ruby License: MIT URL: https://github.com/abicky/upcastable Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem BuildRequires: ruby(release) BuildRequires: rubygems-devel BuildRequires: ruby >= 1.9 # BuildRequires: rubygem(rspec) >= 3.0 # BuildRequires: rubygem(rspec) < 4 # BuildRequires: rubygem(pry) >= 0.10 # BuildRequires: rubygem(pry) < 1 # BuildRequires: rubygem(pry-doc) >= 0.8 # BuildRequires: rubygem(pry-doc) < 1 # BuildRequires: rubygem(benchmark-ips) >= 2.3 # BuildRequires: rubygem(benchmark-ips) < 3 BuildArch: noarch %description Duck typing sometimes results in `NoMethodError` unexpectedly by calling methods some classes don't have even if the code pass a test using other classes which have the methods. We can avoid such situations by upcasting. All we have to do is implementing methods defined in the super class or module and we don't have to care about whether or not methods defined only in some subclasses are called. %package doc Summary: Documentation for %{name} Requires: %{name} = %{version}-%{release} BuildArch: noarch %description doc Documentation for %{name}. %prep %setup -q -n %{gem_name}-%{version} %build # Create the gem as gem install only works on a gem file gem build ../%{gem_name}-%{version}.gemspec # %%gem_install compiles any C extensions and installs the gem into ./%%gem_dir # by default, so that we can move it into the buildroot in %%install %gem_install %install mkdir -p %{buildroot}%{gem_dir} cp -a .%{gem_dir}/* \ %{buildroot}%{gem_dir}/ %check pushd .%{gem_instdir} # rspec spec popd %files %dir %{gem_instdir} %{gem_instdir}/CODE_OF_CONDUCT.md %license %{gem_instdir}/LICENSE.txt %{gem_instdir}/benchmark %{gem_libdir} %exclude %{gem_cache} %{gem_spec} %files doc %doc %{gem_docdir} %{gem_instdir}/Gemfile %doc %{gem_instdir}/README.md %{gem_instdir}/Rakefile %{gem_instdir}/examples %{gem_instdir}/upcastable.gemspec %changelog * Thu Sep 16 2021 mockbuilder - 0.1.0-1 - Initial package