@@ -42,4 +42,31 @@ public void test() {
4242 Assertions .assertTrue (output .contains ("constructor(baseURL: string, axiosInstance: Axios.AxiosInstance = axios.create())" ), errorMessage );
4343 }
4444
45+ @ Test
46+ public void mapPackagesToNamespaces () {
47+ final Settings settings = TestUtils .settings ();
48+ settings .outputFileType = TypeScriptFileType .implementationFile ;
49+ settings .outputKind = TypeScriptOutputKind .module ;
50+ settings .generateJaxrsApplicationClient = true ;
51+ settings .restNamespacing = RestNamespacing .perResource ;
52+ settings .mapPackagesToNamespaces = true ;
53+ settings .extensions .add (new AxiosClientExtension ());
54+ final String output = new TypeScriptGenerator (settings ).generateTypeScript (Input .from (JaxrsApplicationTest .OrganizationApplication .class ));
55+ final String errorMessage = "Unexpected output: " + output ;
56+
57+ Assertions .assertTrue (output .contains ("interface Organization" ), errorMessage );
58+ Assertions .assertTrue (output .contains ("interface Address" ), errorMessage );
59+ Assertions .assertTrue (output .contains ("interface Person" ), errorMessage );
60+ Assertions .assertTrue (output .contains ("interface HttpClient" ), errorMessage );
61+
62+ Assertions .assertTrue (output .contains ("class OrganizationsResourceClient<O>" ), errorMessage );
63+ Assertions .assertTrue (output .contains ("class PersonResourceClient<O>" ), errorMessage );
64+ Assertions .assertTrue (output .contains ("type RestResponse<R> = Promise<Axios.GenericAxiosResponse<R>>" ), errorMessage );
65+
66+ Assertions .assertTrue (output .contains ("class AxiosHttpClient implements HttpClient<Axios.AxiosRequestConfig>" ), errorMessage );
67+ Assertions .assertTrue (output .contains ("request<R>(requestConfig: { method: string; url: string; queryParams?: any; data?: any; copyFn?: (data: R) => R; options?: Axios.AxiosRequestConfig; }): RestResponse<R>" ), errorMessage );
68+ Assertions .assertTrue (output .contains ("export class AxiosOrganizationsResourceClient extends cz.habarta.typescript.generator.JaxrsApplicationTest.OrganizationsResourceClient<Axios.AxiosRequestConfig>" ), errorMessage );
69+ Assertions .assertTrue (output .contains ("class AxiosPersonResourceClient extends cz.habarta.typescript.generator.JaxrsApplicationTest.PersonResourceClient<Axios.AxiosRequestConfig>" ), errorMessage );
70+ Assertions .assertTrue (output .contains ("constructor(baseURL: string, axiosInstance: Axios.AxiosInstance = axios.create())" ), errorMessage );
71+ }
4572}
0 commit comments