Add: Tag cache, inherited/local tags predicates
This commit is contained in:
parent
3ec5e08a6b
commit
ca9ab3e6a5
3 changed files with 153 additions and 10 deletions
|
|
@ -586,6 +586,51 @@ RESULTS should be a list of strings as returned by
|
|||
(org-ql-expect ((not (tags "Emacs" "space")))
|
||||
'("Test data" "Take over the universe" "Take over the world" "Skype with president of Antarctica" "Take over Mars" "Take over the moon" "Practice leaping tall buildings in a single bound" "Renew membership in supervillain club" "Learn universal sign language" "Order a pizza" "Get haircut" "Internet" "Spaceship lease" "Fix flux capacitor" "Recurring" "Shop for groceries" "Sunrise/sunset" "Ideas" "Write a symphony" "Code" "Agenda examining" "Agenda censoring" "Auto grouping" "Auto categories" "Date" "Effort" "Misc" "let-plist" "Profiling"))))
|
||||
|
||||
(describe "(tags-inherited)"
|
||||
|
||||
(org-ql-it "without arguments"
|
||||
(org-ql-expect ((tags-inherited))
|
||||
'("Take over the world" "Skype with president of Antarctica" "Take over Mars" "Visit Mars" "Take over the moon" "Visit the moon" "Practice leaping tall buildings in a single bound" "Renew membership in supervillain club" "Learn universal sign language"))
|
||||
(org-ql-expect ((not (inherited-tags)))
|
||||
'("Test data" "Take over the universe" "Order a pizza" "Get haircut" "Internet" "Spaceship lease" "Fix flux capacitor" "Recurring" "/r/emacs" "Shop for groceries" "Sunrise/sunset" "Ideas" "Rewrite Emacs in Common Lisp" "Write a symphony" "Code" "Agenda examining" "Agenda censoring" "Auto grouping" "Auto categories" "Date" "Effort" "Misc" "let-plist" "Profiling")))
|
||||
|
||||
(org-ql-it "with a tag"
|
||||
(org-ql-expect ((tags-inherited "Emacs"))
|
||||
nil)
|
||||
(org-ql-expect ((itags "ambition"))
|
||||
'("Take over the world" "Skype with president of Antarctica" "Take over Mars" "Visit Mars" "Take over the moon" "Visit the moon" "Practice leaping tall buildings in a single bound" "Renew membership in supervillain club" "Learn universal sign language"))
|
||||
(org-ql-expect ((not (tags-i "ambition")))
|
||||
'("Test data" "Take over the universe" "Order a pizza" "Get haircut" "Internet" "Spaceship lease" "Fix flux capacitor" "Recurring" "/r/emacs" "Shop for groceries" "Sunrise/sunset" "Ideas" "Rewrite Emacs in Common Lisp" "Write a symphony" "Code" "Agenda examining" "Agenda censoring" "Auto grouping" "Auto categories" "Date" "Effort" "Misc" "let-plist" "Profiling")))
|
||||
|
||||
(org-ql-it "with 2 tags"
|
||||
(org-ql-expect ((itags "personal" "world"))
|
||||
'("Skype with president of Antarctica"))
|
||||
(org-ql-expect ((not (tags-inherited "personal" "world")))
|
||||
;; Note that this correctly includes the task "Practice leaping...", which has the LOCAL tag "personal".
|
||||
'("Test data" "Take over the universe" "Take over the world" "Take over Mars" "Visit Mars" "Take over the moon" "Visit the moon" "Practice leaping tall buildings in a single bound" "Renew membership in supervillain club" "Learn universal sign language" "Order a pizza" "Get haircut" "Internet" "Spaceship lease" "Fix flux capacitor" "Recurring" "/r/emacs" "Shop for groceries" "Sunrise/sunset" "Ideas" "Rewrite Emacs in Common Lisp" "Write a symphony" "Code" "Agenda examining" "Agenda censoring" "Auto grouping" "Auto categories" "Date" "Effort" "Misc" "let-plist" "Profiling"))))
|
||||
|
||||
(describe "(tags-local)"
|
||||
|
||||
(org-ql-it "without arguments"
|
||||
(org-ql-expect ((tags-local))
|
||||
'("Take over the universe" "Take over the world" "Skype with president of Antarctica" "Visit Mars" "Visit the moon" "Practice leaping tall buildings in a single bound" "Order a pizza" "Get haircut" "Internet" "Spaceship lease" "Fix flux capacitor" "/r/emacs" "Shop for groceries" "Rewrite Emacs in Common Lisp" "Write a symphony"))
|
||||
(org-ql-expect ((not (local-tags)))
|
||||
'("Test data" "Take over Mars" "Take over the moon" "Renew membership in supervillain club" "Learn universal sign language" "Recurring" "Sunrise/sunset" "Ideas" "Code" "Agenda examining" "Agenda censoring" "Auto grouping" "Auto categories" "Date" "Effort" "Misc" "let-plist" "Profiling")))
|
||||
|
||||
(org-ql-it "with a tag"
|
||||
(org-ql-expect ((tags-local "world"))
|
||||
'("Take over the world" "Skype with president of Antarctica"))
|
||||
(org-ql-expect ((ltags "ambition"))
|
||||
'("Take over the universe"))
|
||||
(org-ql-expect ((not (tags-l "ambition")))
|
||||
'("Test data" "Take over the world" "Skype with president of Antarctica" "Take over Mars" "Visit Mars" "Take over the moon" "Visit the moon" "Practice leaping tall buildings in a single bound" "Renew membership in supervillain club" "Learn universal sign language" "Order a pizza" "Get haircut" "Internet" "Spaceship lease" "Fix flux capacitor" "Recurring" "/r/emacs" "Shop for groceries" "Sunrise/sunset" "Ideas" "Rewrite Emacs in Common Lisp" "Write a symphony" "Code" "Agenda examining" "Agenda censoring" "Auto grouping" "Auto categories" "Date" "Effort" "Misc" "let-plist" "Profiling")))
|
||||
|
||||
(org-ql-it "with 2 tags"
|
||||
(org-ql-expect ((ltags "personal" "world"))
|
||||
'("Take over the world" "Skype with president of Antarctica" "Practice leaping tall buildings in a single bound" "Get haircut"))
|
||||
(org-ql-expect ((not (tags-local "personal" "world")))
|
||||
'("Test data" "Take over the universe" "Take over Mars" "Visit Mars" "Take over the moon" "Visit the moon" "Renew membership in supervillain club" "Learn universal sign language" "Order a pizza" "Internet" "Spaceship lease" "Fix flux capacitor" "Recurring" "/r/emacs" "Shop for groceries" "Sunrise/sunset" "Ideas" "Rewrite Emacs in Common Lisp" "Write a symphony" "Code" "Agenda examining" "Agenda censoring" "Auto grouping" "Auto categories" "Date" "Effort" "Misc" "let-plist" "Profiling"))))
|
||||
|
||||
(describe "(ts)"
|
||||
|
||||
(describe "active"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue