@@ -606,12 +606,12 @@ public void test_build_protocol_uri_from__uri_when__uri_isEmpty() {
606606    }
607607
608608    @ Test 
609-     @ DisplayName ("Test Create a  uProtocol URI from an   URI object with an empty USE" )
609+     @ DisplayName ("Test Create an invalid  uProtocol URI from an URI object with an empty USE" )
610610    public  void  test_build_protocol_uri_from__uri_when__uri_has_empty_use () {
611611        UEntity  use  = UEntity .newBuilder ().build ();
612-         UUri  uuri  = UUri .newBuilder ().setAuthority ( UAuthority . newBuilder (). build ()). setEntity ( use ). setResource (UResource .newBuilder ().setName ("door" ).build ()).build ();
612+         UUri  uuri  = UUri .newBuilder ().setResource (UResource .newBuilder ().setName ("door" ).build ()).build ();
613613        String  uProtocolUri  = LongUriSerializer .instance ().serialize (uuri );
614-         assertEquals ("///// door" , uProtocolUri );
614+         assertEquals ("///door" , uProtocolUri );
615615    }
616616
617617    @ Test 
@@ -853,6 +853,37 @@ public void test_parse_remote_protocol_uri_with_custom_scheme() {
853853        assertEquals (uri2 , LongUriSerializer .instance ().serialize (uuri ));
854854    }
855855
856+     @ Test 
857+     @ DisplayName ("Test Create a URI that has an empty UResource instance but the rest of the UUri is present" )
858+     public  void  test_build_protocol_uri_from__uri_when__uri_has_remote_authority_service_and_version_with_resource_with_empty_instance () {
859+         final  UAuthority  uAuthority  = UAuthority .newBuilder ().setName ("vcu.my_car_vin" ).build ();
860+         final  UEntity  use  = UEntity .newBuilder ().setName ("body.access" ).setVersionMajor (1 ).build ();
861+         final  UResource  uResource  = UResource .newBuilder ().setName ("door" ).setInstance ("" ).setMessage ("Door" ).build ();
862+         final  UUri  uri  = UUri .newBuilder ().setAuthority (uAuthority ).setEntity (use ).setResource (uResource ).build ();
863+         String  uProtocolUri  = LongUriSerializer .instance ().serialize (uri );
864+         assertEquals ("//vcu.my_car_vin/body.access/1/door#Door" , uProtocolUri );
865+     }
856866
867+     @ Test 
868+     @ DisplayName ("Test Create a URI that has an empty UResource message but the rest of the UUri is present" )
869+     public  void  test_build_protocol_uri_from__uri_when__uri_has_remote_authority_service_and_version_with_resource_with_empty_message () {
870+         final  UAuthority  uAuthority  = UAuthority .newBuilder ().setName ("vcu.my_car_vin" ).build ();
871+         final  UEntity  use  = UEntity .newBuilder ().setName ("body.access" ).setVersionMajor (1 ).build ();
872+         final  UResource  uResource  = UResource .newBuilder ().setName ("door" ).setInstance ("front_left" ).setMessage ("" ).build ();
873+         final  UUri  uri  = UUri .newBuilder ().setAuthority (uAuthority ).setEntity (use ).setResource (uResource ).build ();
874+         String  uProtocolUri  = LongUriSerializer .instance ().serialize (uri );
875+         assertEquals ("//vcu.my_car_vin/body.access/1/door.front_left" , uProtocolUri );
876+     }
877+ 
878+     @ Test 
879+     @ DisplayName ("Test Create a URI that has an empty UAuthority but the rest of the UUri is present" )
880+     public  void  test_build_protocol_uri_from__uri_when__uri_has_empty_authority_service_and_version_with_resource () {
881+         final  UAuthority  uAuthority  = UAuthority .newBuilder ().setName ("" ).build ();
882+         final  UEntity  use  = UEntity .newBuilder ().setName ("body.access" ).setVersionMajor (1 ).build ();
883+         final  UResource  uResource  = UResource .newBuilder ().setName ("door" ).setInstance ("front_left" ).setMessage ("Door" ).build ();
884+         final  UUri  uri  = UUri .newBuilder ().setAuthority (uAuthority ).setEntity (use ).setResource (uResource ).build ();
885+         String  uProtocolUri  = LongUriSerializer .instance ().serialize (uri );
886+         assertEquals ("/body.access/1/door.front_left#Door" , uProtocolUri );
887+     }
857888
858889}
0 commit comments