Forum OpenACS Development: Bug Stomp! (13th & 14th july)

Our main goal today is to have all the test cases passing in acs-tcl, that might imply to corrections to code in acs-core, update the test-cases, etc. Also, we might start creating new tests cases, since most of the things in acs-tcl are tested!
Ok, here is the list of test cases in acs-tcl failing:

ad_proc_fire_callback *

datamodel__named_constraints *

datamodel__acs_object_type_check *

datamodel__acs_attribute_check *

documentation__check_proc_interface_status

documentation__check_proc_doc

documentation__check_deprecated_see

We are taking now the ones with (*).
If you will work in something, please post here in anticipation, so we avoid duplicating effort.

We are testing only PG. If someone has oracle, go ahead!
Lets use this thread to coordinate who's working on what, and open other thread for specific proc discussions.
Lets meet as well in the IRC.

Also, there are many tests that are not there at acs-tcl, many thing still needs a test case.

(We are working ONLY with a checkout from HEAD & acs-core)

Collapse
2: More tests for acs-tcl? (response to 1)
Posted by Rocael Hernández Rizzardini on
Many test for many procs are missing, here is a first condensate draft list:

(HP) acs_object::
acs_user::
acs_privacy:: ?
acs_user_extension:: ?
(HP) ad_context_bar*
ad_*
(HP) ad_page_contract*
ad_progress_bar*
(HP) ad_set_cookie
apm_package*
apm_parameter_register
apm_package_instance_new
db_* ??
f:: ?
install::xml::*
membership_rel::*
(HP) parameter::*
(HP) permission::*
person:: ?
(HP) site_node::*
security::*
site_node_object_map::*
util* ? ??
whos_online::*

New tests will be smoke test, unless is fully necessary a detailed test (in many cases might be needed).
? verify if are valid and are used
?? shall we test it?
* test all, one test case can test many procs (better!)

(HP) High-priority
(MP) Medium-priority
(LP) Low-priority

I just marked some as HP, comments?

Collapse
Posted by Rocael Hernández Rizzardini on
just finished the parameter::* tests
parameter__check_procs
Collapse
Posted by Victor Guerra on
Test case files__check_upgrade_ordering (acs-tcl) is failling since there are 2 upgrade scripts that are not well ordered.

acs-content-repository: upgrade-5.2.0d15-5.2.0a1.sql
acs-kernel: upgrade-5.1.5-5.2.0a1.sql

I think the solution here is to remove those scripts and create new ones that follow the right order. For example in the case of acs-content-repository there would be a new script named: upgrade-5.2.0d18-5.2.0d19.sql wichi includes the sql scripts defined in upgrade-5.1.5-5.2.0a1.sql.

Any comments?

Collapse
Posted by Byron Linares on
I am working in Test case datamodel__named_constraints (acs-tcl) , and finding a group of constraints that violates constraint naming standard and need to be fixed. Steps needed to fix this:
  • Create upgrade scripts to change current constraints names
  • Change creation scripts in order to have correct name constraints for fresh installations
  • Fix funcion content_type__create_type for pg and content_type.create_type for oracle to create constraints of tables created automatically whit the estandar form
now the test case only checks the _pk,_fk,_un,_ck constraints, i think that is necessary to add the _nn constraint.
Collapse
Posted by Don Baccus on
BTW folks are in IRC (#openacs), you should join us (though I'll be taking off for a couple hours soon).

Anyway, our consensus is that you needn't bother with upgrade scripts. Let's just make the fresh installs pass the AA tests. Constraint naming errors don't really break anything, just make it harder to find which constraint died if you don't use unique names, and without a standard naming convention people tend to duplicate names.

So if you want to take on the last two items you've listed, that's sufficient.

And will be greatly appreciated!

Collapse
Posted by Dave Bauer on
Sounds good victor, go ahead.
Collapse
Posted by Rocael Hernández Rizzardini on
eliminated documentation__check_proc_interface_status, -public is not required.
I am working in Test Case for the Permission Procedures, I will post which features I tested.
I have created Test Cases order to test the following procedures:

1. permission::grant.
2. permission::permission_p
3. permission::revoke

The first Test Case tests permission::grant and permission::permission_p, the second tests permission::permission::p. the file is committed in HEAD.

Collapse
Posted by Nick Carroll on
I am working on reducing the fail cases that are related to:

documentation__check_proc_doc (acs-tcl)

There are currently 93 fails.

Collapse
Posted by Victor Guerra on
Test case documentation__check_deprecated_see (acs-tcl) is listing 11 deprecated procs withouth clause @see.

Some of the procs listed are been used,
do we mark this fails as warnings?

ad_admin_footer
ad_admin_header
ad_footer
ad_graphics_site_available_p
deprecated proc ad_header
proc ad_header_with_extra_stuff
ad_privacy_threshold
set_variables_after_query
set_variables_after_query_not_selection
set_variables_after_subquery
util_ReturnMetaRefresh

Collapse
Posted by Don Baccus on
I've made "ad_graphics_site_available_p" disappear, the parameter it refers to no longer exists so the proc always returns " ".
Collapse
Posted by Victor Guerra on
The goal of the last Bug Stomp was to check the failling
test cases for acs-tcl.

Here are the results:

- New test cases for permissions API.
- New test cases for parameters API.
- test case ad_proc_fire_callback: fixed and committed.
- test case datamodel__named_constraints: fixed but not committed ( Byron Linares will be committing this today ).
- datamodel__acs_object_type_check ( Byron Linares will be committing this today ).
- datamodel__acs_attribute_check: fixed but not commited ( I will be committing this today ).
- test case documentation__check_proc_interface_status: fixed and committed.
- test case documentation__check_proc_doc ( Nick is working on this one ).
- test case documentation__check_deprecated_see ( Fixed and committed ).

Collapse
Posted by Victor Guerra on
- datamodel__acs_attribute_check: fixed but not commited ( I will be committing this today ).

I just committed this stuff.

Anyone that could test a fresh install on ORA? :) just to be sure that everything is OK.

Thanks.