patch 8.0.0313: not enough testing for GUI functionality

Problem:    Not enough testing for GUI functionality.
Solution:   Add tests for the GUI font. (Kazunobu Kuriyama)
diff --git a/src/testdir/test_gui.vim b/src/testdir/test_gui.vim
index c5c7716..0a158e7 100644
--- a/src/testdir/test_gui.vim
+++ b/src/testdir/test_gui.vim
@@ -35,11 +35,48 @@
   call assert_equal(1, has('gui_running'))
 endfunc
 
+func Test_getfontname_with_arg()
+  if has('gui_athena') || has('gui_motif')
+    " Invalid font name. The result should be an empty string.
+    call assert_equal('', getfontname('notexist'))
+
+    " Valid font name. This is usually the real name of 7x13 by default.
+    let l:fname = '-Misc-Fixed-Medium-R-Normal--13-120-75-75-C-70-ISO10646-1'
+    call assert_equal(l:fname, getfontname(l:fname))
+
+  elseif has('gui_gtk2') || has('gui_gnome') || has('gui_gtk3')
+    " Invalid font name. The result should be the name plus the default size.
+    call assert_equal('notexist 10', getfontname('notexist'))
+
+    " Valid font name. This is usually the real name of Monospace by default.
+    let l:fname = 'Bitstream Vera Sans Mono 12'
+    call assert_equal(l:fname, getfontname(l:fname))
+  else
+    throw "Skipped: Matched font name unpredictable to test on this GUI"
+  endif
+endfunc
+
+func Test_getfontname_without_arg()
+  let l:fname = getfontname()
+  if has('gui_kde')
+    " 'expected' is the value specified by SetUp() above.
+    call assert_equal('Courier 10 Pitch/8/-1/5/50/0/0/0/0/0', l:fname)
+  elseif has('gui_athena') || has('gui_motif')
+    " 'expected' is DFLT_FONT of gui_x11.c.
+    call assert_equal('7x13', l:fname)
+  elseif has('gui_gtk2') || has('gui_gnome') || has('gui_gtk3')
+    " 'expected' is DEFAULT_FONT of gui_gtk_x11.c.
+    call assert_equal('Monospace 10', l:fname)
+  else
+    throw "Skipped: Default font name unpredictable to test on this GUI"
+  endif
+endfunc
+
 func Test_getwinpos()
   call assert_match('Window position: X \d\+, Y \d\+', execute('winpos'))
   call assert_true(getwinposx() >= 0)
   call assert_true(getwinposy() >= 0)
-endfunction
+endfunc
 
 func Test_shell_command()
   new
@@ -54,4 +91,4 @@
   else
     call assert_equal(0, v:windowid)
   endif
-endfunction
+endfunc
diff --git a/src/version.c b/src/version.c
index 22e2669..261a55d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -765,6 +765,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    313,
+/**/
     312,
 /**/
     311,