[SCM] ci-tooling packaging branch, master, updated. 893c0e69e5a883f027ea496f0e2a302f95ed44df

Harald Sitter apachelogger-guest at moszumanska.debian.org
Mon Mar 16 15:48:40 UTC 2015


Gitweb-URL: http://git.debian.org/?p=pkg-kde/ci-tooling.git;a=commitdiff;h=893c0e6

The following commit has been merged in the master branch:
commit 893c0e69e5a883f027ea496f0e2a302f95ed44df
Author: Harald Sitter <sitter at kde.org>
Date:   Mon Mar 16 16:48:37 2015 +0100

    allow assert_system and assert_backtick to accept an array of arrays as arg
    
    array arg behaves as previously, array of array however shifts the
    sub arrays out of the super array and asserts them in sequence.
    
    i.e. an array of arrays presents an assert sequence caused by the block.
    this enables a block to trigger multiple system/backtick calls that we
    still assert accordingly
    
    NOTE: this presently does not make sure that all commands are run at all
    
    also add an override mechanic. if the prepending class implements a
    backtick/system_intercept function that function will be called with the
    arguments and its return value is used for the proper return. enabling
    a more useful mocking of behavior
---
 test/lib/assert_backtick.rb | 11 ++++++++++-
 test/lib/assert_system.rb   | 12 +++++++++++-
 2 files changed, 21 insertions(+), 2 deletions(-)

diff --git a/test/lib/assert_backtick.rb b/test/lib/assert_backtick.rb
index f110120..093fe8d 100644
--- a/test/lib/assert_backtick.rb
+++ b/test/lib/assert_backtick.rb
@@ -29,7 +29,16 @@ module AssertBacktick
     assertee = self
     Kernel.send(:alias_method, ASSERT_BACKUP, METHOD)
     Kernel.send(:define_method, METHOD) do |*a|
-      assertee.assert_equal([*args], [*a])
+      if !args.empty? && args[0].is_a?(Array)
+        assertee.assert_equal([*args.shift], [*a])
+      elsif !args.empty?
+        assertee.assert_equal([*args], [*a])
+      else
+        assertee.assert_equal([], [*a], 'assert_backtick args empty')
+      end
+      if assertee.respond_to?(:backtick_intercept)
+        return assertee.backtick_intercept([*a])
+      end
       ''
     end
     block.yield
diff --git a/test/lib/assert_system.rb b/test/lib/assert_system.rb
index 4b2f25c..acc8097 100644
--- a/test/lib/assert_system.rb
+++ b/test/lib/assert_system.rb
@@ -29,7 +29,17 @@ module AssertSystem
     assertee = self
     Kernel.send(:alias_method, ASSERT_BACKUP, METHOD)
     Kernel.send(:define_method, METHOD) do |*a|
-      assertee.assert_equal([*args], [*a])
+      if !args.empty? && args[0].is_a?(Array)
+        assertee.assert_equal([*args.shift], [*a])
+      elsif !args.empty?
+        assertee.assert_equal([*args], [*a])
+      else
+        assertee.assert_equal([], [*a], 'assert_system args empty')
+      end
+      if assertee.respond_to?(:system_intercept)
+        return assertee.system_intercept([*a])
+      end
+      true
     end
     block.yield
   ensure

-- 
ci-tooling packaging



More information about the pkg-kde-commits mailing list