diff options
author | Leon Rische <leon.rische@me.com> | 2020-11-12 09:34:30 +0100 |
---|---|---|
committer | Leon Rische <leon.rische@me.com> | 2020-11-12 09:34:30 +0100 |
commit | bf5d92dc81a9b6f0b744ed1f6cddad7a14f98907 (patch) | |
tree | fa54e723ef4b9a1cb9c760446cc4d8bb465c88be /tests | |
parent | 2d0f4a25addfe667a3dab41a7f174056bbfd7b92 (diff) |
Allow awk to parse arbitrary review data tables
Diffstat (limited to 'tests')
-rw-r--r-- | tests/index/review_data.org | 25 | ||||
-rw-r--r-- | tests/org-fc-review-data-test.el | 53 |
2 files changed, 78 insertions, 0 deletions
diff --git a/tests/index/review_data.org b/tests/index/review_data.org new file mode 100644 index 0000000..84fb15a --- /dev/null +++ b/tests/index/review_data.org @@ -0,0 +1,25 @@ +* SM2 :fc: +:PROPERTIES: +:FC_CREATED: 2020-11-06T10:40:17Z +:FC_TYPE: double +:ID: f8cc05c7-aa3a-4a21-aa71-38178477e619 +:END: +:REVIEW_DATA: +| position | ease | box | interval | due | +|----------+------+-----+----------+----------------------| +| front | 2.5 | 0 | 0 | 2020-11-06T10:40:17Z | +| back | 2.8 | 2 | 123.4 | 2020-11-06T10:40:20Z | +:END: +Back +* Alternative :fc: +:PROPERTIES: +:FC_CREATED: 2020-11-06T11:31:05Z +:FC_TYPE: double +:ID: 404557e5-ec07-4ee1-a000-3f0e8a94eaa0 +:END: +:REVIEW_DATA: +| position | custom1 | custom2 | due | +|----------+---------+---------+----------------------| +| front | 1.0 | 3 | 2020-11-06T11:31:05Z | +| back | 2.0 | 4 | 2020-11-06T11:31:10Z | +:END: diff --git a/tests/org-fc-review-data-test.el b/tests/org-fc-review-data-test.el new file mode 100644 index 0000000..c00083b --- /dev/null +++ b/tests/org-fc-review-data-test.el @@ -0,0 +1,53 @@ +(require 'org-fc) +(require 'org-fc-test-helper) +(require 'ert) + +(ert-deftest org-fc-test-review-data () + (let ((index (org-fc-awk-index-paths + (list + (org-fc-test-fixture "index/review_data.org"))))) + (should (eq (length index) 2)) + (let ((card1 (car index)) + (card2 (cadr index))) + + (should + (equal (plist-get card1 :id) + "f8cc05c7-aa3a-4a21-aa71-38178477e619")) + (should + (eq (length (plist-get card1 :positions)) 2)) + + (let* ((poss (plist-get card1 :positions)) + (pos1 (car poss)) + (pos2 (cadr poss))) + + (should (equal (plist-get pos1 :position) "front")) + (should (equal (plist-get pos1 :ease) 2.5)) + (should (equal (plist-get pos1 :box) 0)) + (should (equal (plist-get pos1 :interval) 0)) + (should (equal (plist-get pos1 :due) '(24485 10257))) + + (should (equal (plist-get pos2 :position) "back")) + (should (equal (plist-get pos2 :ease) 2.8)) + (should (equal (plist-get pos2 :box) 2)) + (should (equal (plist-get pos2 :interval) 123.4)) + (should (equal (plist-get pos2 :due) '(24485 10260)))) + + (should + (equal (plist-get card2 :id) + "404557e5-ec07-4ee1-a000-3f0e8a94eaa0")) + (should + (eq (length (plist-get card2 :positions)) 2)) + + (let* ((poss (plist-get card2 :positions)) + (pos1 (car poss)) + (pos2 (cadr poss))) + + (should (equal (plist-get pos1 :position) "front")) + (should (equal (plist-get pos1 :due) '(24485 13305))) + (should (equal (plist-get pos1 :custom1) 1.0)) + (should (equal (plist-get pos1 :custom2) 3)) + + (should (equal (plist-get pos2 :position) "back")) + (should (equal (plist-get pos2 :due) '(24485 13310))) + (should (equal (plist-get pos2 :custom1) 2.0)) + (should (equal (plist-get pos2 :custom2) 4)))))) |