11local log = require (' java-core.utils.log' )
22local data_adapters = require (' java-core.adapters' )
33
4- local TestReport = require (' java-core.dap.test-report' )
5- local JavaDapRunner = require (' java-core.dap.runner' )
64local JavaDebug = require (' java-core.ls.clients.java-debug-client' )
75local JavaTest = require (' java-core.ls.clients.java-test-client' )
86
9- --- @class JavaCoreTestApi
7+ --- @class java_core.TestApi
108--- @field private client java_core.JdtlsClient
119--- @field private debug_client JavaCoreDebugClient
1210--- @field private test_client java_core.TestClient
13- --- @field private runner JavaCoreDapRunner
11+ --- @field private runner java_core.DapRunner
1412local M = {}
1513
1614--- Returns a new test helper client
17- --- @param args { client : LspClient }
18- --- @return JavaCoreTestApi
15+ --- @param args { client : LspClient , runner : java_core.DapRunner }
16+ --- @return java_core.TestApi
1917function M :new (args )
2018 local o = {
2119 client = args .client ,
@@ -29,9 +27,7 @@ function M:new(args)
2927 client = args .client ,
3028 })
3129
32- o .runner = JavaDapRunner :new ({
33- reporter = TestReport :new (),
34- })
30+ o .runner = args .runner
3531
3632 setmetatable (o , self )
3733 self .__index = self
6056--- Runs the test class in the given buffer
6157--- @param buffer integer
6258--- @param config JavaCoreDapLauncherConfigOverridable
63- function M :run_class_by_buffer (buffer , config )
59+
60+ --- comment
61+ --- @param buffer number
62+ --- @param report java_test.JUnitTestReport
63+ --- @param config ? JavaCoreDapLauncherConfigOverridable config to override the default values in test launcher config
64+ function M :run_class_by_buffer (buffer , report , config )
6465 local tests = self :get_test_class_by_buffer (buffer )
65- self :run_test (tests , config )
66+ self :run_test (tests , report , config )
6667end
6768
6869--- Returns test classes in the given buffer
7879
7980--- Run the given test
8081--- @param tests java_core.TestDetails[]
82+ --- @param report java_test.JUnitTestReport
8183--- @param config ? JavaCoreDapLauncherConfigOverridable config to override the default values in test launcher config
82- function M :run_test (tests , config )
83- --- @type JavaCoreTestJunitLaunchArguments
84+ function M :run_test (tests , report , config )
8485 local launch_args = self .test_client :resolve_junit_launch_arguments (
8586 data_adapters .get_junit_launch_argument_params (tests )
8687 )
@@ -99,7 +100,7 @@ function M:run_test(tests, config)
99100 dap_launcher_config =
100101 vim .tbl_deep_extend (' force' , dap_launcher_config , config or {})
101102
102- self .runner :run_by_config (dap_launcher_config )
103+ self .runner :run_by_config (dap_launcher_config , report )
103104end
104105
105106return M
0 commit comments