forked from vedang/pdf-tools
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pdf-util-test.el
43 lines (34 loc) · 1.61 KB
/
pdf-util-test.el
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
;; -*- lexical-binding: t; -*-
;; * ================================================================== *
;; * Tests for pdf-util.el
;; * ================================================================== *
(require 'ert)
(ert-deftest pdf-util-seq-alignment ()
(let ((s1 '(?a ?b ?c))
(s2 '(?a ?b ?c ?d))
(s3 '(-1 ?a ?b ?c))
(s4 '(?e ?f ?g))
(s5 '(?A ?B ?C))
(s6 '(?b)))
(should (equal '(2 . ((?a . ?a) (?b . ?b) (?c . ?c) (nil . ?d)))
(pdf-util-seq-alignment s1 s2)))
(should (equal '(3 . ((?a . ?a) (?b . ?b) (?c . ?c) (nil . ?d)))
(pdf-util-seq-alignment s1 s2 nil 'prefix)))
(should (equal '(3 . ((nil . -1) (?a . ?a) (?b . ?b) (?c . ?c)))
(pdf-util-seq-alignment s1 s3 nil 'suffix)))
(should (equal '(3 . ((nil . -1) (?a . ?a) (?b . ?b) (?c . ?c)))
(pdf-util-seq-alignment s1 s3 nil 'infix)))
(should (equal '(1 . ((nil . ?a) (?b . ?b) (nil . ?c)))
(pdf-util-seq-alignment s6 s1 nil 'infix)))
(should (equal '(-3 . ((?a . ?e) (?b . ?f) (?c . ?g)))
(pdf-util-seq-alignment s1 s4 nil)))
(should (equal '(3 . ((?a . ?e) (?b . ?f) (?c . ?g)))
(pdf-util-seq-alignment
s1 s4 (lambda (a b) 1))))
(should (equal '(3 . ((?A . ?a) (?B . ?b) (?C . ?c)))
(pdf-util-seq-alignment
s5 s1 (lambda (a b)
(if (equal (downcase a)
(downcase b))
1
-1)))))))