Author: coolo Date: Wed Jun 11 11:51:49 2008 New Revision: 10368 URL: http://svn.opensuse.org/viewcvs/zypp?rev=10368&view=rev Log: integrate the test suite into make test Modified: branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/CMakeLists.txt branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/README.FAILS branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/runtest.rb Modified: branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/CMakeLists.txt URL: http://svn.opensuse.org/viewcvs/zypp/branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/CMakeLists.txt?rev=10368&r1=10367&r2=10368&view=diff ============================================================================== --- branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/CMakeLists.txt (original) +++ branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/CMakeLists.txt Wed Jun 11 11:51:49 2008 @@ -15,3 +15,7 @@ install(TARGETS deptestomatic DESTINATION ${BIN_INSTALL_DIR} ) + +ENABLE_TESTING() +ADD_TEST(testsuite ruby ${CMAKE_CURRENT_SOURCE_DIR}/runtest.rb -b ${CMAKE_BINARY_DIR} -s ${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/data.libzypp/basic-exercises ) + Modified: branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/README.FAILS URL: http://svn.opensuse.org/viewcvs/zypp/branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/README.FAILS?rev=10368&r1=10367&r2=10368&view=diff ============================================================================== --- branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/README.FAILS (original) +++ branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/README.FAILS Wed Jun 11 11:51:49 2008 @@ -1,112 +1,112 @@ # POLICIES -./data.libzypp/bugzilla-tests/bug310455-test.xml +data.libzypp/bugzilla-tests/bug310455-test.xml libzypp does not like to change vendors, sat does not care -./data.libzypp/yast-tests/Bug159696-test.xml +data.libzypp/yast-tests/Bug159696-test.xml libzypp removes packages if the pattern is deinstalled -./data.libzypp/basic-exercises/Bug299819-2-test.xml -./data.libzypp/freshen-tests/exercise-6-test.xml -./data.libzypp/freshen-tests/exercise-6f-test.xml -./data.libzypp/freshen-tests/exercise-7-test.xml -./data.libzypp/freshen-tests/exercise-7f-test.xml +data.libzypp/basic-exercises/Bug299819-2-test.xml +data.libzypp/freshen-tests/exercise-6-test.xml +data.libzypp/freshen-tests/exercise-6f-test.xml +data.libzypp/freshen-tests/exercise-7-test.xml +data.libzypp/freshen-tests/exercise-7f-test.xml installs recommends -./data.libzypp/kernel-tests/kernel_kmp-test.xml +data.libzypp/kernel-tests/kernel_kmp-test.xml libzypp does an upgrade of a package needed, mls prefers not to -./data.libzypp/yast-tests/exercise-02conflict-13-force-test.xml -./data.libzypp/yast-tests/exercise-inconsistent6-force-test.xml -./data.libzypp/yast-tests/exercise-02conflict-09-force-test.xml -./data.libzypp/yast-tests/exercise-02conflict-09-test.xml +data.libzypp/yast-tests/exercise-02conflict-13-force-test.xml +data.libzypp/yast-tests/exercise-inconsistent6-force-test.xml +data.libzypp/yast-tests/exercise-02conflict-09-force-test.xml +data.libzypp/yast-tests/exercise-02conflict-09-test.xml libzypp removes broken pack, mls changes version -./data.libzypp/basic-exercises/exercise-25-test.xml -./data.libzypp/basic-exercises/exercise-26-test.xml +data.libzypp/basic-exercises/exercise-25-test.xml +data.libzypp/basic-exercises/exercise-26-test.xml promoteepoch is only enabled for redcarpet -./data.libzypp/lock-tests/install-single-test.xml -./data.libzypp/lock-tests/remove-single-test.xml +data.libzypp/lock-tests/install-single-test.xml +data.libzypp/lock-tests/remove-single-test.xml eiter a resolvable is locked OR it will be transacted. So this testcase are useless -./data.libzypp/bugzilla-tests/bug225278-test.xml +data.libzypp/bugzilla-tests/bug225278-test.xml weired test case in general # BUGS # MISSINGS -./data.libzypp/patch-tests/jumbo-patch-test.xml -./data.libzypp/patch-tests/kernel-single-update-test.xml -./data.libzypp/patch-tests/kernel-update-test.xml -./data.libzypp/patch-tests/parallel-atmos-test.xml -./data.libzypp/patch-tests/parallel-atoms-equal-patch-test.xml -./data.libzypp/patch-tests/script-test.xml -./data.libzypp/freshen-tests/exercise-1-test.xml -./data.libzypp/freshen-tests/exercise-11-test.xml -./data.libzypp/freshen-tests/exercise-1f-test.xml -./data.libzypp/freshen-tests/exercise-8-test.xml -./data.libzypp/bugzilla-tests/bug238284-test.xml +data.libzypp/patch-tests/jumbo-patch-test.xml +data.libzypp/patch-tests/kernel-single-update-test.xml +data.libzypp/patch-tests/kernel-update-test.xml +data.libzypp/patch-tests/parallel-atmos-test.xml +data.libzypp/patch-tests/parallel-atoms-equal-patch-test.xml +data.libzypp/patch-tests/script-test.xml +data.libzypp/freshen-tests/exercise-1-test.xml +data.libzypp/freshen-tests/exercise-11-test.xml +data.libzypp/freshen-tests/exercise-1f-test.xml +data.libzypp/freshen-tests/exercise-8-test.xml +data.libzypp/bugzilla-tests/bug238284-test.xml patches pretty much unimplemented - very likely not a solver problem -./data.libzypp/basic-exercises/Bug299486-test.xml -./data.libzypp/basic-exercises/conflict-1-test.xml -./data.libzypp/basic-exercises/exercise-15-test.xml -./data.libzypp/basic-exercises/exercise-16-force-test.xml -./data.libzypp/basic-exercises/exercise-41-test.xml -./data.libzypp/basic-exercises/exercise-46-test.xml -./data.libzypp/basic-exercises/require-3-test.xml -./data.libzypp/bugzilla-tests/bug208784-test.xml -./data.libzypp/bugzilla-tests/bug326384-test.xml -./data.libzypp/bugzilla-tests/bug328081-test.xml -./data.libzypp/distupgrade-tests/exercise-bug150844-test.xml -./data.libzypp/patch-tests/parallel-atmos-fail-test.xml -./data.libzypp/selection-tests/install-simple-test.xml -./data.libzypp/simple-tests/vendor-test.xml -./data.libzypp/yast-tests/Bug162887-test.xml -./data.libzypp/yast-tests/exercise-01simple-6-test.xml -./data.libzypp/yast-tests/exercise-inconsistent2-test.xml -./data.libzypp/yast-tests/exercise-inconsistent4-test.xml -./data.libzypp/yast-tests/exercise-inconsistent6-test.xml -./data.libzypp/yast-tests/exercise-obscureobsoletes-11-test.xml -./data.libzypp/yast-tests/kernel1-test.xml -./data.libzypp/zen-tests/2-test.xml +data.libzypp/basic-exercises/Bug299486-test.xml +data.libzypp/basic-exercises/conflict-1-test.xml +data.libzypp/basic-exercises/exercise-15-test.xml +data.libzypp/basic-exercises/exercise-16-force-test.xml +data.libzypp/basic-exercises/exercise-41-test.xml +data.libzypp/basic-exercises/exercise-46-test.xml +data.libzypp/basic-exercises/require-3-test.xml +data.libzypp/bugzilla-tests/bug208784-test.xml +data.libzypp/bugzilla-tests/bug326384-test.xml +data.libzypp/bugzilla-tests/bug328081-test.xml +data.libzypp/distupgrade-tests/exercise-bug150844-test.xml +data.libzypp/patch-tests/parallel-atmos-fail-test.xml +data.libzypp/selection-tests/install-simple-test.xml +data.libzypp/simple-tests/vendor-test.xml +data.libzypp/yast-tests/Bug162887-test.xml +data.libzypp/yast-tests/exercise-01simple-6-test.xml +data.libzypp/yast-tests/exercise-inconsistent2-test.xml +data.libzypp/yast-tests/exercise-inconsistent4-test.xml +data.libzypp/yast-tests/exercise-inconsistent6-test.xml +data.libzypp/yast-tests/exercise-obscureobsoletes-11-test.xml +data.libzypp/yast-tests/kernel1-test.xml +data.libzypp/zen-tests/2-test.xml # TO BE IGNORED -./data.libzypp/basic-exercises/exercise-43-test.xml -./data.libzypp/basic-exercises/exercise-47-test.xml -./data.libzypp/basic-exercises/exercise-48-test.xml -./data.libzypp/basic-exercises/exercise-60-test.xml -./data.libzypp/basic-exercises/provide-1-test.xml -./data.libzypp/bugzilla-tests/bug191983-test.xml -./data.libzypp/bugzilla-tests/bug217574-test.xml -./data.libzypp/bugzilla-tests/bug224698-test.xml -./data.libzypp/bugzilla-tests/bug297795-1-test.xml -./data.libzypp/lock-tests/exercise-obscureobsoletes-02-test.xml -./data.libzypp/lock-tests/exercise-obscureobsoletes-06-test.xml -./data.libzypp/lock-tests/install-single-require-test.xml -./data.libzypp/patch-tests/wrong-mutt-test.xml -./data.libzypp/simple-tests/arch3-test.xml -./data.libzypp/solution-tests/conflict-bug153328-test.xml -./data.libzypp/solution-tests/conflict-test.xml -./data.libzypp/solution-tests/conflict3-test.xml -./data.libzypp/solution-tests/parallel-test.xml -./data.libzypp/solution-tests/remove-still-needed1-test.xml -./data.libzypp/solution-tests/remove-still-needed3-test.xml -./data.libzypp/solution-tests/require-test.xml -./data.libzypp/yast-tests/Bug156408-test.xml -./data.libzypp/yast-tests/Bug156439-test.xml -./data.libzypp/yast-tests/exercise-02conflict-12-test.xml -./data.libzypp/yast-tests/exercise-05reallive-4-test.xml -./data.libzypp/yast-tests/exercise-kdelibsobs-force-test.xml -./data.libzypp/basic-exercises/exercise-35-test.xml -./data.libzypp/basic-exercises/exercise-36-test.xml -./data.libzypp/basic-exercises/exercise-37-test.xml -./data.libzypp/basic-exercises/exercise-38-test.xml -./data.libzypp/basic-exercises/exercise-40-test.xml -./data.libzypp/basic-exercises/exercise-44-test.xml -./data.libzypp/sat-tests/test-crappy-coolo-2-test.xml -./data.libzypp/sat-tests/test-crappy-coolo-5-test.xml -./data.libzypp/sat-tests/test-crappy-coolo-9-test.xml +data.libzypp/basic-exercises/exercise-43-test.xml +data.libzypp/basic-exercises/exercise-47-test.xml +data.libzypp/basic-exercises/exercise-48-test.xml +data.libzypp/basic-exercises/exercise-60-test.xml +data.libzypp/basic-exercises/provide-1-test.xml +data.libzypp/bugzilla-tests/bug191983-test.xml +data.libzypp/bugzilla-tests/bug217574-test.xml +data.libzypp/bugzilla-tests/bug224698-test.xml +data.libzypp/bugzilla-tests/bug297795-1-test.xml +data.libzypp/lock-tests/exercise-obscureobsoletes-02-test.xml +data.libzypp/lock-tests/exercise-obscureobsoletes-06-test.xml +data.libzypp/lock-tests/install-single-require-test.xml +data.libzypp/patch-tests/wrong-mutt-test.xml +data.libzypp/simple-tests/arch3-test.xml +data.libzypp/solution-tests/conflict-bug153328-test.xml +data.libzypp/solution-tests/conflict-test.xml +data.libzypp/solution-tests/conflict3-test.xml +data.libzypp/solution-tests/parallel-test.xml +data.libzypp/solution-tests/remove-still-needed1-test.xml +data.libzypp/solution-tests/remove-still-needed3-test.xml +data.libzypp/solution-tests/require-test.xml +data.libzypp/yast-tests/Bug156408-test.xml +data.libzypp/yast-tests/Bug156439-test.xml +data.libzypp/yast-tests/exercise-02conflict-12-test.xml +data.libzypp/yast-tests/exercise-05reallive-4-test.xml +data.libzypp/yast-tests/exercise-kdelibsobs-force-test.xml +data.libzypp/basic-exercises/exercise-35-test.xml +data.libzypp/basic-exercises/exercise-36-test.xml +data.libzypp/basic-exercises/exercise-37-test.xml +data.libzypp/basic-exercises/exercise-38-test.xml +data.libzypp/basic-exercises/exercise-40-test.xml +data.libzypp/basic-exercises/exercise-44-test.xml +data.libzypp/sat-tests/test-crappy-coolo-2-test.xml +data.libzypp/sat-tests/test-crappy-coolo-5-test.xml +data.libzypp/sat-tests/test-crappy-coolo-9-test.xml the tests are really to be ignored Modified: branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/runtest.rb URL: http://svn.opensuse.org/viewcvs/zypp/branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/runtest.rb?rev=10368&r1=10367&r2=10368&view=diff ============================================================================== --- branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/runtest.rb (original) +++ branches/SuSE-Linux-11_0-Branch/sat-solver/testsuite/runtest.rb Wed Jun 11 11:51:49 2008 @@ -15,21 +15,15 @@ require 'test/unit' require 'pp' +require 'getoptlong' $verbose = false $redcarpet = false $tests = Array.new -if File.executable?( "./deptestomatic" ) - execdir = Dir.getwd -else - execdir = "../build/testsuite" -end -$deptestomatic = File.join( execdir, "deptestomatic" ) - -raise "Cannot find 'deptestomatic' executable. Please fix path in runtest.rb'" unless File.executable?( $deptestomatic ) +$builddir= File.join( Dir.getwd, "..") +$sourcedir = File.join( Dir.getwd, "..") -$topdir = Dir.getwd $fails = Array.new $ignorecount = 0 @@ -41,6 +35,18 @@ UnexpectedPass = 4 end +def known_failure? name + $fails.each { |f| + if name.length < f.length + next + end + if name[-f.length..-1] == f + return true + end + } + return false +end + class Solution # poor mans diff @@ -150,7 +156,7 @@ results = Solution.read rname if (solutions.empty? && results.empty?) - if ( $fails.member?( rname ) ) + if ( known_failure?( rname ) ) STDERR.puts "#{rname} passed" return CompareResult::UnexpectedPass else @@ -174,7 +180,7 @@ } } if solutionFit - if ( $fails.member?( rname ) ) + if ( known_failure?( rname ) ) STDERR.puts "#{rname} passed" return CompareResult::UnexpectedPass else @@ -187,7 +193,7 @@ end end - if ( $fails.member?( rname ) ) + if ( known_failure?( rname ) ) return CompareResult::KnownFailure end @@ -458,30 +464,46 @@ puts "Running in #{Dir.getwd}" -if ARGV.first == "--redcarpet" - $redcarpet = true - ARGV.shift -end - -if ARGV.first == "-r" - recurse = true - ARGV.shift -end - -if ARGV.first == "-v" - $verbose = true - ARGV.shift -end - -if File.readable?("README.FAILS") - IO.foreach( "README.FAILS") { |line| - line.chomp - if ( line !~ /^\s/ ) - line = line[0..-6] + ".result" - $fails << line +opts = GetoptLong.new( + [ '--help', '-h', GetoptLong::NO_ARGUMENT ], + [ '--redcarpet', GetoptLong::NO_ARGUMENT ], + [ '-r', GetoptLong::NO_ARGUMENT ], + [ '-v', GetoptLong::NO_ARGUMENT ], + [ '-s', GetoptLong::OPTIONAL_ARGUMENT ], + [ '-b', GetoptLong::OPTIONAL_ARGUMENT ] + ) + +recurse = false + +opts.each do |opt, arg| + case opt + when '--help' + usage + when '--redcarpet' + $redcarpet = true + when '-r' + recurse = true + when '-v' + $verbose = true + when '-s' + $sourcedir = arg + when '-b' + $builddir = arg + end end - } -end + +$deptestomatic = File.join( $builddir, "testsuite", "deptestomatic" ) +raise "Cannot find '#{$deptestomatic}' executable. Please use -b to pass builddir path" unless File.executable?( $deptestomatic ) +$readmefile=File.join( $sourcedir, "testsuite", "README.FAILS") +raise "Cannot find '#{$readmefile}' file. Please use -s to pass sourcedir path" unless File.readable?( $readmefile ) + +IO.foreach( $readmefile ) { |line| + line.chomp + if ( line !~ /^\s/ ) + line = line[0..-6] + ".result" + $fails << line + end +} #preproc = Recurse.new Dir.getwd #preproc.process -- To unsubscribe, e-mail: zypp-commit+unsubscribe@opensuse.org For additional commands, e-mail: zypp-commit+help@opensuse.org