@@ -118,6 +118,48 @@ def test_simple_build_minimal(self):
118118 if feed_item .title in ("Test page with meta" ,):
119119 self .assertTrue ("author" in feed_item )
120120
121+ def test_simple_build_complete (self ):
122+ with tempfile .TemporaryDirectory () as tmpdirname :
123+ cli_result = self .build_docs_setup (
124+ testproject_path = "docs" ,
125+ mkdocs_yml_filepath = Path ("tests/fixtures/mkdocs_complete.yml" ),
126+ output_path = tmpdirname ,
127+ strict = True ,
128+ )
129+
130+ if cli_result .exception is not None :
131+ e = cli_result .exception
132+ logger .debug (format_exception (type (e ), e , e .__traceback__ ))
133+
134+ self .assertEqual (cli_result .exit_code , 0 )
135+ self .assertIsNone (cli_result .exception )
136+
137+ # created items
138+ feed_parsed = feedparser .parse (Path (tmpdirname ) / "feed_rss_created.xml" )
139+ for feed_item in feed_parsed .entries :
140+
141+ # mandatory properties
142+ self .assertTrue ("description" in feed_item )
143+ self .assertTrue ("guid" in feed_item )
144+ self .assertTrue ("link" in feed_item )
145+ self .assertTrue ("published" in feed_item )
146+ self .assertTrue ("source" in feed_item )
147+ self .assertTrue ("title" in feed_item )
148+
149+ # optional - following should not be present in the feed by default
150+ if (
151+ "without_meta" in feed_item .title
152+ or feed_item .title == "Test home page"
153+ ):
154+ self .assertTrue ("category" not in feed_item )
155+ self .assertTrue ("comments" in feed_item )
156+ elif "with_meta" in feed_item .title :
157+ self .assertTrue ("author" in feed_item )
158+ self .assertTrue ("category" in feed_item )
159+ self .assertTrue ("enclosure" in feed_item )
160+ else :
161+ pass
162+
121163 def test_simple_build_disabled (self ):
122164 with tempfile .TemporaryDirectory () as tmpdirname :
123165 cli_result = self .build_docs_setup (
0 commit comments