我按照Sonos 文档中关于自定义项目显示的说明为我的音乐服务实现了自定义项目显示。
当我运行 Python Self Test 套件时,出现以下错误:
Element 'PresentationMap', attribute 'type': [facet 'enumeration'] The value 'DisplayType' is not an element of set {'NowPlayingRatings', ' ListOverlays'、'InfoView'、'ArtWorkSizeMap'、'BrowseIconSizeMap'、'Search'}。
请注意,我将测试套件中的 Sonos.wsdl 文件替换为来自 Sonos 网站 ( Sonos.wsdl ) 的文件,因为该文件包含与“displayType”相关的更改。
这是我的 Presentation Map xml 文件的样子:
<?xml version="1.0" encoding="utf-8" ?>
<Presentation>
<PresentationMap type="DisplayType">
<DisplayType id="genreGrid">
<DisplayMode>GRID</DisplayMode>
</DisplayType>
<DisplayType id="genreList">
<DisplayMode>LIST</DisplayMode>
</DisplayType>
<DisplayType id="genreHero">
<DisplayMode>HERO</DisplayMode>
</DisplayType>
<DisplayType id="genreEditorial">
<DisplayMode>EDITORIAL</DisplayMode>
</DisplayType>
<DisplayType id="playlist">
<Lines>
<Line token="title"/>
<Line token="summary"/>
</Lines>
</DisplayType>
</PresentationMap>
<--! Other PresetationMap tags (NowPlayingRatings, InfoView, Search, BrowseIconSizeMap)-->
</Presentation>
另请注意,当我从 Presentation Map xml 文件中删除 DisplayType 标记时,该错误不再出现,但当然,如果没有我实现的自定义项目显示,显示将恢复正常。
我认为错误正在显示,因为测试套件中的presentationmap.xsd 不包含DisplayType。如何解决此问题以通过测试并避免此错误,同时保持我实现的自定义项目显示?