Thanks to visit codestin.com
Credit goes to github.com

Skip to content
2 changes: 0 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,9 +80,7 @@ install:
- bash .travis/install_sqlcl.sh
- sudo mkdir -p /dev/pdbs
- sudo chmod -R 777 /dev/pdbs
- df -h
- if [[ ! $TRAVIS_TAG ]]; then bash .travis/start_db.sh; fi
- df -h

before_script:
- if [[ ! $TRAVIS_TAG ]]; then bash .travis/install.sh; fi
Expand Down
96 changes: 42 additions & 54 deletions .travis/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,60 +2,66 @@

cd source
set -ev

#install core of utplsql
"$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
time "$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
set feedback off
set verify off

alter session set plsql_warnings = 'ENABLE:ALL', 'DISABLE:(5004,5018,6000,6001,6003,6009,6010,7206)';
alter session set plsql_optimize_level=0;
@install_headless.sql $UT3_OWNER $UT3_OWNER_PASSWORD
SQL

#uninstall core of utplsql
"$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
set feedback off
set verify off

@uninstall_all.sql $UT3_OWNER
declare
v_leftover_objects_count integer;
begin
select sum(cnt)
into v_leftover_objects_count
from (select count(1) cnt from dba_objects where owner = '$UT3_OWNER'
union all
select count(1) cnt from dba_synonyms where table_owner = '$UT3_OWNER'
);
if v_leftover_objects_count > 0 then
raise_application_error(-20000, 'Not all objects were successfully uninstalled - leftover objects count='||v_leftover_objects_count);
end if;
end;
/
#Run this step only on first job slave (11.2 - at it's fastest)
if [[ "${TRAVIS_JOB_NUMBER}" =~ \.1$ ]]; then

#check code-style for errors
time "$SQLCLI" $UT3_OWNER/$UT3_OWNER_PASSWORD@//$CONNECTION_STR @../development/utplsql_style_check.sql

#test install/uninstall process
time "$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
set feedback off
set verify off

@uninstall_all.sql $UT3_OWNER
declare
v_leftover_objects_count integer;
begin
select sum(cnt)
into v_leftover_objects_count
from (select count(1) cnt from dba_objects where owner = '$UT3_OWNER'
union all
select count(1) cnt from dba_synonyms where table_owner = '$UT3_OWNER'
);
if v_leftover_objects_count > 0 then
raise_application_error(-20000, 'Not all objects were successfully uninstalled - leftover objects count='||v_leftover_objects_count);
end if;
end;
/
SQL

#reinstall core of utplsql
"$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
set feedback off
set verify off
time "$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
set feedback off
set verify off

alter session set plsql_warnings = 'ENABLE:ALL', 'DISABLE:(5004,5018,6000,6001,6003,6009,6010,7206)';
@install.sql $UT3_OWNER
alter session set plsql_optimize_level=0;
@install.sql $UT3_OWNER
SQL

fi

#additional privileges to run scripted tests
"$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
time "$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
set feedback on
--needed for Mystats script to work
grant select any dictionary to $UT3_OWNER;
--Needed for testing a coverage outside ut3_owner.
grant create any procedure, drop any procedure, execute any procedure to $UT3_OWNER;

conn $UT3_OWNER/$UT3_OWNER_PASSWORD@//$CONNECTION_STR
@../development/utplsql_style_check.sql
SQL

#Create additional users
"$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
#Create user that will own the tests
time "$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
set feedback off
@create_utplsql_owner.sql $UT3_TESTER $UT3_TESTER_PASSWORD $UT3_TABLESPACE

Expand All @@ -70,29 +76,11 @@ grant create job to $UT3_TESTER;
exit
SQL

#additional privileges to run tests
"$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
set feedback on
--needed for Mystats script to work
grant select any dictionary to $UT3_OWNER;
--Needed for testing a coverage outside ut3_owner.
grant create any procedure, drop any procedure, execute any procedure to $UT3_OWNER;

exit
SQL

#Create additional users
"$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
#Create additional UT3$USER# to test for special characters
time "$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
set feedback off
@create_utplsql_owner.sql $UT3_USER $UT3_USER_PASSWORD $UT3_TABLESPACE

exit
SQL

#Grant UT3 framework to UT3$USER#
"$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<-SQL
set feedback off
--Grant UT3 framework to UT3$USER#
@create_user_grants.sql $UT3_OWNER $UT3_USER

exit
SQL
2 changes: 1 addition & 1 deletion .travis/install_utplsql_release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ end;
SQL

"$SQLCLI" sys/$ORACLE_PWD@//$CONNECTION_STR AS SYSDBA <<SQL
alter session set plsql_warnings = 'ENABLE:ALL', 'DISABLE:(5004,5018,6000,6001,6003,6009,6010,7206)';
alter session set plsql_optimize_level=0;
@install_headless.sql ${UT3_RELEASE_VERSION_SCHEMA}
exit
SQL
Expand Down
7 changes: 5 additions & 2 deletions .travis/start_db.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@ else
mkdir -p $HOME/.docker && cp $CACHE_DIR/.docker/config.json $HOME/.docker/
fi

docker pull $DOCKHER_HUB_REPO:$ORACLE_VERSION
df -h
time docker pull $DOCKHER_HUB_REPO:$ORACLE_VERSION
df -h
docker run -d --name $ORACLE_VERSION $DOCKER_OPTIONS -p 1521:1521 $DOCKHER_HUB_REPO:$ORACLE_VERSION
docker logs -f $ORACLE_VERSION | grep -m 1 "DATABASE IS READY TO USE!" --line-buffered
time docker logs -f $ORACLE_VERSION | grep -m 1 "DATABASE IS READY TO USE!" --line-buffered
df -h
4 changes: 2 additions & 2 deletions test/install_and_run_tests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ git rev-parse && cd "$(git rev-parse --show-cdup)"

cd test

"$SQLCLI" ${UT3_TESTER}/${UT3_TESTER_PASSWORD}@//${CONNECTION_STR} @install_tests.sql
time "$SQLCLI" ${UT3_TESTER}/${UT3_TESTER_PASSWORD}@//${CONNECTION_STR} @install_tests.sql

cd ..

utPLSQL-cli/bin/utplsql run ${UT3_TESTER}/${UT3_TESTER_PASSWORD}@${CONNECTION_STR} \
time utPLSQL-cli/bin/utplsql run ${UT3_TESTER}/${UT3_TESTER_PASSWORD}@${CONNECTION_STR} \
-source_path=source -owner=ut3 \
-test_path=test -c \
-f=ut_documentation_reporter -o=test_results.log -s \
Expand Down
1 change: 1 addition & 0 deletions test/install_tests.sql
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ set define off
whenever sqlerror exit failure rollback
whenever oserror exit failure rollback

alter session set plsql_optimize_level=0;
--Install helpers
@@helpers/ut_test_table.sql
@@helpers/ut_example_tests.pks
Expand Down