You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Run utPLSQL test greyed out in Schema Browser (other schema and own schema) #111
Hi,
I'm using the utPLSQL extension version 1.2.0 with SQL Developer 19.4.
I can right-click in the connections window and run utPLSQL tests on packages in my own schema, but I cannot do this on packages in another schema - the utPLSQL options are greyed out. Any idea what could be causing this? If I run them like this from my own schema, it works fine:
set serveroutput on
begin
ut.run('other_schema.ut_package');
end;
PS: I have enough rights to create and execute objects in the other schema.
In the following scenario I'm connected to UT3_TESTER_HELPER (your user) and select under the node Other Users the test package TEST_OUTPUT_BUFFER owned by UT3_TESTER (your other_schema). And then I right-click on this node to show the context menu.
The statement log shows the code executed behind the scenes to determine if a package can be executed. The code may differ depending on the installed utPLSQL version (that's why it is important to know which version of utPLSQL you are using). In my case I use the most recent develop version v3.1.11.3466-develop). The code looks like this when showing the cell value of the SQL column:
DECLARE
l_return VARCHAR2(1) :='0';
BEGIN
IF ut_runner.is_suite(?, ?) THEN
l_return :='1';
END IF;
? := l_return;
END;
The bind variables UT3_TESTER and TEST_OUTPUT_BUFFER are used as you see on the parameters column. Based on that I can run an adapted version of the code in my worksheet as well, e.g. as follows:
SET SERVEROUTPUT ON
DECLARE
l_return VARCHAR2(1) :='0';
BEGIN
IF ut_runner.is_suite('UT3_TESTER', 'TEST_OUTPUT_BUFFER') THEN
l_return :='1';
END IF;
dbms_output.put_line(l_return);
END;
/
In my chase the output is:
1
PL/SQL procedure successfully completed.
So, I assume that in your case 0 is returned and that leads to a disabled Run utPLSQL test context menu entry.
I executed your piece of PL/SQL code and it returned 1 in my case, so this looks ok.
However, I have found something else based on your feedback.
I normally browse to the objects of other users by right-clicking in my schema name in the connections window, then choose "Schema Browser" and select the required schema. The utPLSQL options are greyed out there! However, when I try it your way and open the other schema from the "Other Users" folder in my schema, it works fine and the utPLSQL context menu is correctly enabled! Can you reproduce this behaviour? Let me know if you need more information.
It looks like it's not possible to select test packages in the Schema Browser. It does not matter which schema is selected. Does not work with the own schema schema. I consider this a bug. Thank you for reporting it.
changed the title [-]Run utPLSQL test greyed out in other schema[/-][+]Run utPLSQL test greyed out in Schema Browser (other schema and own schema)[/+]on Aug 23, 2020
Activity
PhilippSalvisberg commentedon Aug 22, 2020
In the following scenario I'm connected to
UT3_TESTER_HELPER(your user) and select under the nodeOther Usersthe test packageTEST_OUTPUT_BUFFERowned byUT3_TESTER(your other_schema). And then I right-click on this node to show the context menu.The statement log shows the code executed behind the scenes to determine if a package can be executed. The code may differ depending on the installed utPLSQL version (that's why it is important to know which version of utPLSQL you are using). In my case I use the most recent develop version v3.1.11.3466-develop). The code looks like this when showing the cell value of the
SQLcolumn:The bind variables
UT3_TESTERandTEST_OUTPUT_BUFFERare used as you see on the parameters column. Based on that I can run an adapted version of the code in my worksheet as well, e.g. as follows:In my chase the output is:
So, I assume that in your case
0is returned and that leads to a disabledRun utPLSQL testcontext menu entry.mhoys commentedon Aug 23, 2020
Hi Philipp,
We are using utPLSQL version v3.1.9.3270.
I executed your piece of PL/SQL code and it returned 1 in my case, so this looks ok.
However, I have found something else based on your feedback.
I normally browse to the objects of other users by right-clicking in my schema name in the connections window, then choose "Schema Browser" and select the required schema. The utPLSQL options are greyed out there! However, when I try it your way and open the other schema from the "Other Users" folder in my schema, it works fine and the utPLSQL context menu is correctly enabled! Can you reproduce this behaviour? Let me know if you need more information.
Thanks,
Matthias
PhilippSalvisberg commentedon Aug 23, 2020
Yes, I can reproduce it.
It looks like it's not possible to select test packages in the Schema Browser. It does not matter which schema is selected. Does not work with the own schema schema. I consider this a bug. Thank you for reporting it.
[-]Run utPLSQL test greyed out in other schema[/-][+]Run utPLSQL test greyed out in Schema Browser (other schema and own schema)[/+]mhoys commentedon Aug 23, 2020
Thanks, good to know it's a bug and not something related to my configuration ;-)
mhoys commentedon Aug 23, 2020
(oops maybe I should better not close this one)
mhoys commentedon Oct 21, 2020
Thanks, I can confirm it's working fine now (I tried v1.2.1 with SQL Developer 20.2).