File tree Expand file tree Collapse file tree
app/services/sync_service Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -147,7 +147,11 @@ def all_day(event)
147147 end
148148
149149 def event_title ( event )
150- event_xml_node ( event ) &.at_xpath ( "//Title" ) &.text &.tr ( "\u00A0 " , " " ) || event . fetch ( "Title" , nil )
150+ if ( node = event_xml_node ( event ) &.at_xpath ( "//Title" ) )
151+ node . text . tr ( "\u00A0 " , " " )
152+ elsif ( title = event . fetch ( "Title" , nil ) )
153+ CGI . unescapeHTML ( title ) . tr ( "\u00A0 " , " " )
154+ end
151155 end
152156
153157 def contact ( event )
Original file line number Diff line number Diff line change @@ -39,7 +39,7 @@ def self.cache
3939 expect ( subject [ "title" ] ) . to match ( @events . first [ "Title" ] )
4040 end
4141
42- it "decodes html entities from the xml title" do
42+ it "decodes html entities from the xml title node " do
4343 event = @events . first . merge (
4444 "Title" => "Refugees & Resettlement" ,
4545 "xml" => "<Event><Title>Refugees & Resettlement</Title></Event>"
@@ -48,6 +48,15 @@ def self.cache
4848 expect ( @sync_events . record_hash ( event ) [ "title" ] ) . to eq ( "Refugees & Resettlement" )
4949 end
5050
51+ it "decodes html entities from the fallback title value when xml title lookup fails" do
52+ event = @events . first . merge (
53+ "Title" => "Refugees & Resettlement" ,
54+ "xml" => "<Event><Description>Fallback title path</Description></Event>"
55+ )
56+
57+ expect ( @sync_events . record_hash ( event ) [ "title" ] ) . to eq ( "Refugees & Resettlement" )
58+ end
59+
5160 it "maps Description to description field" do
5261 expect ( subject [ "description" ] ) . to match ( @events . first [ "Description" ] )
5362 end
You can’t perform that action at this time.
0 commit comments