Skip to content

Commit

Permalink
Merge pull request #501 from collective/fix-500
Browse files Browse the repository at this point in the history
Fix 500
  • Loading branch information
niccokunzmann committed Dec 28, 2022
2 parents 62a0edf + d8b5e34 commit cf9c6c8
Show file tree
Hide file tree
Showing 5 changed files with 21 additions and 3 deletions.
5 changes: 4 additions & 1 deletion CHANGES.rst
Expand Up @@ -18,7 +18,10 @@ New features:

Bug fixes:

- ...
- vBoolean can now be used as an parameter
Ref: #501
Fixes: #500
[jacadzaca]


5.0.3 (2022-11-23)
Expand Down
5 changes: 4 additions & 1 deletion src/icalendar/parser.py
Expand Up @@ -102,7 +102,10 @@ def param_value(value):
"""
if isinstance(value, SEQUENCE_TYPES):
return q_join(value)
return dquote(value)
elif isinstance(value, str):
return dquote(value)
else:
return dquote(value.to_ical().decode(DEFAULT_ENCODING))


# Could be improved
Expand Down
3 changes: 3 additions & 0 deletions src/icalendar/tests/events/event_with_rsvp.ics
@@ -0,0 +1,3 @@
BEGIN:VEVENT
ATTENDEE;RSVP=TRUE:mailto:someone@example.com
END:VEVENT
9 changes: 9 additions & 0 deletions src/icalendar/tests/test_issue_500_vboolean_for_parameter.py
@@ -0,0 +1,9 @@
from icalendar import Event, vBoolean, vCalAddress

def test_vBoolean_can_be_used_as_parameter_issue_500(events):
'''https://github.com/collective/icalendar/issues/500'''
attendee = vCalAddress(f'mailto:someone@example.com')
attendee.params['rsvp'] = vBoolean(True)
event = Event()
event.add('attendee', attendee)
assert event.to_ical() == events.event_with_rsvp.raw_ics
2 changes: 1 addition & 1 deletion tox.ini
Expand Up @@ -32,7 +32,7 @@ commands_pre =
# Install Plone and explicitly the single package that uses icalendar, plus the test runner.
pip install Plone plone.app.event[test] zope.testrunner -c https://dist.plone.org/release/6.0-dev/constraints.txt
# Install the dev version of the package, mostly so we can safely point to the path with the tests.
pip install -e "git+https://github.com/plone/plone.app.event.git#egg=plone.app.event"
pip install -e "git+https://github.com/plone/plone.app.event.git\#egg=plone.app.event"
# icalendar is pinned in the constraints, but we want the current dev version.
pip install -e {toxinidir}
commands =
Expand Down

0 comments on commit cf9c6c8

Please sign in to comment.