@@ -85,4 +85,77 @@ TEST_SUBMODULE(docstring_options, m) {
8585 &DocstringTestFoo::setValue,
8686 " This is a property docstring" );
8787 }
88+
89+ {
90+ enum class DocstringTestEnum1
91+ {
92+ Member1,
93+ Member2
94+ };
95+
96+ py::enum_<DocstringTestEnum1>(m, " DocstringTestEnum1" , " Enum docstring" )
97+ .value (" Member1" , DocstringTestEnum1::Member1)
98+ .value (" Member2" , DocstringTestEnum1::Member2);
99+ }
100+
101+ {
102+ py::options options;
103+ options.enable_enum_members_docstring ();
104+
105+ enum class DocstringTestEnum2
106+ {
107+ Member1,
108+ Member2
109+ };
110+
111+ py::enum_<DocstringTestEnum2>(m, " DocstringTestEnum2" , " Enum docstring" )
112+ .value (" Member1" , DocstringTestEnum2::Member1)
113+ .value (" Member2" , DocstringTestEnum2::Member2);
114+ }
115+
116+ {
117+ py::options options;
118+ options.disable_enum_members_docstring ();
119+
120+ enum class DocstringTestEnum3
121+ {
122+ Member1,
123+ Member2
124+ };
125+
126+ py::enum_<DocstringTestEnum3>(m, " DocstringTestEnum3" , " Enum docstring" )
127+ .value (" Member1" , DocstringTestEnum3::Member1)
128+ .value (" Member2" , DocstringTestEnum3::Member2);
129+ }
130+
131+ {
132+ py::options options;
133+ options.disable_user_defined_docstrings ();
134+
135+ enum class DocstringTestEnum4
136+ {
137+ Member1,
138+ Member2
139+ };
140+
141+ py::enum_<DocstringTestEnum4>(m, " DocstringTestEnum4" , " Enum docstring" )
142+ .value (" Member1" , DocstringTestEnum4::Member1)
143+ .value (" Member2" , DocstringTestEnum4::Member2);
144+ }
145+
146+ {
147+ py::options options;
148+ options.disable_user_defined_docstrings ();
149+ options.disable_enum_members_docstring ();
150+
151+ enum class DocstringTestEnum5
152+ {
153+ Member1,
154+ Member2
155+ };
156+
157+ py::enum_<DocstringTestEnum5>(m, " DocstringTestEnum5" , " Enum docstring" )
158+ .value (" Member1" , DocstringTestEnum5::Member1)
159+ .value (" Member2" , DocstringTestEnum5::Member2);
160+ }
88161}
0 commit comments