old_contents: import os
  from test.testlib import *
  from git_python import *
  
  class TestUtils(object):
      def setup(self):
          base = os.path.join(os.path.dirname(__file__), "../.."),
          self.git = Git(base)
  #        self.git_bin_base = "%s --git-dir='%s'" % (Git.git_binary, base)
  
  #    def test_it_escapes_single_quotes_with_shell_escape(self):
  #        assert_equal("\\\\'foo", shell_escape("'foo"))
  
      def test_it_should_dashify(self):
          assert_equal('this-is-my-argument', dashify('this_is_my_argument'))
          assert_equal('foo', dashify('foo'))
  
new_contents: import os
  from test.testlib import *
  from git_python import *
  
  class TestUtils(object):
      def setup(self):
          self.testdict = {
              "string":   "42",
              "int":      42,
              "array":    [ 42 ],
          }
  
      def test_it_should_dashify(self):
          assert_equal('this-is-my-argument', dashify('this_is_my_argument'))
          assert_equal('foo', dashify('foo'))
  
      def test_pop_key_array(self):
          array = pop_key(self.testdict, "array")
          assert_equal( [ 42 ], array )
          assert_equal( False, "array" in self.testdict )
  
      def test_pop_key_string(self):
          stringValue = pop_key(self.testdict, "string")
          assert_equal( "42", stringValue )
          assert_equal( False, "string" in self.testdict )
  
      def test_pop_key_int(self):
          intValue = pop_key(self.testdict, "int")
          assert_equal( 42, intValue )
          assert_equal( False, "int" in self.testdict )
  
subject: add utils.pop_key() testcases