3
3
4
4
import lombok .extern .slf4j .Slf4j ;
5
5
import org .junit .Assert ;
6
- import org .junit .Before ;
7
- import org .junit .Ignore ;
8
6
import org .junit .Test ;
9
7
import org .junit .runner .RunWith ;
10
8
import org .lowcoder .api .application .ApplicationController .CreateApplicationRequest ;
11
9
import org .lowcoder .api .application .view .ApplicationPermissionView ;
12
10
import org .lowcoder .api .application .view .ApplicationView ;
13
11
import org .lowcoder .api .common .mockuser .WithMockUser ;
14
12
import org .lowcoder .api .datasource .DatasourceApiService ;
15
- import org .lowcoder .api .datasource .DatasourceApiServiceTest ;
16
13
import org .lowcoder .api .home .FolderApiService ;
17
- import org .lowcoder .api .permission .view .CommonPermissionView ;
18
14
import org .lowcoder .api .permission .view .PermissionItemView ;
19
15
import org .lowcoder .domain .application .model .Application ;
20
16
import org .lowcoder .domain .application .model .ApplicationStatus ;
21
17
import org .lowcoder .domain .application .model .ApplicationType ;
22
18
import org .lowcoder .domain .application .service .ApplicationService ;
23
- import org .lowcoder .domain .datasource .model .Datasource ;
24
19
import org .lowcoder .domain .permission .model .ResourceHolder ;
25
20
import org .lowcoder .domain .permission .model .ResourceRole ;
26
21
import org .lowcoder .sdk .exception .BizError ;
27
22
import org .lowcoder .sdk .exception .BizException ;
28
- import org .pf4j .PluginManager ;
29
23
import org .springframework .beans .factory .annotation .Autowired ;
30
24
import org .springframework .boot .test .context .SpringBootTest ;
31
25
import org .springframework .test .context .junit4 .SpringRunner ;
35
29
import java .util .List ;
36
30
import java .util .Map ;
37
31
import java .util .Set ;
38
- @ SuppressWarnings ({"OptionalGetWithoutIsPresent" })
39
32
@ SpringBootTest
40
33
@ RunWith (SpringRunner .class )
41
34
@ Slf4j (topic = "ApplicationApiServiceTest" )
@@ -50,19 +43,6 @@ public class ApplicationApiServiceTest {
50
43
@ Autowired
51
44
private DatasourceApiService datasourceApiService ;
52
45
53
- @ Autowired
54
- private PluginManager pluginManager ;
55
-
56
- @ Before
57
- public void init () {
58
- try {
59
- pluginManager .loadPlugins ();
60
- pluginManager .startPlugins ();
61
- } catch (Exception e ) {
62
- log .error ("Failed to load/start plugins. Exception: " + e );
63
- }
64
- }
65
-
66
46
@ Test
67
47
@ WithMockUser
68
48
public void testAutoInheritFoldersPermissionsOnAppCreate () {
@@ -284,78 +264,4 @@ public void testPermissions() {
284
264
.verifyComplete ();
285
265
}
286
266
287
- @ Ignore
288
- @ SuppressWarnings ("ConstantConditions" )
289
- @ Test
290
- @ WithMockUser (id = "user02" )
291
- public void testCreateApplicationSuccess () {
292
-
293
- Mono <Datasource > datasourceMono = datasourceApiService .create (DatasourceApiServiceTest .buildMysqlDatasource ("mysql07" )).cache ();
294
- Mono <CommonPermissionView > commonPermissionViewMono =
295
- datasourceMono .flatMap (datasource -> datasourceApiService .getPermissions (datasource .getId ()));
296
- Mono <Boolean > deleteMono = commonPermissionViewMono .flatMap (commonPermissionView -> {
297
- String permissionId = commonPermissionView .getUserPermissions ().stream ()
298
- .filter (permissionItemView -> permissionItemView .getId ().equals ("user02" ))
299
- .findFirst ()
300
- .map (PermissionItemView ::getPermissionId )
301
- .get ();
302
- return datasourceApiService .updatePermission (permissionId , ResourceRole .VIEWER );
303
- });
304
- //
305
- Mono <ApplicationView > applicationViewMono = datasourceMono .map (datasource -> new CreateApplicationRequest (
306
- "org01" ,
307
- "app05" ,
308
- ApplicationType .APPLICATION .getValue (),
309
- Map .of ("comp" , "table" ),
310
- Map .of ("comp" , "list" , "queries" , Set .of (Map .of ("datasourceId" , datasource .getId ()))),
311
- null ))
312
- .delayUntil (__ -> deleteMono )
313
- .flatMap (createApplicationRequest -> applicationApiService .create (createApplicationRequest ));
314
-
315
- StepVerifier .create (applicationViewMono )
316
- .assertNext (applicationView -> Assert .assertNotNull (applicationView .getApplicationInfoView ().getApplicationId ()))
317
- .verifyComplete ();
318
- }
319
-
320
- @ Ignore
321
- @ SuppressWarnings ("ConstantConditions" )
322
- @ Test
323
- @ WithMockUser (id = "user02" )
324
- public void testUpdateApplicationFailedDueToLackOfDatasourcePermissions () {
325
-
326
- Mono <Datasource > datasourceMono = datasourceApiService .create (DatasourceApiServiceTest .buildMysqlDatasource ("mysql08" )).cache ();
327
- Mono <CommonPermissionView > commonPermissionViewMono =
328
- datasourceMono .flatMap (datasource -> datasourceApiService .getPermissions (datasource .getId ()));
329
- Mono <Boolean > deleteMono = commonPermissionViewMono .flatMap (commonPermissionView -> {
330
- String permissionId = commonPermissionView .getUserPermissions ().stream ()
331
- .filter (permissionItemView -> permissionItemView .getId ().equals ("user02" ))
332
- .findFirst ()
333
- .map (PermissionItemView ::getPermissionId )
334
- .get ();
335
- return datasourceApiService .deletePermission (permissionId );
336
- });
337
- //
338
- Mono <ApplicationView > applicationViewMono = datasourceMono .map (datasource -> new CreateApplicationRequest (
339
- "org01" ,
340
- "app03" ,
341
- ApplicationType .APPLICATION .getValue (),
342
- Map .of ("comp" , "table" ),
343
- Map .of ("comp" , "list" , "queries" , Set .of (Map .of ("datasourceId" , datasource .getId ()))),
344
- null ))
345
- .delayUntil (__ -> deleteMono )
346
- .flatMap (createApplicationRequest -> applicationApiService .create (createApplicationRequest ))
347
- .flatMap (applicationView -> {
348
- Application application = Application .builder ()
349
- .editingApplicationDSL (applicationView .getApplicationDSL ())
350
- .name ("app03" )
351
- .build ();
352
- return applicationApiService .update (applicationView .getApplicationInfoView ().getApplicationId (), application );
353
- });
354
-
355
- StepVerifier .create (applicationViewMono )
356
- .expectErrorMatches (throwable -> throwable instanceof BizException bizException
357
- && bizException .getError () == BizError .NOT_AUTHORIZED
358
- && bizException .getMessageKey ().equals ("APPLICATION_EDIT_ERROR_LACK_OF_DATASOURCE_PERMISSIONS" ))
359
- .verify ();
360
- }
361
267
}
0 commit comments