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