Skip to content

Commit

Permalink
Removed namespaces from parsed xml tags
Browse files Browse the repository at this point in the history
  • Loading branch information
Josafat-Mattias Burmeister committed Jul 3, 2019
1 parent 7ef847f commit cff02aa
Show file tree
Hide file tree
Showing 20 changed files with 76 additions and 61 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
parsing
checkPropertyStatus: anEventNode

| propertyStatus |

propertyStatus := anEventNode firstTagNamed: #'d:propstat'.

(propertyStatus firstTagNamed: #'d:status') contents first string = 'HTTP/1.1 200 OK'
ifFalse: [CalDavGenericException signal:
'There was an error retrieving information for an event']
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ fetchEtagOfEventFrom: anUrl
self handleResponse: response.
eventInformation := self parseEventsInformation: response content.

^ eventInformation first at: #'d:getetag'
^ eventInformation first at: #getetag
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
parsing
parseEventInformation: anEventNode

| properties propertyStatus resultProperties |
propertyStatus := anEventNode firstTagNamed: #'d:propstat'.
(propertyStatus firstTagNamed: #'d:status') contents first string = 'HTTP/1.1 200 OK'
ifFalse: [CalDavGenericException signal: 'There was an error retrieving information for an event'].
| properties resultProperties |

self checkPropertyStatus: anEventNode.

properties := (propertyStatus firstTagNamed: #'d:prop') elements.
properties := (anEventNode firstTagNamed: #'d:prop') elements.
resultProperties := Dictionary newFrom: {#urlLocalPart -> (anEventNode firstTagNamed: #'d:href') contents first string}.
properties
select: [:property | property contents notEmpty]
thenDo: [:property |
resultProperties at: property name asSymbol put: property contents first string ].

resultProperties at: (self tagWithOutNamespace: property name) asSymbol put: property contents first string ].
^ resultProperties
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
parsing
tagWithOutNamespace: aString

^ (aString subStrings: ':') last
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,12 @@
"instance" : {
"addAuthorizationInformation:" : "pre 1/20/2017 10:55",
"assumesAuthorization" : "pre 1/20/2017 10:54",
"checkPropertyStatus:" : "JB 7/3/2019 21:11",
"deleteEvent:" : "TSP 6/28/2019 22:59",
"deleteEvent:at:at:" : "pre 4/11/2017 11:51",
"fetchCalendarDataFrom:" : "TSP 7/2/2019 11:57",
"fetchCalendarQuery" : "JB 6/24/2019 14:22",
"fetchEtagOfEventFrom:" : "TSP 7/2/2019 11:57",
"fetchEtagOfEventFrom:" : "JB 7/3/2019 21:19",
"fetchEtagOfEventQuery" : "JB 6/24/2019 15:06",
"fetchEtagsOfEvents:" : "JB 6/8/2019 16:18",
"fetchEtagsOfEventsFrom:" : "TSP 7/2/2019 11:57",
Expand All @@ -34,7 +35,7 @@
"newEventUrlFor:" : "pre 4/11/2017 10:55",
"parseCalendarInformation:" : "TSP 6/7/2019 18:39",
"parseEventICalData:" : "GL 7/3/2019 15:29",
"parseEventInformation:" : "c a 6/1/2019 14:53",
"parseEventInformation:" : "JB 7/3/2019 21:18",
"parseEventsICalData:" : "TSP 6/11/2019 19:12",
"parseEventsInformation:" : "TSP 6/8/2019 18:33",
"parseEventsInformation:at:" : "pre 3/16/2017 20:05",
Expand All @@ -53,5 +54,6 @@
"sendPutTo:theRequest:withHeader:" : "ph 6/26/2019 16:03",
"sendRequest:to:" : "JB 6/26/2019 18:15",
"serializeEvent:" : "TSP 6/15/2019 18:21",
"tagWithOutNamespace:" : "JB 7/3/2019 21:05",
"webDAVClient" : "ph 6/26/2019 16:03",
"webDAVClient:" : "JB 6/24/2019 14:19" } }
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@ testFetchEtagsOfEventsForEventUrlsWithMockedServer

self assert: 'eventUrl'
equals: ((eventData at: 1) at: #urlLocalPart).
self assert: '"eTag"' equals: ((eventData at: 1) at: #'d:getetag')
self assert: '"eTag"' equals: ((eventData at: 1) at: #getetag)
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ testFetchEtagsOfEventsForEventUrlsWithRealServer
self assert: '/DAV/calendars/968cdb81-71bc-45a1-af82-4ff016ca48b6/',
'20010712T182145Z-123401@example.com.ics'
equals: ((eventData at: 1) at: #urlLocalPart).
self assert: '"54185"' equals: ((eventData at: 1) at: #'d:getetag')
self assert: '"54185"' equals: ((eventData at: 1) at: #getetag)
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ testFetchEtagsOfEventsWithMockedServer
eventData := client fetchEtagsOfEventsFrom: self eventUrlOnMockedServer.

self assert: 'eventUrl' equals: ((eventData at: 1) at: #urlLocalPart).
self assert: '"eTag"' equals: ((eventData at: 1) at: #'d:getetag')
self assert: '"eTag"' equals: ((eventData at: 1) at: #getetag)
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ testFetchEtagsOfEventsWithRealServer
self assert: '/DAV/calendars/968cdb81-71bc-45a1-af82-4ff016ca48b6/',
'20010712T182145Z-123401@example.com.ics'
equals: ((eventData at: 1) at: #urlLocalPart).
self assert: '"54185"' equals: ((eventData at: 1) at: #'d:getetag').
self assert: '"54185"' equals: ((eventData at: 1) at: #getetag).

self assert: '/DAV/calendars/968cdb81-71bc-45a1-af82-4ff016ca48b6/',
'20010712T182145Z-126701@example.com.ics'
equals: ((eventData at: 2) at: #urlLocalPart).
self assert: '"54189"' equals: ((eventData at: 2) at: #'d:getetag')
self assert: '"54189"' equals: ((eventData at: 2) at: #getetag)
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@ testFetchEventDataWithMockedServer

eventData := client fetchEventDataFrom: self eventUrlOnMockedServer.

self assert: 'Sun, 09 Jun 2019 10:14:57 GMT' equals: (eventData at: #'d:getlastmodified').
self assert: '"eTag"' equals: (eventData at: #'d:getetag').
self assert: 'text/calendar' equals: (eventData at: #'d:getcontenttype')
self assert: 'Sun, 09 Jun 2019 10:14:57 GMT' equals: (eventData at: #getlastmodified).
self assert: '"eTag"' equals: (eventData at: #getetag).
self assert: 'text/calendar' equals: (eventData at: #getcontenttype)
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,5 @@ testFetchEventDataWithRealServer

eventData := client fetchEventDataFrom: self eventUrlOnRealServer.


self assert: '"54185"' equals: (eventData at: #'d:getetag').
self assert: 'Sun, 09 Jun 2019 10:14:57 GMT' equals: (eventData at: #'d:getlastmodified').

self assert: '"54185"' equals: (eventData at: #getetag).
self assert: 'Sun, 09 Jun 2019 10:14:57 GMT' equals: (eventData at: #getlastmodified)
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@ testFetchEventsDataFromForWithMockedServer
self assert: 1 equals: eventData size.

self assert: 'eventUrl' equals: ((eventData at: 1) at: #urlLocalPart).
self assert: '"eTag"' equals: ((eventData at: 1) at: #'d:getetag').
self assert: 'Sun, 09 Jun 2019 10:14:57 GMT' equals: ((eventData at: 1) at: #'d:getlastmodified').
self assert: 'text/calendar' equals: ((eventData at: 1) at: #'d:getcontenttype').
self assert: '"eTag"' equals: ((eventData at: 1) at: #getetag).
self assert: 'Sun, 09 Jun 2019 10:14:57 GMT' equals: ((eventData at: 1) at: #getlastmodified).
self assert: 'text/calendar' equals: ((eventData at: 1) at: #getcontenttype).
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ testFetchEventsDataFromForWithRealServer
self assert: '/DAV/calendars/968cdb81-71bc-45a1-af82-4ff016ca48b6/',
'20010712T182145Z-123401@example.com.ics'
equals: ((eventData at: 1) at: #urlLocalPart).
self assert: '"54185"' equals: ((eventData at: 1) at: #'d:getetag').
self assert: 'Sun, 09 Jun 2019 10:14:57 GMT' equals: ((eventData at: 1) at: #'d:getlastmodified').
self assert: 'text/calendar' equals: ((eventData at: 1) at: #'d:getcontenttype').
self assert: '"54185"' equals: ((eventData at: 1) at: #getetag).
self assert: 'Sun, 09 Jun 2019 10:14:57 GMT'
equals: ((eventData at: 1) at: #getlastmodified).
self assert: 'text/calendar' equals: ((eventData at: 1) at: #getcontenttype).
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ testFetchEventsDataWithMockedServer
self setUpClientForMockedServer.
eventData := client fetchEventsDataFrom: self eventUrlOnMockedServer.

self assert: 'text/calendar' equals: ((eventData at: 1) at: #'d:getcontenttype').
self assert: 'text/calendar' equals: ((eventData at: 1) at: #getcontenttype).
self assert: 'Sun, 09 Jun 2019 10:14:57 GMT' equals:
((eventData at: 1) at: #'d:getlastmodified')
((eventData at: 1) at: #getlastmodified)
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@ testFetchEventsDataWithRealServer

self assert: 2 equals: eventData size.

self assert: 'text/calendar' equals: ((eventData at: 1) at: #'d:getcontenttype').
self assert: 'text/calendar' equals: ((eventData at: 1) at: #getcontenttype).
self assert: 'Sun, 09 Jun 2019 10:14:57 GMT' equals:
((eventData at: 1) at: #'d:getlastmodified').
((eventData at: 1) at: #getlastmodified).

self assert: 'text/calendar' equals: ((eventData at: 2) at: #'d:getcontenttype').
self assert: 'text/calendar' equals: ((eventData at: 2) at: #getcontenttype).
self assert: 'Sun, 09 Jun 2019 10:23:16 GMT' equals:
((eventData at: 2) at: #'d:getlastmodified')
((eventData at: 2) at: #getlastmodified)
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,13 @@ testFetchEventsICalDataFromFor
| eventData |

self setUpClientForMockedServer.
eventData := client fetchEventsDataFrom: self calendarUrlOnMockedServer for: {self eventUrlOnMockedServer}.
eventData := client fetchEventsDataFrom: self calendarUrlOnMockedServer for:
{self eventUrlOnMockedServer}.

self assert: 1 equals: eventData size.

self assert: 'eventUrl' equals: ((eventData at: 1) at: #urlLocalPart).
self assert: '"eTag"' equals: ((eventData at: 1) at: #'d:getetag').
self assert: 'Sun, 09 Jun 2019 10:14:57 GMT' equals: ((eventData at: 1) at: #'d:getlastmodified').
self assert: 'text/calendar' equals: ((eventData at: 1) at: #'d:getcontenttype').
self assert: '"eTag"' equals: ((eventData at: 1) at: #getetag).
self assert: 'Sun, 09 Jun 2019 10:14:57 GMT'
equals: ((eventData at: 1) at: #getlastmodified).
self assert: 'text/calendar' equals: ((eventData at: 1) at: #getcontenttype)
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,12 @@ testFetchEventsICalDataFromForWithMockedServer
| eventData |

self setUpClientForMockedServer.
eventData := client fetchEventsICalDataFrom: self calendarUrlOnMockedServer for: {self eventUrlOnMockedServer}.


eventData := client fetchEventsICalDataFrom: self calendarUrlOnMockedServer for:
{self eventUrlOnMockedServer}.

self assert: 1 equals: eventData size.

self assert: 'eventUrl'
equals: ((eventData at: 1) at: #urlLocalPart).
self assert: '"eTag"' equals: ((eventData at: 1) at: #'d:getetag').
self assert: '"eTag"' equals: ((eventData at: 1) at: #getetag).
self assert: '-//ownCloud calendar v1.6.2' equals: ((eventData at: 1) at: #'calendarData') productId
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@ testFetchEventsICalDataFromForWithRealServer
| eventData |

self setUpClientForRealServer.
eventData := client fetchEventsICalDataFrom: self calendarUrlOnRealServer for: {self eventUrlOnRealServer}.
eventData := client fetchEventsICalDataFrom: self calendarUrlOnRealServer for:
{self eventUrlOnRealServer}.

self assert: 1 equals: eventData size.

self assert: '/DAV/calendars/968cdb81-71bc-45a1-af82-4ff016ca48b6/20010712T182145Z-123401@example.com.ics'
equals: ((eventData at: 1) at: #urlLocalPart).
self assert: '"54185"' equals: ((eventData at: 1) at: #'d:getetag').
self assert: '-//IT Hit//Collab Lib//EN' equals: ((eventData at: 1) at: #'calendarData') productId.

self assert: '"54185"' equals: ((eventData at: 1) at: #'getetag').
self assert: '-//IT Hit//Collab Lib//EN' equals: ((eventData at: 1) at: #'calendarData') productId
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@ testParseEventsInformation
| eventCollection |

eventCollection := self client parseEventsInformation: self eventsXml.
self assert: '"eTag"' equals: (eventCollection first at: 'd:getetag').
self assert: '"eTag"' equals: (eventCollection first at: 'getetag').
self assert: 'eventUrl' equals: (eventCollection first at: 'urlLocalPart')
28 changes: 14 additions & 14 deletions repository/DAV.package/CalDavClientTest.class/methodProperties.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,29 +46,29 @@
"testFetchEtagOfEventQuery" : "JB 6/27/2019 15:21",
"testFetchEtagOfEventWithMockedServer" : "JB 6/27/2019 15:32",
"testFetchEtagOfEventWithRealServer" : "JB 6/26/2019 20:44",
"testFetchEtagsOfEventsForEventUrlsWithMockedServer" : "JB 6/27/2019 21:07",
"testFetchEtagsOfEventsForEventUrlsWithRealServer" : "JB 6/27/2019 20:58",
"testFetchEtagsOfEventsForEventUrlsWithMockedServer" : "JB 7/3/2019 21:20",
"testFetchEtagsOfEventsForEventUrlsWithRealServer" : "JB 7/3/2019 21:21",
"testFetchEtagsOfEventsQuery" : "JB 6/25/2019 20:36",
"testFetchEtagsOfEventsQueryForHrefs" : "GL 7/2/2019 11:12",
"testFetchEtagsOfEventsWithMockedServer" : "JB 6/27/2019 15:32",
"testFetchEtagsOfEventsWithRealServer" : "JB 6/27/2019 15:27",
"testFetchEtagsOfEventsWithMockedServer" : "JB 7/3/2019 21:22",
"testFetchEtagsOfEventsWithRealServer" : "JB 7/3/2019 21:22",
"testFetchEventDataQuery" : "JB 6/25/2019 20:36",
"testFetchEventDataWithMockedServer" : "GL 7/2/2019 10:29",
"testFetchEventDataWithRealServer" : "GL 7/2/2019 10:12",
"testFetchEventDataWithMockedServer" : "JB 7/3/2019 21:23",
"testFetchEventDataWithRealServer" : "JB 7/3/2019 21:23",
"testFetchEventICalDataQuery" : "JB 6/24/2019 16:10",
"testFetchEventICalDataWithMockedServer" : "JB 6/28/2019 19:31",
"testFetchEventsDataFromForWithMockedServer" : "GL 7/2/2019 11:10",
"testFetchEventsDataFromForWithRealServer" : "GL 7/2/2019 10:36",
"testFetchEventsDataFromForWithMockedServer" : "JB 7/3/2019 21:24",
"testFetchEventsDataFromForWithRealServer" : "JB 7/3/2019 21:25",
"testFetchEventsDataQuery" : "JB 6/25/2019 20:37",
"testFetchEventsDataQueryForHrefs" : "JB 6/25/2019 20:37",
"testFetchEventsDataWithMockedServer" : "JB 6/27/2019 20:43",
"testFetchEventsDataWithRealServer" : "JB 6/27/2019 20:41",
"testFetchEventsICalDataFromFor" : "GL 7/2/2019 11:13",
"testFetchEventsICalDataFromForWithMockedServer" : "GL 7/3/2019 15:31",
"testFetchEventsICalDataFromForWithRealServer" : "GL 7/3/2019 15:28",
"testFetchEventsDataWithMockedServer" : "JB 7/3/2019 21:25",
"testFetchEventsDataWithRealServer" : "JB 7/3/2019 21:26",
"testFetchEventsICalDataFromFor" : "JB 7/3/2019 21:27",
"testFetchEventsICalDataFromForWithMockedServer" : "JB 7/3/2019 21:27",
"testFetchEventsICalDataFromForWithRealServer" : "JB 7/3/2019 21:27",
"testFetchEventsICalDataQueryForHrefs" : "JB 6/25/2019 20:39",
"testParseCalendarInformation" : "JB 6/26/2019 19:54",
"testParseEventsInformation" : "JB 6/26/2019 20:40",
"testParseEventsInformation" : "JB 7/3/2019 21:17",
"testParseICalData" : "JB 6/27/2019 22:08",
"testPutEventDataQuery" : "JB 6/24/2019 16:21",
"testPutEventDataQueryWithPayload" : "JB 6/24/2019 16:32",
Expand Down

0 comments on commit cff02aa

Please sign in to comment.