D6 installation profile for testing CCK date fields now available

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
dww's picture

I just released an install profile for D6 core that sets up a test site for trying out all the combinations of CCK date field configurations: CCK Date Testsite. I've discovered various bugs in Signup's handling of CCK date fields (and have been fleshing out bugs and limitations in DateAPI itself with KarenS's help). I was spending a lot of time just configuring a reasonable test site to try different combinations of CCK date field types (Date, Datestamp, vs. Datetime) and timezone handling (there are 5 different ways date fields can handle timezones). So, I quickly decided the time spent automating the test site would easily save me time in the long run. And, I hope this profile will be useful to other folks working with DateAPI and CCK date fields.

There's a pretty extensive README.txt file included with the profile. Before you install it, you need D6 core, along with the following contribs:
* Install Profile API
* CCK (Content and Content Copy)
* Date (Date, Date API and Date Timezone)
* Signup
* Devel

There are 16 different content type .inc files shipped in the content_types subdirectory of the profile representing all the possible combinations of CCK date field configuration, plus an untimed node type (for testing signup's untimed functionality). For all 15 date-enabled types, the profile generates 4 nodes for each one: (2 days ago, now, 2 hours from now, 2 days from now). It also generates a bunch of users from different timezones, and configures roles and permissions, devel settings and blocks, and so on.

It could probably be making better use of the D6 install wizard stuff to let you select which content types you want on another page in the installer. It should probably be making use of the Batch API, too. ;) If anyone else wants to help out with this profile, I'd be very happy to collaborate on improvements. Specific suggestions or bug reports should go to the issue queue, of course.

Happy CCK testing!
-Derek

Comments

This is a neat idea. Very

dwees's picture

This is a neat idea. Very good way of checking to make sure that the different CCK modules 'play nicely'. Good work.

This could be very handy.

KarenS's picture

This could be very handy. Note that a number of things are built into Date now that might help:

1) If you use Devel Generate, it will automatically populate dates in generated nodes with random valid date values. They won't meet your specific criteria, they will be random, but that's another thing that can be done.

2) I just added a method to the Views data that creates a calendar to automatically create a default calendar for a specific date with the idea that you could include that in a profile if you're defining specific content types and date fields. I'll try to get over and supply a patch for that, but just wanted to let you know.

Thanks for the feedback

dww's picture

1) I didn't want to use devel generate precisely since I needed these specific date values to be able to test the things I needed to test. ;) It should be easy to enable and run devel_generate after the fact if you just want a bunch of randomly dated nodes, too.

That said, I wouldn't mind if you gave a closer look at cckdatetest_date_field() to make sure that looks ok. ;) There might be easier ways to do all that, but I tested this part pretty thoroughly and it all seems to work as intended.

2) Thanks for the patch for Add Date PHP4 -- I updated it and commited it to HEAD...

D5 version now available

dww's picture

Since the signup bugs I'm trying to fix exist in D5, I decided to backport this install profile (and some goodness in Install Profile API) to D5: cckdatetest 5.x-1.x-dev.