You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					889 lines
				
				8.4 KiB
			
		
		
			
		
	
	
					889 lines
				
				8.4 KiB
			| 
											8 years ago
										 | ;; Tests for various movement commands  -*- lexical-binding: t -*-
 | ||
|  | 
 | ||
|  | (add-to-list 'load-path ".")
 | ||
|  | (load "init" nil t)
 | ||
|  | (init-rst-ert t)
 | ||
|  | 
 | ||
|  | (ert-deftest movement-asserts ()
 | ||
|  |   "Check some assertions."
 | ||
|  |   (should (equal ert-Buf-point-char "\^@"))
 | ||
|  |   (should (equal ert-Buf-mark-char "\^?"))
 | ||
|  |   )
 | ||
|  | 
 | ||
|  | (defun fwd-para ()
 | ||
|  |   "Wrapper to call `forward-paragraph'."
 | ||
|  |   (rst-mode)
 | ||
|  |   (forward-paragraph))
 | ||
|  | 
 | ||
|  | (ert-deftest forward-paragraph ()
 | ||
|  |   "Tests for `forward-paragraph'."
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | :Field: Content
 | ||
|  | \^@
 | ||
|  |   More content
 | ||
|  |   over several
 | ||
|  | 
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | :Field: Content
 | ||
|  | 
 | ||
|  |   More content
 | ||
|  |   over several
 | ||
|  | \^@
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  | 
 | ||
|  | 
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "\^@
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para"
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para\^@"
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "\^@
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | \^@"
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "\^@
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | 
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | \^@
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "\^@
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | 
 | ||
|  | 
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | \^@
 | ||
|  | 
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | \^@This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | 
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | \^@
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | \^@para
 | ||
|  | 
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | \^@
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | \^@para
 | ||
|  | 
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | \^@
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | \^@a short
 | ||
|  |   para
 | ||
|  | 
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  |   para
 | ||
|  | \^@
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | \^@para
 | ||
|  | 
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | 
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | \^@
 | ||
|  | This is
 | ||
|  | a short
 | ||
|  | para
 | ||
|  | 
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | \^@* An item
 | ||
|  | 
 | ||
|  | * Another item
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | * An item
 | ||
|  | \^@
 | ||
|  | * Another item
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | \^@* An item
 | ||
|  | * Another item
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | * An item
 | ||
|  | \^@* Another item
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | \^@:Field: Content
 | ||
|  | 
 | ||
|  |   More content
 | ||
|  |   over several
 | ||
|  | 
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | :Field: Content
 | ||
|  | \^@
 | ||
|  |   More content
 | ||
|  |   over several
 | ||
|  | 
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | :Field: Content
 | ||
|  | \^@
 | ||
|  |   More content
 | ||
|  |   over several
 | ||
|  | 
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | :Field: Content
 | ||
|  | 
 | ||
|  |   More content
 | ||
|  |   over several
 | ||
|  | \^@
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | :Field: Content
 | ||
|  | 
 | ||
|  |   More content
 | ||
|  |   over several
 | ||
|  | \^@
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | :Field: Content
 | ||
|  | 
 | ||
|  |   More content
 | ||
|  |   over several
 | ||
|  | 
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | \^@"
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "\^@
 | ||
|  | .. |s| d::
 | ||
|  |   :F: Content
 | ||
|  | 
 | ||
|  |     More content
 | ||
|  |     over several
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | .. |s| d::
 | ||
|  | \^@  :F: Content
 | ||
|  | 
 | ||
|  |     More content
 | ||
|  |     over several
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | .. |s| d::
 | ||
|  | \^@  :F: Content
 | ||
|  | 
 | ||
|  |     More content
 | ||
|  |     over several
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | .. |s| d::
 | ||
|  |   :F: Content
 | ||
|  | \^@
 | ||
|  |     More content
 | ||
|  |     over several
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | .. |s| d::
 | ||
|  |   :F: Content
 | ||
|  | \^@
 | ||
|  |     More content
 | ||
|  |     over several
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | .. |s| d::
 | ||
|  |   :F: Content
 | ||
|  | 
 | ||
|  |     More content
 | ||
|  |     over several
 | ||
|  | \^@  * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer-return
 | ||
|  | 	   '(fwd-para)
 | ||
|  | 	   "
 | ||
|  | .. |s| d::
 | ||
|  |   :F: Content
 | ||
|  | 
 | ||
|  |     More content
 | ||
|  |     over several
 | ||
|  | \^@  * An item
 | ||
|  |     with multi
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | .. |s| d::
 | ||
|  |   :F: Content
 | ||
|  | 
 | ||
|  |     More content
 | ||
|  |     over several
 | ||
|  |   * An item
 | ||
|  |     with multi
 | ||
|  | \^@"
 | ||
|  | 	   0
 | ||
|  | 	   ))
 | ||
|  |   )
 | ||
|  | 
 | ||
|  | (ert-deftest rst-forward-section ()
 | ||
|  |   "Tests for `rst-forward-section'."
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section -1)
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | \^@Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "\^@
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 1)
 | ||
|  | 	   "\^@"
 | ||
|  | 	   "\^@"))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 1)
 | ||
|  | 	   "
 | ||
|  | Some text\^@
 | ||
|  | 
 | ||
|  | More text
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | More text
 | ||
|  | \^@"
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 1)
 | ||
|  | 	   "
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | More text
 | ||
|  | \^@"
 | ||
|  | 	   "
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | More text
 | ||
|  | \^@"
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section -1)
 | ||
|  | 	   "
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | More text
 | ||
|  | \^@"
 | ||
|  | 	   "\^@
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | More text
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 1)
 | ||
|  | 	   "
 | ||
|  | \^@Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | \^@"
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 1)
 | ||
|  | 	   "
 | ||
|  | Header 1\^@
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | \^@"
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 1)
 | ||
|  | 	   "
 | ||
|  | Header 1
 | ||
|  | ===\^@=====
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | \^@"
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 1)
 | ||
|  | 	   "
 | ||
|  | Header 1\^@
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | \^@Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 1)
 | ||
|  | 	   "
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | \^@Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | \^@Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 1)
 | ||
|  | 	   "
 | ||
|  | Header 1
 | ||
|  | ========\^@
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | \^@Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 1)
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | \^@Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | \^@Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 1)
 | ||
|  | 	   "
 | ||
|  | \^@========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | \^@Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section -1)
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | \^@Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | \^@Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  | 
 | ||
|  | ; ****
 | ||
|  | 
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 2)
 | ||
|  | 	   "\^@
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | \^@Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 3)
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | \^@Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Header 3
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Header 4
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Header 3
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | \^@Header 4
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 3)
 | ||
|  | 	   "\^@
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | \^@"
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 0)
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1\^@
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | \^@Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 0)
 | ||
|  | 	   "
 | ||
|  | ========\^@
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | \^@Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 0)
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========\^@
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | \^@Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section 0)
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text\^@
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text\^@
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section -)
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | \^@Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | \^@Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   t))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section nil)
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | \^@Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | \^@Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   t
 | ||
|  | 	   ))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-forward-section (4))
 | ||
|  | 	   "\^@
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | \^@"
 | ||
|  | 	   t))
 | ||
|  |   (should (ert-equal-buffer
 | ||
|  | 	   '(rst-backward-section nil)
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | \^@Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   "
 | ||
|  | ========
 | ||
|  | \^@Header 1
 | ||
|  | ========
 | ||
|  | 
 | ||
|  | Some text
 | ||
|  | 
 | ||
|  | Header 2
 | ||
|  | ========
 | ||
|  | "
 | ||
|  | 	   t))
 | ||
|  |   )
 |