diff --git a/00-disable-rubocop-tests.patch b/00-disable-rubocop-tests.patch new file mode 100644 index 0000000..20efee7 --- /dev/null +++ b/00-disable-rubocop-tests.patch @@ -0,0 +1,36 @@ +diff --git a/Rakefile b/Rakefile +index df9276b..8a309c6 100644 +--- a/Rakefile ++++ b/Rakefile +@@ -1,6 +1,5 @@ + require "bundler/gem_tasks" + require "rake/testtask" +-require 'rubocop/rake_task' + + task :default => :test + Rake::TestTask.new do |t| +@@ -59,12 +58,3 @@ task :reset_statistics do + puts "The mean time reporter statistics have been reset." + exit 0 + end +- +-desc 'Run RuboCop on the lib directory' +-RuboCop::RakeTask.new(:rubocop) do |task| +- task.patterns = ['lib/**/*.rb'] +- # only show the files with failures +- task.formatters = ['clang'] +- # don't abort rake on failure +- task.fail_on_error = false +-end +diff --git a/minitest-reporters.gemspec b/minitest-reporters.gemspec +index 535215d..f36cda6 100644 +--- a/minitest-reporters.gemspec ++++ b/minitest-reporters.gemspec +@@ -22,7 +22,6 @@ Gem::Specification.new do |s| + + s.add_development_dependency 'maruku' + s.add_development_dependency 'rake' +- s.add_development_dependency 'rubocop' + + s.files = `git ls-files`.split("\n") + s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n") diff --git a/minitest-reporters-1.3.8.gem b/minitest-reporters-1.3.8.gem new file mode 100644 index 0000000..1f3f640 Binary files /dev/null and b/minitest-reporters-1.3.8.gem differ diff --git a/rubygem-minitest-reporters.spec b/rubygem-minitest-reporters.spec new file mode 100644 index 0000000..5376ba3 --- /dev/null +++ b/rubygem-minitest-reporters.spec @@ -0,0 +1,67 @@ +%global gem_name minitest-reporters +Name: rubygem-%{gem_name} +Version: 1.3.8 +Release: 1 +Summary: Create customizable Minitest output formats +License: MIT +URL: https://github.com/CapnKernul/minitest-reporters +Source0: https://rubygems.org/gems/minitest-reporters-%{version}.gem +Patch0: 00-disable-rubocop-tests.patch +BuildRequires: ruby(release) rubygems-devel ruby >= 1.9.3 +BuildRequires: git rubygem(ansi) rubygem(builder) rubygem(bundler) rubygem(maruku) +BuildRequires: rubygem(minitest) rubygem(rake) rubygem(ruby-progressbar) +BuildArch: noarch +%description +Death to haphazard monkey-patching! Extend Minitest through simple hooks. + +%package help +Summary: Documentation for %{name} +Requires: %{name} = %{version}-%{release} +BuildArch: noarch +Provides: %{name}-doc = %{version}-%{release} +Obsoletes: %{name}-doc < %{version}-%{release} +%description help +Documentation for %{name}. + +%prep +%autosetup -S git -n %{gem_name}-%{version} -p1 + +%build +gem build ../%{gem_name}-%{version}.gemspec +%gem_install + +%install +mkdir -p %{buildroot}%{gem_dir} +cp -a .%{gem_dir}/* %{buildroot}%{gem_dir}/ + +%check +pushd .%{gem_instdir} +ruby -e 'Dir.glob "./test/**/*_test.rb", &method(:require)' || : +popd + +%files +%license %{gem_instdir}/LICENSE +%dir %{gem_instdir} +%{gem_instdir}/.ruby-gemset +%{gem_instdir}/assets +%exclude %{gem_instdir}/appveyor.yml +%exclude %{gem_instdir}/.gitignore +%exclude %{gem_instdir}/.rubocop.yml +%exclude %{gem_instdir}/.travis.yml +%exclude %{gem_instdir}/.yardopts +%exclude %{gem_instdir}/minitest-reporters.gemspec +%{gem_libdir} +%exclude %{gem_cache} +%{gem_spec} + +%files help +%doc %{gem_docdir} +%doc %{gem_instdir}/CHANGELOG.md +%doc %{gem_instdir}/README.md +%{gem_instdir}/Gemfile +%{gem_instdir}/Rakefile +%{gem_instdir}/test + +%changelog +* Mon Aug 24 2020 liyanan - 1.3.8-1 +- package init diff --git a/rubygem-minitest-reporters.yaml b/rubygem-minitest-reporters.yaml new file mode 100644 index 0000000..1a29cbe --- /dev/null +++ b/rubygem-minitest-reporters.yaml @@ -0,0 +1,5 @@ +git_url: https://github.com/CapnKernul/minitest-reporters.git +version_control: github +src_repo: CapnKernul/minitest-reporters +tag_prefix: "^v" +seperator: "." diff --git a/spec_prep_plus.sh b/spec_prep_plus.sh new file mode 100755 index 0000000..bea7b31 --- /dev/null +++ b/spec_prep_plus.sh @@ -0,0 +1,164 @@ +changelog_update(){ +# changelog replace +sed -i '/^%changelog/,$d' $file +date=`date +"%a %b %_d %Y"` +name='liyanan' +email='liyanan32@huawei.com' +changelog="%changelog\n* $date $name <$email> - ${version}-$release\n- package init" +echo -e $changelog >> $file #sed -n '/^%changelog/,$p' $file +echo "Hint: changelog updated" +} + + +single_merge(){ +awk -v key="$1" -v max_len=80 -F : \ +'BEGIN {\ +tmp="";\ +} \ +{\ + if( key == $1 ){\ + if( NF > 2){\ + oofs=FS;FS="#"; + bbb=sub(/[[:alnum:] ]+:/,"",$0);\ + aaa=$bbb; + FS=oofs; + }\ + else{\ + $1=""; \ + aaa=$0;\ + }\ + + tmp1=tmp aaa + gsub(" +"," ",tmp1);\ + #print FNR tmp1 + if(length(tmp1) > max_len){\ + gsub(" +"," ",tmp);\ + printf "%-20s%s\n",key ":",tmp;\ + tmp="";\ + }\ + tmp=tmp aaa;\ + }\ + else {\ + if( length(tmp) != 0){\ + gsub(" +"," ",tmp);\ + printf "%-20s%s\n",key ":",tmp;\ + tmp="";\ + }\ + print $0;\ + }\ + +}' +} + +headers_merge(){ + cat $file | single_merge "BuildRequires" | single_merge "Requires" > .$file + mv -f .$file $file + echo "Hint: Tags merged" +} + +delete_comment(){ + sed -i '/^#.*/d' $file + echo "Hint: commentline deleted" +} +delete_blank(){ + sed -i 's/[[:blank:]]\{1,\}$//g' $file + echo "Hint: tail-blank deleted " +} + +insert_enter(){ + sed -i '/^$/d' $file + sed -i '/^%package.*/i\ ' $file + sed -i '/^%pre.*/i\ ' $file + sed -i '/^%post.*/i\ ' $file + sed -i '/^%build.*/i\ ' $file + sed -i '/^%install.*/i\ ' $file + sed -i '/^%check*/i\ ' $file + sed -i '/^%files.*/i\ ' $file + sed -i '/^%changelog.*/i\ ' $file + echo "Hint: insert newline before stages" +} + +increase_release(){ + # release +1 + sed -i "/^Release.*$/s/${release_oo}/${release}/" $file + # delete Group Tags + sed -i '/^Group.*/d' $file + echo "Hint: release ++" +} + +header_align() { +awk '{ +if ($0 ~ /^[A-Z][[:alnum:]]*: / ) { +va=""; +for(i=2;i<=NF;i++){ va=va" "$i}; +printf("%-20s%s\n",$1,va); +} +else print $0; +}' $file > .$file +mv -f .$file $file +echo "Hint: header_align done" +} + +#################### main +main(){ + +file_o=$1 +file=${file_o}.cp +sed -i 's/\t/ /g' $1 +sed -i 's/%package\s\+javadoc$/%package help/g' $1 +sed -i '/%description\s\+javadoc$/i\Provides: %{name}-javadoc = %{version}-%{release}' $1 +sed -i '/%description\s\+javadoc$/i\Obsoletes: %{name}-javadoc < %{version}-%{release}' $1 +sed -i 's/%description\s\+javadoc$/%description help/g' $1 +sed -i 's/%files\s\+javadoc$/%files help/g' $1 +sed -i 's/%package\s\+doc$/%package help/g' $1 +sed -i '/%description\s\+doc$/i\Provides: %{name}-doc = %{version}-%{release}' $1 +sed -i '/%description\s\+doc$/i\Obsoletes: %{name}-doc < %{version}-%{release}' $1 +sed -i 's/%description\s\+doc$/%description help/g' $1 +sed -i 's/%files\s\+doc$/%files help/g' $1 +echo 'mv javadoc or doc to help succeed!!!!!!!' +cp -f $file_o $file + +# got verison release +version=`cat $file |grep '^Version' | awk '{print $2}'` +release_oo=`cat $file |grep '^Release' | awk '{print $2}'` +release_o=`echo $release_oo | sed 's/%{.*}//'` +#release=$((release_o+1)) +release=1 + +#marcos_expand keep this bug ... +delete_comment +changelog_update +increase_release +header_align +headers_merge +insert_enter +delete_blank + +#let's play +#read -p "Hint: exec vimdiff $file $file_o ? enter [yes/no]: " ans +#vimdiff $file $file_o +#read -p "Hint: do mv -b -f $file $file_o ? enter [yes/no]: " ans +#if [[ $ans =~ [Yy]([Ee][Ss])? ]];then + mv -b -f $file $file_o + echo "Hint: $file_o updated" +#else +# rm -f $file +# echo "Hint: $file deleted. Not my bad :P " +#fi +echo "From SONG: Enjoy your spec working !" +} + +banner(){ +cat <