This commit is contained in:
Panagiotis Vlantis 2025-05-04 23:59:37 +00:00 committed by GitHub
commit 640a12b513
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 313 additions and 7 deletions

View file

@ -0,0 +1,21 @@
# This file is currently used to test org-file-tags with tag hierarchies.
#+FILETAGS: :groceries:
#+TAGS: [ food : produce meat ]
#+TAGS: [ produce : fruit vegetable ]
#+TAGS: [ meat : poultry beef fish ]
* Meat
** Poultry :poultry:
*** Chicken :like:
*** Duck
** Beef :beef:
** Fish :fish:
*** Tuna
*** Salmon :like:
* Fruit :fruit:
** Blueberry
** Strawberry
* Vegetable :vegetable:
** Broccoli
** Potato

View file

@ -1530,7 +1530,33 @@ with keyword arg NOW in PLIST."
:buffer (org-ql-test-data-buffer "data-file-tags.org"))
(org-ql-expect ('(tags "fruit"))
'("Fruit" "Blueberry" "Strawberry")
:buffer (org-ql-test-data-buffer "data-file-tags.org"))))
:buffer (org-ql-test-data-buffer "data-file-tags.org")))
(org-ql-it "with tag hierarchy"
(org-ql-expect ('(tags "groceries"))
'("Meat" "Poultry" "Chicken" "Duck" "Beef" "Fish" "Tuna" "Salmon" "Fruit" "Blueberry" "Strawberry" "Vegetable" "Broccoli" "Potato")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags "food"))
nil
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags "meat"))
nil
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags "fish"))
'("Fish" "Tuna" "Salmon")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags "beef"))
'("Beef")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags "produce"))
nil
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags "vegetable"))
'("Vegetable" "Broccoli" "Potato")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags "fruit"))
'("Fruit" "Blueberry" "Strawberry")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))))
(describe "(tags-inherited)"
@ -1561,7 +1587,33 @@ with keyword arg NOW in PLIST."
:buffer (org-ql-test-data-buffer "data-file-tags.org"))
(org-ql-expect ('(tags-inherited "fruit"))
'("Blueberry" "Strawberry")
:buffer (org-ql-test-data-buffer "data-file-tags.org"))))
:buffer (org-ql-test-data-buffer "data-file-tags.org")))
(org-ql-it "with tag hierarchy"
(org-ql-expect ('(tags-inherited "groceries"))
'("Meat" "Poultry" "Chicken" "Duck" "Beef" "Fish" "Tuna" "Salmon" "Fruit" "Blueberry" "Strawberry" "Vegetable" "Broccoli" "Potato")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-inherited "food"))
nil
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-inherited "meat"))
nil
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-inherited "fish"))
'("Tuna" "Salmon")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-inherited "beef"))
nil
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-inherited "produce"))
nil
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-inherited "vegetable"))
'("Broccoli" "Potato")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-inherited "fruit"))
'("Blueberry" "Strawberry")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))))
(describe "(tags-local)"
@ -1591,7 +1643,33 @@ with keyword arg NOW in PLIST."
:buffer (org-ql-test-data-buffer "data-file-tags.org"))
(org-ql-expect ('(tags-local "fruit"))
'("Fruit")
:buffer (org-ql-test-data-buffer "data-file-tags.org"))))
:buffer (org-ql-test-data-buffer "data-file-tags.org")))
(org-ql-it "with tag hierarchy"
(org-ql-expect ('(tags-local "groceries"))
nil
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-local "food"))
nil
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-local "meat"))
nil
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-local "fish"))
'("Fish")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-local "beef"))
'("Beef")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-local "produce"))
nil
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-local "vegetable"))
'("Vegetable")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(tags-local "fruit"))
'("Fruit")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))))
(describe "(tags-all), (tags&)"
@ -1634,6 +1712,60 @@ with keyword arg NOW in PLIST."
'("Fruit" "Blueberry" "Strawberry")
:buffer (org-ql-test-data-buffer "data-file-tags.org"))))
(describe "(group-tags)"
(org-ql-it "with tag hierarchy"
(org-ql-expect ('(group-tags "groceries"))
'("Meat" "Poultry" "Chicken" "Duck" "Beef" "Fish" "Tuna" "Salmon" "Fruit" "Blueberry" "Strawberry" "Vegetable" "Broccoli" "Potato")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(group-tags "food"))
'("Poultry" "Chicken" "Duck" "Beef" "Fish" "Tuna" "Salmon" "Fruit" "Blueberry" "Strawberry" "Vegetable" "Broccoli" "Potato")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(group-tags "meat"))
'("Poultry" "Chicken" "Duck" "Beef" "Fish" "Tuna" "Salmon")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(group-tags "fish"))
'("Fish" "Tuna" "Salmon")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(group-tags "beef"))
'("Beef")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(group-tags "produce"))
'("Fruit" "Blueberry" "Strawberry" "Vegetable" "Broccoli" "Potato")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(group-tags "vegetable"))
'("Vegetable" "Broccoli" "Potato")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(group-tags "fruit"))
'("Fruit" "Blueberry" "Strawberry")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))))
(describe "(group-tags-all), (group-tags&)"
(org-ql-it "with tag hierarchy"
(org-ql-expect ('(group-tags-all "groceries" "like"))
'("Chicken" "Salmon")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(group-tags-all "poultry" "like"))
'("Chicken")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(group-tags-all "fish" "like"))
'("Salmon")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(group-tags-all "vegetables" "like"))
nil
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))))
(describe "(group-tags-regexp), (group-tags*)"
(org-ql-it "with tag hierarchy"
(org-ql-expect ('(group-tags-regexp ".*ke.*"))
'("Chicken" "Salmon")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))
(org-ql-expect ('(group-tags-regexp ".*ea.*"))
'("Poultry" "Chicken" "Duck" "Beef" "Fish" "Tuna" "Salmon")
:buffer (org-ql-test-data-buffer "data-tags-with-hierarchy.org"))))
(describe "(ts)"
(describe "active"