File tree Expand file tree Collapse file tree
rust/crates/sift_cli/src/cmd/import/hdf5 Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -304,6 +304,37 @@ fn enum_types_for_extracts_members() {
304304 assert_eq ! ( mapped[ 1 ] . key, 1 ) ;
305305}
306306
307+ #[ test]
308+ fn enum_types_for_unsigned_enum ( ) {
309+ let ty = TypeDescriptor :: Enum ( EnumType {
310+ size : IntSize :: U4 ,
311+ signed : false ,
312+ members : vec ! [
313+ EnumMember {
314+ name: "IDLE" . into( ) ,
315+ value: 0 ,
316+ } ,
317+ EnumMember {
318+ name: "RUNNING" . into( ) ,
319+ value: 1 ,
320+ } ,
321+ EnumMember {
322+ name: "ERROR" . into( ) ,
323+ value: 99 ,
324+ } ,
325+ ] ,
326+ } ) ;
327+ let mapped = enum_types_for ( & ty) . unwrap ( ) ;
328+ assert_eq ! ( mapped. len( ) , 3 ) ;
329+ assert ! ( !mapped[ 0 ] . is_signed) ;
330+ assert ! ( !mapped[ 1 ] . is_signed) ;
331+ assert ! ( !mapped[ 2 ] . is_signed) ;
332+ assert_eq ! ( mapped[ 0 ] . name, "IDLE" ) ;
333+ assert_eq ! ( mapped[ 0 ] . key, 0 ) ;
334+ assert_eq ! ( mapped[ 2 ] . name, "ERROR" ) ;
335+ assert_eq ! ( mapped[ 2 ] . key, 99 ) ;
336+ }
337+
307338#[ test]
308339fn enum_types_for_returns_empty_for_non_enum ( ) {
309340 assert ! ( enum_types_for( & TypeDescriptor :: Boolean ) . unwrap( ) . is_empty( ) ) ;
You can’t perform that action at this time.
0 commit comments