Ejemplo n.º 1
0
    def test_mkdir_url_with_revprops(self):
        """Test svn_client_mkdir3 on a file:// URL, with added revprops"""
        directory = urljoin(self.repos_uri + "/", "some/deep/subdir")

        commit_info = client.mkdir3((directory,), 1, {"customprop": "value"}, self.client_ctx)
        self.assertEqual(commit_info.revision, 13)
        self.assertEqual(self.log_message_func_calls, 1)
Ejemplo n.º 2
0
  def test_mkdir_url_with_revprops(self):
    """Test svn_client_mkdir3 on a file:// URL, with added revprops"""
    directory = urljoin(self.repos_uri+b"/", b"some/deep/subdir")

    commit_info = client.mkdir3((directory,), 1, {b'customprop':b'value'},
                                self.client_ctx)
    self.assertEqual(commit_info.revision, 13)
    self.assertEqual(self.log_message_func_calls, 1)
Ejemplo n.º 3
0
    def test_mkdir_url_with_revprops(self):
        """Test svn_client_mkdir3 on a file:// URL, with added revprops"""
        dir = urljoin(REPOS_URL + "/", "some/deep/subdir")

        commit_info = client.mkdir3((dir, ), 1, {'customprop': 'value'},
                                    self.client_ctx)
        self.assertEqual(commit_info.revision, 14)
        self.assertEqual(self.log_message_func_calls, 1)
Ejemplo n.º 4
0
  def test_mkdir_url_with_revprops(self):
    """Test svn_client_mkdir3 on a file:// URL, with added revprops"""
    dir = urljoin(REPOS_URL+"/", "some/deep/subdir")

    commit_info = client.mkdir3((dir,), 1, {'customprop':'value'},
                                self.client_ctx)
    self.assertEqual(commit_info.revision, 14)
    self.assertEqual(self.log_message_func_calls, 1)
Ejemplo n.º 5
0
  def test_get_commit_log3_callback_accept_unicode(self):
    """Test svn_client_get_commit_log3_t callback wrapper accept unicode as return value"""
    directory = urljoin(self.repos_uri+b"/", b"dir1")
    # override callback function which returns commit log as unicode
    unicode_log_message_func = self.make_log_message_func(u"Test log message")
    self.client_ctx.log_msg_baton3 = unicode_log_message_func

    commit_info = client.mkdir3((directory,), 1, {b'customprop':b'value'},
                                self.client_ctx)
    self.assertEqual(commit_info.revision, 13)
    self.assertEqual(self.log_message_func_calls, 1)
Ejemplo n.º 6
0
  def test_get_commit_log3_callback_unicode_error(self):
    """Test svn_client_get_commit_log3_t callback wrapper handles UnicodeEncodeError correctly"""
    directory = urljoin(self.repos_uri+b"/", b"dir1")
    # override callback function which returns commit log as unicode
    # which contains surrogate escaped character
    bogus_log_message_func = self.make_log_message_func(u"Test \udc6cog"
                                                        u" message")
    self.client_ctx.log_msg_baton3 = bogus_log_message_func

    with self.assertRaises(UnicodeEncodeError):
      commit_info = client.mkdir3((directory,), 1, {b'customprop':b'value'},
                                  self.client_ctx)
Ejemplo n.º 7
0
    def test_get_commit_log3_callback_unicode_error(self):
        """Test svn_client_get_commit_log3_t callback wrapper handles UnicodeEncodeError correctly"""
        directory = urljoin(self.repos_uri + b"/", b"dir1")
        # override callback function which returns commit log as unicode
        # which contains surrogate escaped character
        bogus_log_message_func = self.make_log_message_func(u"Test \udc6cog"
                                                            u" message")
        self.client_ctx.log_msg_baton3 = bogus_log_message_func

        if not utils.IS_PY3 and utils.is_defaultencoding_utf8():
            # 'utf-8' codecs on Python 2 does not raise UnicodeEncodeError
            # on surrogate code point U+dc00 - U+dcff, however it causes
            # Subversion error on property validation of svn:log
            with self.assertRaises(core.SubversionException):
                commit_info = client.mkdir3((directory, ), 1,
                                            {b'customprop': b'value'},
                                            self.client_ctx)
        else:
            with self.assertRaises(UnicodeEncodeError):
                commit_info = client.mkdir3((directory, ), 1,
                                            {b'customprop': b'value'},
                                            self.client_ctx)