Commit graph

4660 commits

Author SHA1 Message Date
Paul Beckingham
fc3688ea70 Variant
- Updated operator> to handle trivial values.
2014-06-16 18:40:34 -04:00
Paul Beckingham
78a748e865 Variant
- Updated operator<= to handle trivial values.
2014-06-16 18:40:00 -04:00
Paul Beckingham
7484b5a22f Variant
- Updated operator< to handle trivial values.
2014-06-16 18:38:43 -04:00
Paul Beckingham
8e16a3e0e4 Variant
- Implemented ::trivial to faclitate operator shortcuts.
2014-06-16 17:25:48 -04:00
Paul Beckingham
841c78768c Unit Tests
- Removed invliad test.
2014-06-15 23:54:14 -04:00
Paul Beckingham
392c9971f5 Unit Tests
- Corrected expectation that assumeѕ all duration fields are in ISO format.
2014-06-15 23:42:16 -04:00
Paul Beckingham
ef3deaad4a Task
- When a duration fails to parse during ::modify, it must raise an exception,
  and not silently skip the attribute.
2014-06-15 23:34:43 -04:00
Paul Beckingham
64c9cbe943 Task
- Å duration field is stored in raw form, but must still be parseable.
2014-06-15 23:21:54 -04:00
Paul Beckingham
d2a5a89bcf Unit Tests
- Now conform to template.
2014-06-15 23:21:30 -04:00
Paul Beckingham
8c34d46687 Unit Tests
- Corrected unit tests that assume 'sod' and 'eod' are the same day.
2014-06-15 23:10:47 -04:00
Paul Beckingham
464d0ec690 Unit Tests
- Corrected test to expect an ISO date instead of an epoch.
2014-06-15 23:09:05 -04:00
Paul Beckingham
ffb201a068 Parser
- Pruned the unnecessary filter sub branches off the parse tree for branches
  tagged with MODIFICATION.
2014-06-15 23:04:29 -04:00
Paul Beckingham
b9fd2560eb Parser
- Removed warning about compounded plain args, which are now handled early in
  Parser::initialize, where new args are immediately lexed.
2014-06-15 22:59:14 -04:00
Paul Beckingham
5901a245f1 Unit Tests
- Removed obsolete test ('1ST' --> not a date).
2014-06-15 22:47:30 -04:00
Paul Beckingham
d1f5020fab Task
- Improved implementation of is_duemonth and is_dueweek.
2014-06-15 22:37:56 -04:00
Paul Beckingham
3116ddcd6d Dates
- Fixed problem with eoy, where is was YYYY-12-31T00:00:00, which is
  24 hours earlier than actual eoy. Other 'eo*' names were also wrong.
  So much for unit tests.
2014-06-15 22:34:16 -04:00
Paul Beckingham
cfb7fdc987 Date
- Uses mk_wcwidth to calculate the printed width of a character in a date
  format that is not recognized, instead of simply assuming '1'.
2014-06-15 22:31:13 -04:00
Paul Beckingham
ea2405330f Date
- Removed ::isRelativeDate and instead used namedDates. Which is better.
2014-06-15 22:28:46 -04:00
Paul Beckingham
67d85b484b Unit Tests
- Removed diagnostic output that is no longer needed.
2014-06-15 22:22:02 -04:00
Paul Beckingham
877c6fae9e Dates
- 'eom' and 'eocm' are not on YYYY-MM-{28,30,31}T00:00:00, they are
  one day later.
2014-06-15 19:14:24 -04:00
Paul Beckingham
20de57e87c Dates
- 'eoy' is not YYYY-12-31T00:00:00, it's one day later.
2014-06-15 19:13:48 -04:00
Paul Beckingham
d2685a8212 Task
- If the a numeric attribute is modified with a result that is not readily
  convertible to a numeric value, then this is an error.
2014-06-15 10:15:23 -04:00
Paul Beckingham
222c20f161 Unit Tests
- Tests now conform to template.
2014-06-15 10:14:14 -04:00
Paul Beckingham
9d727a73d2 ColUrgency
- Now uses the standard type 'numeric', instead of 'number'.
2014-06-15 09:49:26 -04:00
Paul Beckingham
6b6e9a6b15 ColIMask
- Now uses the standard type 'numeric', instead of 'number'.
2014-06-15 09:48:54 -04:00
Paul Beckingham
d557c20782 ColID
- Now uses the standard type 'numeric', instead of 'number'.
2014-06-15 09:48:05 -04:00
Paul Beckingham
65890bc8d4 Task
- All attribute types (number, string, date, duration) are ѕpecifically
  handled, with no default cases.
2014-06-15 09:36:35 -04:00
Paul Beckingham
518f56b499 Task
- Durations are now stored as-is, with no evaluation.
2014-06-15 09:34:21 -04:00
Paul Beckingham
b7d668fb7d Eval
- Raises an exception if an expression evaluation yields an unexpected
  stack size at the end. This indicates that an expression like 'one two'
  was evaluated. Note that string field updates require evaluation, but
  this case occurs frequently.
2014-06-15 09:32:17 -04:00
Paul Beckingham
5b2505f6da Unit Tests
- Tests now conform to template.
2014-06-15 09:30:46 -04:00
Paul Beckingham
784b14c69a Unit Tests
- Corrected test to expect durations in ISO8601 format.
2014-06-15 08:38:51 -04:00
Paul Beckingham
b4510e9f48 Unit Tests
- Corrected unit test that relied on old behavior, namely 'due.before:1d',
  which is like specifying '1403007839 < 86400'. Taskwarrior always assumed
  that whenever a duration was specified, such as '1d', it really meant
  'now + 1d'. With full algebraic expression support, this can no longer be
  the case and now we need 'due.before:now+1d'.
2014-06-15 08:33:52 -04:00
Paul Beckingham
dc53d9c60e Unit Tests
- Tests now conform to template.
2014-06-14 16:13:39 -04:00
Paul Beckingham
a2936c045c Lexer
- Now recognized the exact inequality operator !==.
2014-06-14 16:03:07 -04:00
Paul Beckingham
9318dced5a Eval
- Eval maps '!==' to Variant::operator!=, '!=' to Variant::operator_nopartial,
  '==' to Variant::operator== and '=' to Variant::operator_partial.
2014-06-14 15:59:31 -04:00
Paul Beckingham
855de25e0d Unit Tests
- Corrected test that assumed completed.data was created, which is not
  always the case now.
2014-06-14 15:38:51 -04:00
Paul Beckingham
dbe38f2747 Parser
- ::findOperator removes unnecessarily lexed sub-branches.
2014-06-14 15:24:34 -04:00
Paul Beckingham
da1dbb5666 Parser
- ::findUUIDList removes unnecessarily lexed sub-branches.
2014-06-14 15:24:23 -04:00
Paul Beckingham
5199554811 Parser
- ::findIdSequence removes unnecessarily lexed sub-branches.
2014-06-14 15:24:11 -04:00
Paul Beckingham
ebaca3607d Parser
- ::findAttributeModifier removes unnecessarily lexed sub-branches.
2014-06-14 15:23:49 -04:00
Paul Beckingham
ad28d34b7e Parser
- ::findAttribute removes unnecessarily lexed sub-branches.
2014-06-14 15:23:38 -04:00
Paul Beckingham
64df32baff Parser
- ::findTag removes unnecessarily lexed sub-branches.
2014-06-14 15:22:51 -04:00
Paul Beckingham
18662b0307 Parser
- ::findSubstitution removes unnecessarily lexed sub-branches.
2014-06-14 15:22:23 -04:00
Paul Beckingham
587113e5cf Parser
- ::findPattern removes unnecessarily lexed sub-branches.
2014-06-14 15:22:06 -04:00
Paul Beckingham
91263ca28a Parser
- ::findOverrides removes unnecessarily lexed sub-branches.
2014-06-14 15:21:49 -04:00
Paul Beckingham
8ed1206f41 Parser
- ::findCommand removes unnecessarily lexed sub-branches.
2014-06-14 15:20:56 -04:00
Paul Beckingham
8f5e386ab0 Parser
- ::findTerminator removes unnecessarily lexed sub-branches.
2014-06-14 15:20:25 -04:00
Paul Beckingham
3f6ad23578 Parser
- ::findBinary removes unnecessarily lexed sub-branches.
2014-06-14 15:19:31 -04:00
Paul Beckingham
0500649992 Parser
- ::initialize now lexes all args up front.
2014-06-14 15:18:31 -04:00
Paul Beckingham
1b8671b58e Tree
- Implemented ::removeAllBranches.
2014-06-14 14:19:49 -04:00