I could be mistaken in this, but in your code above, where did you get 'news-error' as the name of the error condition raised? I can't find this anywhere in the gnus source tree. Do you know for sure that gnus-group-get-new-news (or anything it calls) raises that condition?
(defun news-check ()
(condition-case err
(message "The result is %s" (gnus-group-get-new-news))
(news-error
(message "I expect the server closed again %s",err)
)
)
)