@@ -935,25 +935,38 @@ end entity y;
935935 }
936936
937937 #[ test]
938- fn parse_package_declaration_in_declarative_part ( ) {
938+ fn parse_package_declaration_and_body_in_declarative_part ( ) {
939939 let code = Code :: new (
940940 "\
941+ entity ent is
942+ end entity;
943+
941944architecture arch of ent is
942945 package my_pkg is
943946 -- ...
944- end package;
947+ end my_pkg;
948+ package body my_pkg is
949+ -- ...
950+ end package body;
945951begin
946952end arch;
947953 " ,
948954 ) ;
949955 let file = code. design_file ( ) ;
950- let ( tokens, _) = & file. design_units [ 0 ] ;
956+ let ( tokens, _) = & file. design_units [ 1 ] ;
951957 assert_eq ! ( tokens[ 0 ] . kind, Architecture ) ;
952- assert_eq ! ( tokens[ 1 ] . kind, Identifier ) ;
953958 assert_eq ! ( tokens[ 5 ] . kind, Package ) ;
954959 assert_eq ! ( tokens[ 6 ] . kind, Identifier ) ;
955960 assert_eq ! ( tokens[ 7 ] . kind, Is ) ;
956961 assert_eq ! ( tokens[ 8 ] . kind, End ) ;
957- assert_eq ! ( tokens[ 9 ] . kind, Package ) ;
962+ assert_eq ! ( tokens[ 9 ] . kind, Identifier ) ;
963+ assert_eq ! ( tokens[ 10 ] . kind, SemiColon ) ;
964+ assert_eq ! ( tokens[ 11 ] . kind, Package ) ;
965+ assert_eq ! ( tokens[ 12 ] . kind, Body ) ;
966+ assert_eq ! ( tokens[ 13 ] . kind, Identifier ) ;
967+ assert_eq ! ( tokens[ 14 ] . kind, Is ) ;
968+ assert_eq ! ( tokens[ 15 ] . kind, End ) ;
969+ assert_eq ! ( tokens[ 16 ] . kind, Package ) ;
970+ assert_eq ! ( tokens[ 17 ] . kind, Body ) ;
958971 }
959972}
0 commit comments