Development issueshttps://lab.civicrm.org/groups/dev/-/issues2023-03-27T06:52:21Zhttps://lab.civicrm.org/dev/core/-/issues/4203add end date to petition2023-03-27T06:52:21Zjamieadd end date to petitionOverview
----------------------------------------
This proposed feature would add a new field to petitions called: End date. If someone tries to sign a petition that has an end date in the past, they would get a friendly error warning t...Overview
----------------------------------------
This proposed feature would add a new field to petitions called: End date. If someone tries to sign a petition that has an end date in the past, they would get a friendly error warning them that the petition is no longer active.
Current behaviour
----------------------------------------
Now, we can create petitions and manually disable them. However there are two problems:
1. If you disable a petition it no longer shows up in advanced search so you can no longer find signatories.
2. It's easy to forget to disable a petition. That means these potentially spam-collecting forms can live on for too long
3.
Proposed behaviour
----------------------------------------
By adding an end date when you create the petition, you can set it up and forget about it.
Comments
----------------------------------------
I'm open to taking a crack at implementing, but wanted to first get feedback to see if this is the best way to go about it or if there are any potential pitfalls.https://lab.civicrm.org/dev/core/-/issues/4201Afform - Form Submission fails for Anonymous users if Duplicate Matching is on2023-08-01T19:19:45ZalicefruminAfform - Form Submission fails for Anonymous users if Duplicate Matching is onOverview
----------------------------------------
If you create a little Afform to create/update a contact
Reproduction steps
----------------------------------------
1. Create an Afform with Generic Permissions that is Accessible on ...Overview
----------------------------------------
If you create a little Afform to create/update a contact
Reproduction steps
----------------------------------------
1. Create an Afform with Generic Permissions that is Accessible on front-end of website
2. add the fields First Name, Last Name and Email.
3. Select a Duplicate Matching Rule
4. Set the Security level as Open Access
5. Submit the form from the front end as an anonymous user.
Current behaviour
----------------------------------------
Request Authorization failed error
Expected behaviour
----------------------------------------
Form should submit and dedupehttps://lab.civicrm.org/dev/core/-/issues/4200Countable error when creating a membership batch (if org ID is not 1)2023-03-29T19:20:15ZherbdoolCountable error when creating a membership batch (if org ID is not 1)Overview
----------------------------------------
When a client creates a batch to add memberships, they get this error:
Warning: Undefined array key 1 in CRM_Core_BAO_UFGroup::buildProfile() (line 1934 of /app/sites/all/modules/civicr...Overview
----------------------------------------
When a client creates a batch to add memberships, they get this error:
Warning: Undefined array key 1 in CRM_Core_BAO_UFGroup::buildProfile() (line 1934 of /app/sites/all/modules/civicrm/CRM/Core/BAO/UFGroup.php).
TypeError: count(): Argument #1 ($value) must be of type Countable|array, null given in CRM_Core_BAO_UFGroup::buildProfile() (line 1934 of /app/sites/all/modules/civicrm/CRM/Core/BAO/UFGroup.php).
The relevant code:
```
if (isset($types[1]) && count($types[1]) > 1) {
$types[1] = $select + $types[1];
}
```
They're on CiviCRM 5.59.1 with PHP 8+.
It's checking for membership types that are related to an organization contact but only if the contact ID is 1. If contact ID is not 1 then it's trying to count on an empty array. We can either check if it's an array before counting or maybe make it smarter: check for membership types regardless of contact ID.5.61.0https://lab.civicrm.org/dev/core/-/issues/4199SearchKit: DB Error: no such field a.total_amount when adding Tax Exclusive A...2023-03-24T03:46:42ZherbdoolSearchKit: DB Error: no such field a.total_amount when adding Tax Exclusive Amount and Balance (starting with Line Items : Contributions)Overview
----------------------------------------
There's an "Unknown column `a.total_amount` when trying to add these fields onto a SearchKit search that starts with `Line Items` and with `Contributions`:
Line Item Contribution: Tax Ex...Overview
----------------------------------------
There's an "Unknown column `a.total_amount` when trying to add these fields onto a SearchKit search that starts with `Line Items` and with `Contributions`:
Line Item Contribution: Tax Exclusive Amount
Line Item Contribution: Balance
**Note this only happens when starting with Line Items and *not* when starting with Contributions (and optionally adding Line Items).**
It's adding a field like this:
```
COALESCE(a.total_amount, 0) - COALESCE(a.tax_amount, 0) AS `LineItem_Contribution_contribution_id_01.tax_exclusive_amount`
```
and like this:
```
a.total_amount - COALESCE((SELECT SUM(ft.total_amount) FROM civicrm_financial_trxn ft
INNER JOIN civicrm_entity_financial_trxn eft ON (eft.financial_trxn_id = ft.id AND eft.entity_table = 'civicrm_contribution')
WHERE eft.entity_id = a.id AND ft.is_payment = 1 AND ft.status_id IN (1,7)), 0) AS `LineItem_Contribution_contribution_id_01.balance_amount`
```
where `a` is `civicrm_line_item`. It's assuming, I think, that the first table is `civicrm_contributions`.
Current behaviour
----------------------------------------
_What happens currently. Please provide error messages, screenshots or gifs ([LICEcap](http://www.cockos.com/licecap/), [SilentCast](https://github.com/colinkeenan/silentcast)) where appropriate._
Environment information
----------------------------------------
* __CiviCRM:__ 5.58.1 (but I looked through the release notes and I don't think it was fixed in 5.59.x)https://lab.civicrm.org/dev/core/-/issues/4198Access to undeclared variable in merge code2023-03-23T14:06:20ZRichAccess to undeclared variable in merge codeAt:
https://lab.civicrm.org/dev/core/-/blob/96d550c70dd1f406851895ddfe236fbfd718ab77/CRM/Dedupe/Merger.php#L1376
we reference `$migrationData` which is not declared. I have a hunch it should be `$migrationInfo`?
Ping @eileenAt:
https://lab.civicrm.org/dev/core/-/blob/96d550c70dd1f406851895ddfe236fbfd718ab77/CRM/Dedupe/Merger.php#L1376
we reference `$migrationData` which is not declared. I have a hunch it should be `$migrationInfo`?
Ping @eileenhttps://lab.civicrm.org/dev/core/-/issues/4197Fatal error on merge2023-04-19T07:03:53ZDavid HayesFatal error on mergeOverview
----------------------------------------
After update to 5.59 (maybe earlier). A fatal error is received on merging contacts.
Reproduction steps
----------------------------------------
1. Attempt to merge contacts
2. Fatal err...Overview
----------------------------------------
After update to 5.59 (maybe earlier). A fatal error is received on merging contacts.
Reproduction steps
----------------------------------------
1. Attempt to merge contacts
2. Fatal error
Current behaviour
----------------------------------------
```
PHP Fatal error: Uncaught TypeError: Argument 6 passed to CRM_Dedupe_Merger::processCustomFields() must be of the type bool, null given, called in /home/example/public_html/wp-content/plugins/civicrm/civicrm/CRM/Dedupe/Merger.php on line 2128 and defined in /home/example/public_html/wp-content/plugins/civicrm/civicrm/CRM/Dedupe/Merger.php:2553
Stack trace:
#0 /home/example/public_html/wp-content/plugins/civicrm/civicrm/CRM/Dedupe/Merger.php(2128): CRM_Dedupe_Merger::processCustomFields()
#1 /home/example/public_html/wp-content/plugins/civicrm/civicrm/CRM/Contact/Form/Merge.php(324): CRM_Dedupe_Merger::moveAllBelongings()
#2 /home/example/public_html/wp-content/plugins/civicrm/civicrm/CRM/Core/Form.php(573): CRM_Contact_Form_Merge->postProcess()
#3 /home/example/public_html/wp-content/plugins/civicrm/civicrm/CRM/Core/StateMachine.php(144): CRM_Core_Form->mainProcess()
#4 /home/example/public_html/wp-content/plugins/civicrm/civicrm/CRM/Core/QuickForm/Action/Next.php(43): CRM_Core_StateMachine->perform()
#5 /home/example/public_html/wp-content/plugins/civicrm/ in /home/example/public_html/wp-content/plugins/civicrm/civicrm/CRM/Dedupe/Merger.php on line 2553
```
Possible fix
----------------------------------------
Ensure `$htmlType` and `$isView` are set and bools.
![image](/uploads/deaff23e07422713d0c844c149898350/image.png)
Expected behaviour
----------------------------------------
Contacts merged.
Environment information
----------------------------------------
* __Browser:__ all
* __CiviCRM:__ 5.59.3
* __PHP:__ 7.4
* __CMS:__ WordPress
* __Database:__ MySQL 5.7.41
* __Web Server:__ Apache 2.4
Comments
----------------------------------------
NA5.59.4https://lab.civicrm.org/dev/core/-/issues/4196hook_civicrm_links - are the docs wrong or the code?2023-03-23T20:11:09ZJonGoldhook_civicrm_links - are the docs wrong or the code?The docs for `hook_civicrm_links` provides this signature:
```php
hook_civicrm_links(string $op, string $objectName, int $objectID, array &$links, int &$mask, array &$values)
```
However, the type hinting isn't always correct. I've fo...The docs for `hook_civicrm_links` provides this signature:
```php
hook_civicrm_links(string $op, string $objectName, int $objectID, array &$links, int &$mask, array &$values)
```
However, the type hinting isn't always correct. I've found:
* PCP pages pass `NULL` for `$mask`.
* The extensions page passes a string for `$objectID`.
Should we change the docs or the code?https://lab.civicrm.org/dev/core/-/issues/4195Cannot reach custom fields on Contributions from SearchKit2023-03-23T14:29:20ZRichCannot reach custom fields on Contributions from SearchKitNot sure if this is a bug or a feature request. Is it a bug if SK can't do what advanced search can?
Custom fields (1-1) on Contributions can be used in Api4, but are not reachable in SK; the fields are not listed in the "With/on" field...Not sure if this is a bug or a feature request. Is it a bug if SK can't do what advanced search can?
Custom fields (1-1) on Contributions can be used in Api4, but are not reachable in SK; the fields are not listed in the "With/on" fieldsets, and I couldn't find a CustomValues or such entity to add as a second "With".https://lab.civicrm.org/dev/core/-/issues/4194Proposal - remove some fields from dedupe field options2023-03-27T02:42:05ZeileenProposal - remove some fields from dedupe field optionsWhen creating dedupe rules there are some fields in the drop down that don't make sense to me
![image](/uploads/87e8fe511a5e795ce362dd7027705505/image.png)
Specifically
**Irrational (technical term)**
(if these are present the dedupe...When creating dedupe rules there are some fields in the drop down that don't make sense to me
![image](/uploads/87e8fe511a5e795ce362dd7027705505/image.png)
Specifically
**Irrational (technical term)**
(if these are present the dedupe rule functionality won't apply)
- 'id' => 'Contact ID',
- 'external_identifier' => 'External Identifier',
**Dumb (technical term)**
- Contact.is_deceased
- 'addressee_id' => 'Addressee',
- 'addressee_custom' => 'Addressee Custom',
- 'do_not_email' => 'Do Not Email',
- 'do_not_mail' => 'Do Not Mail',
- 'do_not_phone' => 'Do Not Phone',
- 'do_not_sms' => 'Do Not Sms',
- 'do_not_trade' => 'Do Not Trade',
- 'email_greeting_id' => 'Email Greeting',
- 'email_greeting_custom' => 'Email Greeting Custom',
- 'external_identifier' => 'External Identifier',
- 'image_URL' => 'Image Url',
- 'is_opt_out' => 'No Bulk Emails (User Opt Out)',
- 'postal_greeting_id' => 'Postal Greeting',
- 'postal_greeting_custom' => 'Postal Greeting Custom',
- 'preferred_communication_method' => 'Preferred Communication Method',
- 'communication_style_id' => 'Communication Style',
- 'signature_html' => 'Signature Html',
- 'signature_text' => 'Signature Text',
**Marginal (laymans' term) **
- 'geo_code_1' => 'Latitude',
- 'geo_code_2' => 'Longitude',
- 'master_id' => 'Master Address ID',
<details>
<summary>Full list - excluding custom fields</summary>
```
/**
* Get the list of supportedFields to test against.
*
* This is a statically maintained (in this test list).
*
*/
public function getSupportedFields() {
return [
'civicrm_address' =>
[
'name' => 'Address Name',
'city' => 'City',
'country_id' => 'Country',
'county_id' => 'County',
'geo_code_1' => 'Latitude',
'geo_code_2' => 'Longitude',
'master_id' => 'Master Address ID',
'postal_code' => 'Postal Code',
'postal_code_suffix' => 'Postal Code Suffix',
'state_province_id' => 'State',
'street_address' => 'Street Address',
'supplemental_address_1' => 'Supplemental Address 1',
'supplemental_address_2' => 'Supplemental Address 2',
'supplemental_address_3' => 'Supplemental Address 3',
],
'civicrm_contact' =>
[
'addressee_id' => 'Addressee',
'addressee_custom' => 'Addressee Custom',
'id' => 'Contact ID',
'source' => 'Contact Source',
'contact_sub_type' => 'Contact Subtype',
'do_not_email' => 'Do Not Email',
'do_not_mail' => 'Do Not Mail',
'do_not_phone' => 'Do Not Phone',
'do_not_sms' => 'Do Not Sms',
'do_not_trade' => 'Do Not Trade',
'email_greeting_id' => 'Email Greeting',
'email_greeting_custom' => 'Email Greeting Custom',
'external_identifier' => 'External Identifier',
'image_URL' => 'Image Url',
'legal_identifier' => 'Legal Identifier',
'legal_name' => 'Legal Name',
'nick_name' => 'Nickname',
'is_opt_out' => 'No Bulk Emails (User Opt Out)',
'organization_name' => 'Organization Name',
'postal_greeting_id' => 'Postal Greeting',
'postal_greeting_custom' => 'Postal Greeting Custom',
'preferred_communication_method' => 'Preferred Communication Method',
'preferred_language' => 'Preferred Language',
'sic_code' => 'Sic Code',
'user_unique_id' => 'Unique ID (OpenID)',
'sort_name' => 'Sort Name',
'communication_style_id' => 'Communication Style',
],
'civicrm_email' =>
[
'email' => 'Email',
'signature_html' => 'Signature Html',
'signature_text' => 'Signature Text',
],
'civicrm_im' =>
[
'name' => 'IM Screen Name',
],
'civicrm_note' =>
[
'note' => 'Note',
],
'civicrm_openid' =>
[
'openid' => 'OpenID',
],
'civicrm_phone' =>
[
'phone_numeric' => 'Phone',
'phone_ext' => 'Phone Extension',
],
'civicrm_website' =>
[
'url' => 'Website',
],
];
}
```
</details>
'sic_code' => 'Sic Code',
'user_unique_id' => 'Unique ID (OpenID)',https://lab.civicrm.org/dev/core/-/issues/4193Possible issue with recursive locks2023-03-24T09:24:48ZeileenPossible issue with recursive locksI've brought this over from [pr 22013](https://github.com/civicrm/civicrm-core/pull/22013) because it needs to be discussed in gitlab before it can be reviewed as a PR & hence doesn't belong in the PR queue at this stage.
Note that par...I've brought this over from [pr 22013](https://github.com/civicrm/civicrm-core/pull/22013) because it needs to be discussed in gitlab before it can be reviewed as a PR & hence doesn't belong in the PR queue at this stage.
Note that part of the confusion is the recursion is within a process / connection from my understanding - which is where php statics would be used. Mysql locks are our protection against other processes.
On a version of Maria DB > 10.0.2 I can reserve a lock in one process (recursively if I want)
![image](/uploads/1e3a1f2b6bd34391fcff9225cc15ca44/image.png)
But cannot get it in the other process unless it times out
![image](/uploads/9f45a6eba869d2fda0c748365940aedc/image.png)
What moved the other along was an explanation as to how a problem could arise (e.g like https://lab.civicrm.org/dev/core/-/issues/3988#note_87911 ).
----------------FROM gitlab
From MariaDB 10.0.2 it is possible to recursively set the same lock. This completely breaks the locking mechanism in CRM_Core_Lock because it assumes that GET_LOCK can only be called once for a named lock.
See: https://mariadb.com/kb/en/get_lock/ "From MariaDB 10.0.2, it is also possible to recursively set the same lock".
This is certainly the case on MariaDB 10.3. But I ran some tests on 10.5 and it doesn't seem to allow you to recursively set the same lock anymore. So I think this goes a long way to explaining why locking doesn't seem to be working properly on some sites.
Before
CiviCRM locking mechanism doesn't work on versions of MariaDB (between 10.0.2-10.4.x?) as multiple locks of the same name can be acquired.
After
CiviCRM locking mechanism works on mariaDB to limit each lock to a single named lock.
Technical Details
Described above.https://lab.civicrm.org/dev/core/-/issues/4191Export with a field that has a small DB size but long labels results in fatal2023-06-15T21:16:14ZbgmExport with a field that has a small DB size but long labels results in fatalTo reproduce:
- Create a new custom field of type=alphanum, widget=select list, size=2 (on dmaster, you can edit "Constituent Information > Marital Status" to have a width of 2)
- Enter some field options that are more than 2 characters...To reproduce:
- Create a new custom field of type=alphanum, widget=select list, size=2 (on dmaster, you can edit "Constituent Information > Marital Status" to have a width of 2)
- Enter some field options that are more than 2 characters
Then go to Advanced Search:
- click submit to search,
- export all results
- select fields to export: marital status (or the field you created)
It will cause CiviCRM to fatal because it creates a temp table with a `varchar(4)` but it tries to store the field labels.
It works on CiviCRM 5.55 but not on CiviCRM 5.60 RC.https://lab.civicrm.org/dev/core/-/issues/4190PHP8: Delete Case link causes fatal error2023-03-17T04:34:49ZnoahPHP8: Delete Case link causes fatal errorReproduction steps
----------------------------------------
1. Go to the Cases dashboard, or on a contact's Case tab.
1. Click the "Delete" link for a case.
Current behaviour
----------------------------------------
![Screenshot_2023-03...Reproduction steps
----------------------------------------
1. Go to the Cases dashboard, or on a contact's Case tab.
1. Click the "Delete" link for a case.
Current behaviour
----------------------------------------
![Screenshot_2023-03-16_at_13.34.45](/uploads/d2f9a93844cbadc68b8826294cc6d1d4/Screenshot_2023-03-16_at_13.34.45.png)
* Error on screen: "Network Error"
* Behind the scenes: Error: Cannot unset offset in a non-array variable in CRM_Core_Form->buildForm() (line 692 of CRM/Core/Form.php)
Expected behaviour
----------------------------------------
![Screenshot_2023-03-16_at_13.34.55](/uploads/4e17a2fbc3ccc88222f74fe54b10b9fb/Screenshot_2023-03-16_at_13.34.55.png)
Confirmation dialog should pop up, allowing you to go through with the deletion.
Environment information
----------------------------------------
PHP 8.16
CiviCRM 5.59 (but the code in question goes back at least 10 years)
Comments
----------------------------------------
The problem arises because [`CRM_Case_Form_Case->setDefaultValues()` returns a boolean](https://github.com/civicrm/civicrm-core/blob/25cc23a6b69129a580a7a5c9ceaf7d18e692dda8/CRM/Case/Form/Case.php#L203) instead of the expected array.5.61.0https://lab.civicrm.org/dev/core/-/issues/4189Contribution Confirm incorrectly debit card information even if using credit ...2023-03-25T00:47:40ZbgmContribution Confirm incorrectly debit card information even if using credit cardTo reproduce:
- Create normal Contribution Page
- Enable dummy credit card
- Enable the Confirmation Page
Then go to the test page, enter test card (`4111111111111111`) and submit to go to the confirmation page:
![image](/uploads/ce70...To reproduce:
- Create normal Contribution Page
- Enable dummy credit card
- Enable the Confirmation Page
Then go to the test page, enter test card (`4111111111111111`) and submit to go to the confirmation page:
![image](/uploads/ce70684ddada9932e4da72bff3dcacfa/image.png)
The bug was introduced somewhere between 5.57 and 5.60. I suspect it's related to this PR: https://github.com/civicrm/civicrm-core/pull/25239
Those changes have not been applied to `ThankYou.tpl`.
When debugging, the `$contributeMode` was set to 'debit'. It seems to be the default value in the parent class. The code also has a code comment from 2016 saying that "The concept of contributeMode is deprecated."5.60.0https://lab.civicrm.org/dev/core/-/issues/4188phpunit 9 compatibility2023-09-14T20:18:28ZDaveDphpunit 9 compatibilityhttps://github.com/civicrm/civicrm-core/pull/25635
Haven't really looked too closely
```
E2E_Shimmy_LifecycleTest::testLifecycleWithSubprocesses
api_v3_AttachmentTest.testCreate with data set #0
api_v3_AttachmentTest.testCreate with...https://github.com/civicrm/civicrm-core/pull/25635
Haven't really looked too closely
```
E2E_Shimmy_LifecycleTest::testLifecycleWithSubprocesses
api_v3_AttachmentTest.testCreate with data set #0
api_v3_AttachmentTest.testCreate with data set #1
api_v3_AttachmentTest.testCreate with data set #2
api_v3_AttachmentTest.testCreate with data set #3
api_v3_AttachmentTest.testCreateFailure with data set #0
api_v3_AttachmentTest.testCreateFailure with data set #1
api_v3_AttachmentTest.testCreateFailure with data set #2
api_v3_AttachmentTest.testCreateFailure with data set #3
api_v3_AttachmentTest.testCreateWithBadUpdate with data set #0
api_v3_AttachmentTest.testCreateWithBadUpdate with data set #1
api_v3_AttachmentTest.testCreateWithBadUpdate with data set #2
api_v3_AttachmentTest.testCreateWithBadUpdate with data set #3
api_v3_AttachmentTest.testGetError with data set #0
api_v3_AttachmentTest.testGetError with data set #1
api_v3_AttachmentTest.testGetError with data set #2
api_v3_AttachmentTest.testGetError with data set #3
api_v3_AttachmentTest.testGetError with data set #4
api_v3_AttachmentTest.testGetError with data set #5
api_v3_AttachmentTest.testGetError with data set #6
api_v3_CaseTest.testTimestamps
api_v3_ContactTest.testContactGetByUnknownUsername
api_v3_ContactTest.testCreateApiKey with data set "APIv3"
api_v3_ContactTest.testCreateApiKey with data set "APIv4"
api_v3_ContributionPageTest.testSubmit
api_v3_ContributionPageTest.testSubmitZeroDollar
api_v3_ContributionPageTest.testSubmitNewBillingNameData
api_v3_ContributionPageTest.testSubmitNewBillingNameDoNotOverwrite
api_v3_ContributionPageTest.testSubmitRecurMultiProcessorInstantPayment
api_v3_ContributionPageTest.testSubmitMembershipBlockNotSeparatePayment
api_v3_ContributionPageTest.testSubmitMembershipBlockNotSeparatePaymentProcessorInstantRenew
api_v3_ContributionPageTest.testSubmitMembershipBlockNotSeparatePaymentWithEmail
api_v3_ContributionPageTest.testSubmitMembershipBlockNotSeparatePaymentZeroDollarsWithEmail
api_v3_ContributionPageTest.testSubmitMembershipBlockIsSeparatePaymentPayLaterWithEmail
api_v3_ContributionPageTest.testSubmitMembershipBlockIsSeparatePayment
api_v3_ContributionPageTest.testSubmitMembershipBlockIsSeparatePaymentWithPayLater
api_v3_ContributionPageTest.testSubmitMembershipBlockIsSeparatePaymentWithEmail
api_v3_ContributionPageTest.testSubmitMembershipBlockIsSeparatePaymentZeroDollarsPayLaterWithEmail
api_v3_ContributionPageTest.testSubmitMembershipBlockTwoTypesIsSeparatePayment
api_v3_ContributionPageTest.testSubmitMembershipBlockIsSeparatePaymentPaymentProcessorNow
api_v3_ContributionPageTest.testSubmitMembershipPriceSetPaymentPaymentProcessorRecurInstantPaymentYear
api_v3_ContributionPageTest.testSubmitMembershipPriceSetPaymentPaymentProcessorRecurInstantPaymentMonth
api_v3_ContributionPageTest.testSubmitMembershipComplexQuickConfigPaymentPaymentProcessorRecurInstantPayment
api_v3_ContributionPageTest.testSubmitMembershipPriceSetPaymentPaymentProcessorSeparatePaymentRecurInstantPayment
api_v3_ContributionPageTest.testSubmitMembershipPriceSetPaymentPaymentProcessorRecurDelayed
api_v3_ContributionPageTest.testSubmitMembershipIsSeparatePaymentNotRecur
api_v3_ContributionPageTest.testSubmitPledgePayment
api_v3_ContributionPageTest.testValidate
api_v3_ContributionPageTest.testSubmitMembershipBlockIsSeparatePaymentPaymentProcessorNowChargesCorrectAmounts with data set #0
api_v3_ContributionPageTest.testSubmitContributionPageWithPriceSet with data set #0
api_v3_ContributionPageTest.testSubmitContributionPageWithPriceSet with data set #1
api_v3_ContributionPageTest.testSubmitContributionPageWithPriceSetQuantity with data set #0
api_v3_ContributionPageTest.testSubmitContributionPageWithPriceSetQuantity with data set #1
api_v3_ContributionTest.testGetContribution
api_v3_ContributionTest.testCompleteTransaction
api_v3_ContributionTest.testCompleteTransactionEuro
api_v3_ContributionTest.testPayLater
api_v3_ContributionTest.testBillingAddress
api_v3_ContributionTest.testCompleteTransactionFeeAmount
api_v3_ContributionTest.testRepeatTransaction
api_v3_ContributionTest.testRepeatTransactionWithCustomData
api_v3_ContributionTest.testRepeatTransactionLineItems
api_v3_ContributionTest.testRepeatTransactionIsTest
api_v3_ContributionTest.testRepeatTransactionPassedInStatus
api_v3_ContributionTest.testRepeatTransactionAcceptRecurID
api_v3_ContributionTest.testRepeatTransactionTestRecurId
api_v3_ContributionTest.testRepeatTransactionMembershipRenewCompletedContribution
api_v3_ContributionTest.testRepeattransactionRenewMembershipOldMembership
api_v3_ContributionTest.testRepeatTransactionAlteredAmount
api_v3_ContributionTest.testRepeatTransactionPassedInFinancialType
api_v3_ContributionTest.testContributionOrder
api_v3_ContributionTest.testRepeatTransactionPassedInFinancialTypeTwoLineItems
api_v3_ContributionTest.testRepeatTransactionUpdatedFinancialType
api_v3_ContributionTest.testRepeatTransactionPassedInCampaign
api_v3_ContributionTest.testRepeatTransactionUpdatedCampaign
api_v3_ContributionTest.testRepeatTransactionUpdatedFinancialTypeAndNotEquals
api_v3_ContributionTest.testCompleteTransactionNetAmountOK
api_v3_ContributionTest.testCompleteTransactionWithReceiptDateSet
api_v3_ContributionTest.testCompleteTransactionForRecurring
api_v3_ContributionTest.testCompleteTransactionWithEmailReceiptInputTrue
api_v3_ContributionTest.testCompleteTransactionWithTestTemplate
api_v3_ContributionTest.testCompleteTransactionContributionPageFromAddress
api_v3_ContributionTest.testCompleteTransactionUpdatePledgePayment
api_v3_ContributionTest.testRepeatTransactionWithPledgePayment
api_v3_ContributionTest.testCompleteTransactionWithParticipantRecord
api_v3_ContributionTest.testCompleteTransactionMembershipPriceSet
api_v3_ContributionTest.testCompleteTransactionMembershipPriceSetTwoTerms
api_v3_ContributionTest.testSendMail
api_v3_ContributionTest.testSendConfirmationPayLater
api_v3_ContributionTest.testSendMailEvent
api_v3_ContributionTest.testRepeatTransactionWithNonCreditCardDefault
api_v3_ContributionTest.testRepeatTransactionMembershipCreatePendingContribution
api_v3_ContributionTest.testSendMailWithAPISetFromDetails
api_v3_ContributionTest.testSendMailWithNoFromSetFallToDomain
api_v3_ContributionTest.testSendMailWithRepeatTransactionAPIFalltoDomain
api_v3_ContributionTest.testSendMailWithRepeatTransactionAPIFalltoContributionPage
api_v3_ContributionTest.testSendMailWithRepeatTransactionAPIFalltoSystemFromNoDefaultFrom
api_v3_ContributionTest.testRepeatTransactionWithDifferenceCurrency
api_v3_ContributionTest.testRepeatContributionWithTaxAmount
api_v3_ContributionTest.testPaymentDontChangeReceiveDate
api_v3_ContributionTest.testPaymentVerifyPaymentInstrumentChange
api_v3_ContributionTest.testCheckTaxAmount with data set #0
api_v3_ContributionTest.testCheckTaxAmount with data set #1
api_v3_ContributionTest.testRepeatTransactionMembershipRenewContributionNotCompleted with data set #1
api_v3_ContributionTest.testRepeatTransactionMembershipRenewContributionNotCompleted with data set #2
api_v3_ContributionTest.testRepeatTransactionMembershipRenewContributionNotCompleted with data set #3
api_v3_ContributionTest.testRepeatTransactionMembershipRenewContributionNotCompleted with data set #4
api_v3_ContributionTest.testRepeatTransactionMembershipRenewContributionNotCompleted with data set #6
api_v3_ContributionTest.testRepeatTransactionMembershipRenewContributionNotCompleted with data set #7
api_v3_ContributionTest.testRepeatTransactionMembershipRenewContributionNotCompleted with data set #8
api_v3_ContributionTest.testCompleteTransactionSetStatusToInProgress with data set #0
api_v3_ContributionTest.testCompleteTransactionSetStatusToInProgress with data set #1
api_v3_ContributionTest.testCompleteTransactionSetStatusToInProgress with data set #2
api_v3_ContributionTest.testCompleteTransactionSetStatusToInProgress with data set "receive_date_includes_time"
api_v3_ContributionTest.testRepeatTransactionUpdateNextSchedContributionDate with data set "receive_date_includes_time_with_installments"
api_v3_ContributionTest.testRepeatTransactionUpdateNextSchedContributionDate with data set "receive_date_includes_time_no_installments"
api_v3_JobProcessMailingTest.testBasic
api_v3_JobProcessMailingTest.testDeletedRecipient
api_v3_JobProcessMailingTest.testDeceasedRecipient
api_v3_JobProcessMailingTest.testMultipleBulkRecipients
api_v3_JobProcessMailingTest.testPauseAndResumeMailing
api_v3_JobProcessMailingTest.testMailNonProductionRun
api_v3_JobProcessMailingTest.testConcurrency with data set #0
api_v3_JobProcessMailingTest.testConcurrency with data set #1
api_v3_JobProcessMailingTest.testConcurrency with data set #2
api_v3_JobProcessMailingTest.testConcurrency with data set #3
api_v3_JobProcessMailingTest.testConcurrency with data set #4
api_v3_JobProcessMailingTest.testConcurrency with data set #5
api_v3_JobProcessMailingTest.testConcurrency with data set #6
api_v3_JobProcessMailingTest.testBatchActivityTargets with data set #0
api_v3_JobProcessMailingTest.testBatchActivityTargets with data set #1
api_v3_JobTest.testCallSendReminderSuccessMoreThanDefaultLimit
api_v3_JobTest.testCallSendReminderLimitToSMS
api_v3_JobTest.testCallSendReminderLimitToSMSWithDeletedProvider
api_v3_JobTest.testMailReportForPrint
api_v3_JobTest.testMailReportForPdf
api_v3_JobTest.testMailReportForCsv
api_v3_MailingGroupTest.testMailerGroupSubscribeGivenContactId
api_v3_MailingGroupTest.testMailerProcess
api_v3_MailingTest.testMailerPreview
api_v3_MailingTest.testMailerPreviewUnknownContact
api_v3_MailingTest.testMailerSendTest_email
api_v3_MailingTest.testMailerSendTest_group
api_v3_MailingTest.testUnsubscribeGroupList
api_v3_MailingTest.testMailerStats
api_v3_MailingTest.testUrlWithMissingTrackingHash
api_v3_MailingTest.testTrackableURLWithUnicodeSign
api_v3_MailingTest.testModifiedDateMismatchOnMailingUpdate
api_v3_MailingTest.testMailerSubmit with data set #1
api_v3_MailingTest.testMailerSubmit with data set #3
api_v3_MailingTest.testMailerSubmit with data set #4
api_v3_MailingTest.testMailerSubmit with data set #5
api_v3_MailingTest.testMailerSubmit with data set #6
api_v3_MailingTest.testMailerSubmit with data set #7
api_v3_MembershipTest.testMultipleMembershipContribution
api_v3_OrderTest.testAddOrderForMembership
api_v3_OrderTest.testCreateWithChainedPayment
api_v3_PaymentTest.testMultiplePaymentsForContribution
api_v3_PaymentTest.testPaymentSendContributionReceipt
api_v3_PaymentTest.testPaymentEmailReceipt
api_v3_PaymentTest.testPaymentEmailReceiptFullyPaid
api_v3_PaymentTest.testCreatePaymentNoLineItems
api_v3_PaymentTest.testCreatePaymentLineItems
api_v3_PaymentTest.testCreatePaymentPayLater
api_v3_PaymentTest.testCreatePaymentOnFailedContribution
api_v3_PaymentTest.testCreatePaymentPayLaterPartialPayment
api_v3_PaymentTest.testPaymentCreateTrxnIdAndDates
api_v3_PaymentTest.testRefundEmailReceipt with data set #0
api_v3_PaymentTest.testRefundEmailReceipt with data set #1
api_v3_SyntaxConformanceTest.testNotImplemented_get with data set #0
api_v3_SyntaxConformanceTest.testNotImplemented_get with data set #1
api_v3_SystemTest.testSystemGet
api\v4\Action\ContactGetTest.testGetWithLimit
api\v4\Entity\ConformanceTest.testConformance with data set "ACL"
api\v4\Entity\ConformanceTest.testConformance with data set "ACLEntityRole"
api\v4\Entity\ConformanceTest.testConformance with data set "ActionSchedule"
api\v4\Entity\ConformanceTest.testConformance with data set "Activity"
api\v4\Entity\ConformanceTest.testConformance with data set "ActivityContact"
api\v4\Entity\ConformanceTest.testConformance with data set "Address"
api\v4\Entity\ConformanceTest.testConformance with data set "Batch"
api\v4\Entity\ConformanceTest.testConformance with data set "Campaign"
api\v4\Entity\ConformanceTest.testConformance with data set "Case"
api\v4\Entity\ConformanceTest.testConformance with data set "CaseActivity"
api\v4\Entity\ConformanceTest.testConformance with data set "CaseContact"
api\v4\Entity\ConformanceTest.testConformance with data set "CaseType"
api\v4\Entity\ConformanceTest.testConformance with data set "Contact"
api\v4\Entity\ConformanceTest.testConformance with data set "ContactType"
api\v4\Entity\ConformanceTest.testConformance with data set "Contribution"
api\v4\Entity\ConformanceTest.testConformance with data set "ContributionPage"
api\v4\Entity\ConformanceTest.testConformance with data set "ContributionProduct"
api\v4\Entity\ConformanceTest.testConformance with data set "ContributionRecur"
api\v4\Entity\ConformanceTest.testConformance with data set "ContributionSoft"
api\v4\Entity\ConformanceTest.testConformance with data set "Country"
api\v4\Entity\ConformanceTest.testConformance with data set "County"
api\v4\Entity\ConformanceTest.testConformance with data set "CustomField"
api\v4\Entity\ConformanceTest.testConformance with data set "CustomGroup"
api\v4\Entity\ConformanceTest.testConformance with data set "Dashboard"
api\v4\Entity\ConformanceTest.testConformance with data set "DashboardContact"
api\v4\Entity\ConformanceTest.testConformance with data set "DedupeException"
api\v4\Entity\ConformanceTest.testConformance with data set "DedupeRule"
api\v4\Entity\ConformanceTest.testConformance with data set "DedupeRuleGroup"
api\v4\Entity\ConformanceTest.testConformance with data set "Domain"
api\v4\Entity\ConformanceTest.testConformance with data set "Email"
api\v4\Entity\ConformanceTest.testConformance with data set "Entity"
api\v4\Entity\ConformanceTest.testConformance with data set "EntityBatch"
api\v4\Entity\ConformanceTest.testConformance with data set "EntityFinancialAccount"
api\v4\Entity\ConformanceTest.testConformance with data set "EntityFinancialTrxn"
api\v4\Entity\ConformanceTest.testConformance with data set "EntityTag"
api\v4\Entity\ConformanceTest.testConformance with data set "Event"
api\v4\Entity\ConformanceTest.testConformance with data set "ExampleData"
api\v4\Entity\ConformanceTest.testConformance with data set "Extension"
api\v4\Entity\ConformanceTest.testConformance with data set "File"
api\v4\Entity\ConformanceTest.testConformance with data set "FinancialAccount"
api\v4\Entity\ConformanceTest.testConformance with data set "FinancialItem"
api\v4\Entity\ConformanceTest.testConformance with data set "FinancialTrxn"
api\v4\Entity\ConformanceTest.testConformance with data set "FinancialType"
api\v4\Entity\ConformanceTest.testConformance with data set "Group"
api\v4\Entity\ConformanceTest.testConformance with data set "GroupContact"
api\v4\Entity\ConformanceTest.testConformance with data set "GroupNesting"
api\v4\Entity\ConformanceTest.testConformance with data set "GroupOrganization"
api\v4\Entity\ConformanceTest.testConformance with data set "IM"
api\v4\Entity\ConformanceTest.testConformance with data set "Job"
api\v4\Entity\ConformanceTest.testConformance with data set "JobLog"
api\v4\Entity\ConformanceTest.testConformance with data set "LineItem"
api\v4\Entity\ConformanceTest.testConformance with data set "LocBlock"
api\v4\Entity\ConformanceTest.testConformance with data set "LocationType"
api\v4\Entity\ConformanceTest.testConformance with data set "Log"
api\v4\Entity\ConformanceTest.testConformance with data set "MailSettings"
api\v4\Entity\ConformanceTest.testConformance with data set "Mailing"
api\v4\Entity\ConformanceTest.testConformance with data set "MailingEventBounce"
api\v4\Entity\ConformanceTest.testConformance with data set "MailingEventConfirm"
api\v4\Entity\ConformanceTest.testConformance with data set "MailingEventOpened"
api\v4\Entity\ConformanceTest.testConformance with data set "MailingEventQueue"
api\v4\Entity\ConformanceTest.testConformance with data set "MailingEventSubscribe"
api\v4\Entity\ConformanceTest.testConformance with data set "MailingEventUnsubscribe"
api\v4\Entity\ConformanceTest.testConformance with data set "MailingGroup"
api\v4\Entity\ConformanceTest.testConformance with data set "MailingJob"
api\v4\Entity\ConformanceTest.testConformance with data set "Managed"
api\v4\Entity\ConformanceTest.testConformance with data set "Mapping"
api\v4\Entity\ConformanceTest.testConformance with data set "MappingField"
api\v4\Entity\ConformanceTest.testConformance with data set "Membership"
api\v4\Entity\ConformanceTest.testConformance with data set "MembershipBlock"
api\v4\Entity\ConformanceTest.testConformance with data set "MembershipStatus"
api\v4\Entity\ConformanceTest.testConformance with data set "MembershipType"
api\v4\Entity\ConformanceTest.testConformance with data set "MessageTemplate"
api\v4\Entity\ConformanceTest.testConformance with data set "Navigation"
api\v4\Entity\ConformanceTest.testConformance with data set "Note"
api\v4\Entity\ConformanceTest.testConformance with data set "OpenID"
api\v4\Entity\ConformanceTest.testConformance with data set "OptionGroup"
api\v4\Entity\ConformanceTest.testConformance with data set "OptionValue"
api\v4\Entity\ConformanceTest.testConformance with data set "PCP"
api\v4\Entity\ConformanceTest.testConformance with data set "PCPBlock"
api\v4\Entity\ConformanceTest.testConformance with data set "Participant"
api\v4\Entity\ConformanceTest.testConformance with data set "ParticipantStatusType"
api\v4\Entity\ConformanceTest.testConformance with data set "PaymentProcessor"
api\v4\Entity\ConformanceTest.testConformance with data set "PaymentProcessorType"
api\v4\Entity\ConformanceTest.testConformance with data set "PaymentToken"
api\v4\Entity\ConformanceTest.testConformance with data set "Permission"
api\v4\Entity\ConformanceTest.testConformance with data set "Phone"
api\v4\Entity\ConformanceTest.testConformance with data set "Pledge"
api\v4\Entity\ConformanceTest.testConformance with data set "PledgePayment"
api\v4\Entity\ConformanceTest.testConformance with data set "PriceField"
api\v4\Entity\ConformanceTest.testConformance with data set "PriceFieldValue"
api\v4\Entity\ConformanceTest.testConformance with data set "PriceSet"
api\v4\Entity\ConformanceTest.testConformance with data set "PriceSetEntity"
api\v4\Entity\ConformanceTest.testConformance with data set "PrintLabel"
api\v4\Entity\ConformanceTest.testConformance with data set "Product"
api\v4\Entity\ConformanceTest.testConformance with data set "Queue"
api\v4\Entity\ConformanceTest.testConformance with data set "RecentItem"
api\v4\Entity\ConformanceTest.testConformance with data set "Relationship"
api\v4\Entity\ConformanceTest.testConformance with data set "RelationshipCache"
api\v4\Entity\ConformanceTest.testConformance with data set "RelationshipType"
api\v4\Entity\ConformanceTest.testConformance with data set "ReportInstance"
api\v4\Entity\ConformanceTest.testConformance with data set "Route"
api\v4\Entity\ConformanceTest.testConformance with data set "SavedSearch"
api\v4\Entity\ConformanceTest.testConformance with data set "Setting"
api\v4\Entity\ConformanceTest.testConformance with data set "StateProvince"
api\v4\Entity\ConformanceTest.testConformance with data set "StatusPreference"
api\v4\Entity\ConformanceTest.testConformance with data set "SubscriptionHistory"
api\v4\Entity\ConformanceTest.testConformance with data set "Survey"
api\v4\Entity\ConformanceTest.testConformance with data set "System"
api\v4\Entity\ConformanceTest.testConformance with data set "Tag"
api\v4\Entity\ConformanceTest.testConformance with data set "Translation"
api\v4\Entity\ConformanceTest.testConformance with data set "UFField"
api\v4\Entity\ConformanceTest.testConformance with data set "UFGroup"
api\v4\Entity\ConformanceTest.testConformance with data set "UFJoin"
api\v4\Entity\ConformanceTest.testConformance with data set "UFMatch"
api\v4\Entity\ConformanceTest.testConformance with data set "UserJob"
api\v4\Entity\ConformanceTest.testConformance with data set "Website"
api\v4\Entity\ConformanceTest.testConformance with data set "WordReplacement"
api\v4\Entity\ConformanceTest.testConformance with data set "WorkflowMessage"
api\v4\Entity\ConformanceTest.testConformance with data set "WorldRegion"
api\v4\Entity\TranslationTest.testCreateBad with data set "badStatus"
api\v4\Entity\TranslationTest.testCreateBad with data set "malformedField"
api\v4\Entity\TranslationTest.testCreateBad with data set "badTable"
api\v4\Entity\TranslationTest.testCreateBad with data set "badFieldName"
api\v4\Entity\TranslationTest.testCreateBad with data set "badFieldType"
api\v4\Entity\TranslationTest.testCreateBad with data set "badEntityId"
api\v4\Entity\TranslationTest.testUpdateBad with data set "badStatus"
api\v4\Entity\TranslationTest.testUpdateBad with data set "malformedField"
api\v4\Entity\TranslationTest.testUpdateBad with data set "badTable"
api\v4\Entity\TranslationTest.testUpdateBad with data set "badFieldName"
api\v4\Entity\TranslationTest.testUpdateBad with data set "badFieldType"
api\v4\Entity\TranslationTest.testUpdateBad with data set "badEntityId"
api\v4\Entity\ValidateValuesTest.testHookData
api\v4\Entity\ValidateValuesTest.testRaiseError
api\v4\Entity\WorkflowMessageTest.testRenderDefaultTemplate
api\v4\Entity\WorkflowMessageTest.testRenderCustomTemplate
api\v4\Entity\WorkflowMessageTest.testRenderExamples with data set "workflow/contribution_recurring_edit/AlexCancelled"
Civi\API\Subscriber\DynamicFKAuthorizationTest.testNotDelegated
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #0
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #1
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #2
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #3
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #4
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #5
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #6
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #7
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #8
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #9
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #10
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #11
Civi\API\Subscriber\DynamicFKAuthorizationTest.testBad with data set #12
Civi\API\Subscriber\WhitelistSubscriberTest.testEach with data set #3
Civi\API\Subscriber\WhitelistSubscriberTest.testEach with data set #5
Civi\API\Subscriber\WhitelistSubscriberTest.testEach with data set #8
Civi\API\Subscriber\WhitelistSubscriberTest.testEach with data set #9
Civi\API\Subscriber\WhitelistSubscriberTest.testEach with data set #12
Civi\API\Subscriber\WhitelistSubscriberTest.testEach with data set #13
Civi\API\Subscriber\WhitelistSubscriberTest.testEach with data set #17
Civi\API\Subscriber\WhitelistSubscriberTest.testEach with data set #22
Civi\API\Subscriber\WhitelistSubscriberTest.testEach with data set #27
Civi\API\Subscriber\WhitelistSubscriberTest.testEach with data set #29
Civi\API\Subscriber\WhitelistSubscriberTest.testEach with data set #30
Civi\Angular\LoaderTest.testSettingFactory with data set #0
Civi\Angular\LoaderTest.testSettingFactory with data set #1
Civi\Angular\LoaderTest.testSettingFactory with data set #2
Civi\Angular\ManagerTest.testGetPartials
Civi\Angular\ManagerTest.testGetPartials_Hooked
Civi\Angular\ManagerTest.testGetJs_Asset
Civi\Core\CiviEventDispatcherTest.testDispatchPolicy_fail
Civi\Crypto\CryptoJwtTest.testSignVerifyExpire
Civi\Crypto\CryptoJwtTest.testSignMixKeys with data set #3
Civi\Crypto\CryptoRegistryTest.testAddBadKeyId
Civi\Crypto\CryptoTokenTest.testDecryptInvalid
Civi\Crypto\CryptoTokenTest.testRekeyCiphertext
Civi\Crypto\CryptoTokenTest.testRekeyUpgradeDowngradePlaintext
Civi\Crypto\CryptoTokenTest.testRoundtrip with data set #0
Civi\Crypto\CryptoTokenTest.testRoundtrip with data set #1
Civi\Crypto\CryptoTokenTest.testRoundtrip with data set #2
Civi\Crypto\CryptoTokenTest.testRoundtrip with data set #3
Civi\Crypto\CryptoTokenTest.testRoundtrip with data set #4
Civi\Crypto\CryptoTokenTest.testRoundtrip with data set #5
Civi\Payment\PropertyBagTest.testBillingCountry
Civi\Pipe\JsonRpcSessionTest.testApi3ErrorModes
Civi\Pipe\JsonRpcSessionTest.testApi4Authz
Civi\Pipe\JsonRpcSessionTest.testApi4ErrorModes
Civi\Schema\MagicGetterSetterTest.testExample
Civi\Test\ExampleHookTest.testPageOutput
Civi\Test\ExampleSubscriberTest.testPageOutput
Civi\WorkflowMessage\ExampleWorkflowMessageTest.testExampleRender
Civi\WorkflowMessage\ExampleWorkflowMessageTest.testImpromptuRender
Civi\WorkflowMessage\ExampleWorkflowMessageTest.testRenderStoredTemplate
CRM_Activity_BAO_ActivityTest.testSendEmailBasic
CRM_Activity_BAO_ActivityTest.testSendEmailBasicWithoutAnyTokens
CRM_Activity_BAO_ActivityTest.testSendEmailWithCampaign
CRM_Activity_BAO_ActivityTest.testSendSmsNoPhoneNumber
CRM_Activity_BAO_ActivityTest.testSendSmsLandLinePhoneNumber
CRM_Activity_BAO_ActivityTest.testSendSmsMobilePhoneNumber
CRM_Activity_BAO_ActivityTest.testSendSMSMobileInToProviderParam
CRM_Activity_BAO_ActivityTest.testSendSMSMobileInToProviderParamWithDoNotSMS
CRM_Activity_BAO_ActivityTest.testSendEmailWithCaseId
CRM_Activity_BAO_ActivityTest.testSendEmailWillReplaceTokensUniquelyForEachContact
CRM_Activity_BAO_ActivityTest.testSendEmailWillReplaceTokensUniquelyForEachContact3
CRM_Activity_BAO_ActivityTest.testSendEmailDoesNotDuplicateAttachmentFileIDsForActivitiesCreated
CRM_Activity_Form_ActivityTest.testActivityCreate
CRM_Activity_ActionMappingTest.testDefault with data set #0
CRM_Activity_ActionMappingTest.testDefault with data set #1
CRM_Activity_ActionMappingTest.testDefault with data set #2
CRM_Activity_ActionMappingTest.testDefault with data set #3
CRM_Activity_ActionMappingTest.testDefault with data set #5
CRM_Campaign_BAO_PetitionTest.testPetitionEmailWithDomainTokens
CRM_Case_Form_EmailTest.testOpeningEmailForm
CRM_Case_Form_EmailTest.testCaseTokenForRecipientAddedAfterOpeningForm
CRM_Case_Form_SearchTest.testOpeningFindCaseForm
CRM_Contact_BAO_ContactTest.testTimestampContact
CRM_Contact_BAO_ContactTest.testTimestampsEmail
CRM_Contact_BAO_ContactTest.testTimestampsPhone
CRM_Contact_BAO_ContactTest.testTimestampsCustom
CRM_Contact_BAO_QueryTest.testGetSummaryQueryWithFinancialACLDisabled
CRM_Contact_BAO_QueryTest.testGetSummaryQueryWithFinancialACLEnabled
CRM_Contact_Form_Task_EmailTest.testPostProcessWithSignature
CRM_Contact_Form_Task_PDFLetterCommonTest.testContactTokensAreResolved
CRM_Contact_Form_Task_PDFLetterCommonTest.testCaseTokensAreResolved
CRM_Contact_Form_Task_PDFLetterCommonTest.testFilenameIsAssigned with data set #0
CRM_Contact_Form_Task_PDFLetterCommonTest.testFilenameIsAssigned with data set #1
CRM_Contact_Form_Task_PDFLetterCommonTest.testFilenameIsAssigned with data set #2
CRM_Contact_Form_Task_PDFLetterCommonTest.testFilenameIsAssigned with data set #3
CRM_Contact_Form_Task_PDFLetterCommonTest.testFilenameIsAssigned with data set #4
CRM_Contact_Form_Task_PDFLetterCommonTest.testFilenameIsAssigned with data set #5
CRM_Contact_Form_Task_PrintDocumentTest.testPrintDocument
CRM_Contact_Form_IndividualTest.testOpeningNewIndividualForm
CRM_Contact_Form_IndividualTest.testOpeningNewIndividualFormWithCustomField
CRM_Contact_Page_View_UserDashBoardTest.testDashboardContentEmptyContact
CRM_Contact_Page_View_UserDashBoardTest.testDashboardContentContributionsWithInvoicingEnabled
CRM_Contact_Page_View_UserDashBoardTest.testDashboardContentContributions
CRM_Contact_Page_View_UserDashBoardTest.testUserDashboardHonorContact
CRM_Contact_Page_View_UserDashBoardTest.testDashboardPartialPayments
CRM_Contribute_ActionMapping_ByTypeTest.testTokenRendering
CRM_Contribute_ActionMapping_ByTypeTest.testDefault with data set #0
CRM_Contribute_ActionMapping_ByTypeTest.testDefault with data set #1
CRM_Contribute_ActionMapping_ByTypeTest.testDefault with data set #3
CRM_Contribute_ActionMapping_ByTypeTest.testDefault with data set #4
CRM_Contribute_ActionMapping_ByTypeTest.testDefault with data set #5
CRM_Contribute_ActionMapping_ByTypeTest.testDefault with data set #6
CRM_Contribute_ActionMapping_ByTypeTest.testDefault with data set #7
CRM_Contribute_BAO_ContributionRecurTest.testGetTemplateContributionNewTemplate
CRM_Contribute_BAO_ContributionRecurTest.testAutoRenewalWhenOneMemberIsDeceased
CRM_Contribute_BAO_ContributionTest.testCreate
CRM_Contribute_BAO_ContributionTypeTest.testAdd
CRM_Contribute_BAO_ProductTest.testAdd
CRM_Contribute_BAO_QueryTest.CRM_Contribute_BAO_QueryTest::testSearchPseudoReturnProperties
CRM_Contribute_Form_Contribution_ConfirmTest.testPayNowPayment
CRM_Contribute_Form_Contribution_MainTest.testSetRecurFunction
CRM_Contribute_Form_Contribution_ThankYouTest.testLiveAndTestContributionStatus
CRM_Contribute_Form_ContributionPage_SettingsTest.testValidFormSubmission
CRM_Contribute_Form_Task_EmailTest.testEmailTokens
CRM_Contribute_Form_Task_InvoiceTest.testInvoiceForDueDate
CRM_Contribute_Form_Task_PDFLetterCommonTest.testGroupedThankYous
CRM_Contribute_Form_Task_PDFTest.testSendPDF
CRM_Contribute_Form_Task_StatusTest.testUpdatePendingContributionWithSendingEmail
CRM_Contribute_Form_AdditionalPaymentTest.testAddPaymentUsingCreditCardForPartiallyPaidContribution
CRM_Contribute_Form_CancelSubscriptionTest.testMail
CRM_Contribute_Form_ContributionPageTranslationTest.testCreateHonor
CRM_Contribute_Form_ContributionTest.CRM_Contribute_Form_ContributionTest::testSubmit
CRM_Contribute_Form_ContributionViewTest.testContributionViewLimitedPermissions
CRM_Contribute_Form_SearchTest.testBatchFilter
CRM_Contribute_Form_TaskTest.testPreProcessCommonAfterSorting
CRM_Contribute_Form_UpdateSubscriptionTest.testMail
CRM_Contribute_Import_Parser_ContributionTest.CRM_Contribute_Import_Parser_ContributionTest::testImportParserWithSoftCreditsByExternalIdentifier
CRM_Contribute_Page_AjaxTest.testGetSoftContributionSelector
CRM_Contribute_Page_TabTest.testLinksManual
CRM_Contribute_Selector_SearchTest.testSoftCreditFieldsSelected
CRM_Contribute_PseudoConstantTest.testGetRelationalFinancialAccount
CRM_Core_BAO_ActionScheduleTest.CRM_Core_BAO_ActionScheduleTest::testMailer
CRM_Core_BAO_AddressTest.testCreate
CRM_Core_BAO_CacheTest.testMultiVersionDecode
CRM_Core_BAO_ConfigSettingTest.testToggleComponent
CRM_Core_BAO_CustomFieldTest.testCreateCustomField
CRM_Core_BAO_CustomGroupTest.testGetTree
CRM_Core_BAO_CustomQueryTest.testSearchCustomDataDateRelative
CRM_Core_BAO_CustomValueTableMultipleTest.testCustomGroupMultipleSingle
CRM_Core_BAO_CustomValueTableSetGetTest.testSetGetValuesDate
CRM_Core_BAO_CustomValueTableTest.testStoreCountry
CRM_Core_BAO_CustomValueTest.testTypeCheckWithValidInput
CRM_Core_BAO_EmailTest.testCreate
CRM_Core_BAO_FinancialTrxnTest.testCreate
CRM_Core_BAO_IMTest.testCreate
CRM_Core_BAO_LocationTest.testCreateWithMissingParams
CRM_Core_BAO_MappingTest.CRM_Core_BAO_MappingTest::testSaveMappingFields
CRM_Core_BAO_MessageTemplateTest.testRenderTemplate
CRM_Core_BAO_NavigationTest.testCreateMissingReportMenuItemLink
CRM_Core_BAO_OpenIDTest.testAdd
CRM_Core_BAO_OptionGroupTest.testEnsureOptionGroupExistsExistingValue
CRM_Core_BAO_OptionValueTest.testHandlingForMultiDefaultOptions
CRM_Core_BAO_PhoneTest.testAdd
CRM_Core_BAO_PreferencesTest.testValueOptions
CRM_Core_BAO_PrevNextCacheTest.testFlipData
CRM_Core_BAO_RecurringEntityTest.testActivityGeneration
CRM_Core_BAO_SchemaHandlerTest.testCreateIndex
CRM_Core_BAO_SettingTest.testEnableComponentValid
CRM_Core_BAO_TagTest.testGetTreeWithoutFilters
CRM_Core_BAO_UFFieldTest.testGetAvailable_byGid
CRM_Core_BAO_UFGroupTest.testPreHookIsCalledForCreate
CRM_Core_BAO_UFMatchTest.testGetUFValuesWithNonexistentUFId
CRM_Core_CodeGen_FreshnessTest.testDAOs
CRM_Core_Config_MagicMergeTest.CRM_Core_Config_MagicMergeTest::testTempOverride
CRM_Core_Config_MailerTest.testHookAlterMailer
CRM_Core_DAO_AllCoreTablesTest.testGetTableForClass
CRM_Core_I18n_LocaleTest.testI18nLocaleChange
CRM_Core_I18n_SchemaTest.CRM_Core_I18n_SchemaTest::testI18nSchemaRewrite
CRM_Core_Page_Inline_HelpTest.CRM_Core_Page_Inline_HelpTest::testHelpFileLoad
CRM_Core_Page_AJAXTest.testCheckAuthz
CRM_Core_Page_HookTest.testFormsCallBuildFormOnce
CRM_Core_Page_RedirectTest.CRM_Core_Page_RedirectTest::testCreateUrl
CRM_Core_Payment_AuthorizeNetIPNTest.testIPNPaymentRecurNoReceipt
CRM_Core_Payment_AuthorizeNetTest.testSinglePayment
CRM_Core_Payment_BaseIPNTest.testLoadMembershipObjectsLoadAll
CRM_Core_Payment_PayPalIPNTest.testInvoiceSentOnIPNPaymentSuccess
CRM_Core_Payment_PayPalProIPNTest.testIPNPaymentRecurSuccess
CRM_Core_Payment_PaypalProTest.testSinglePayment
CRM_Core_Payment_PaypalStdTest.testSinglePayment
CRM_Core_Payment_ProcessorFormTest.testPaymentProcessorWithStandardBillingRequirements
CRM_Core_Permission_BaseTest.CRM_Core_Permission_BaseTest::testTranslate
CRM_Core_Permission_GenericTest.CRM_Core_Permission_GenericTest::testAlwaysDenyPermission
CRM_Core_Permission_JoomlaTest.CRM_Core_Permission_JoomlaTest::testTranslate
CRM_Core_Resources_BundleTest.testMergeIntoRegion
CRM_Core_Resources_StringsTest.testGet
CRM_Core_Smarty_plugins_CrmMoneyTest.CRM_Core_Smarty_plugins_CrmMoneyTest::testMoney
CRM_Core_Smarty_plugins_CrmRSSPubDateTest.CRM_Core_Smarty_plugins_CrmRSSPubDateTest::testRSSPubDate
CRM_Core_Smarty_plugins_CrmScopeTest.CRM_Core_Smarty_plugins_CrmScopeTest::testBlank
CRM_Core_Smarty_plugins_CrmUpperTest.testUpper
CRM_Core_CommunityMessagesTest.testIsEnabled
CRM_Core_ComposerConfigTest.testHardLocks
CRM_Core_CopyTest.testEventCopy
CRM_Core_DAOConformanceTest.testFieldsHaveTitles
CRM_Core_DAOTest.testGetReferenceColumns
CRM_Core_ErrorTest.testFormatBacktrace_debug
CRM_Core_FieldOptionsTest.testOptionValues
CRM_Core_FormTest.CRM_Core_FormTest::testOpeningForms
CRM_Core_InnoDBIndexerTest.testHasDeclaredIndex
CRM_Core_InvokeTest.testInvokeDashboardForNonAdmin
CRM_Core_JobManagerTest.testHookCron
CRM_Core_KeyTest.testOK
CRM_Core_ManagedEntitiesTest.testAddRemoveEntitiesModule_UpdateAlways_DeleteAlways
CRM_Core_MenuTest.testReadXML
CRM_Core_OptionGroupTest.testWeightOptionGroup
CRM_Core_PageTest.CRM_Core_PageTest::testMakeIcons
CRM_Core_PaymentTest.testHandlePaymentMethodLogging
CRM_Core_PseudoConstantTest.testOptionValues
CRM_Core_RegionTest.testBlank
CRM_Core_ResourcesTest.testCreateBasicBundle
CRM_Core_SessionTest.testSetStatusWithTextOnly
CRM_Core_TokenSmartyTest.testMixedData
CRM_Core_TransactionTest.CRM_Core_TransactionTest::testBasicCommit
CRM_Custom_Form_FieldTest.CRM_Custom_Form_FieldTest::testDetermineSerializeType
CRM_Custom_Form_OptionTest.testEditCustomFieldOptionValue
CRM_Custom_Import_Parser_ApiTest.testImport
CRM_Custom_Page_AJAXTest.testMultiRecordFieldList
CRM_Dedupe_BAO_RuleGroupTest.testSupportedFields
CRM_Dedupe_DedupeFinderTest.testUnsupervisedDupes
CRM_Dedupe_MergerTest.testBatchMergeSelectedDuplicates
CRM_Event_BAO_AdditionalPaymentTest.testPaymentWithCustomPaymentInstrument
CRM_Event_BAO_ChangeFeeSelectionTest.testCRM19273
CRM_Event_BAO_EventPermissionsTest.testViewOwnEvent
CRM_Event_BAO_ParticipantStatusTest.testCreateAndDelete
CRM_Event_BAO_ParticipantTest.testAdd
CRM_Event_BAO_QueryTest.testParticipantNote
CRM_Event_Form_ManageEvent_EventInfoTest.testValidFormSubmission
CRM_Event_Form_ManageEvent_LocationTest.testSubmit
CRM_Event_Form_ManageEvent_RegistrationTest.testEndDateWithoutDateNotAllowed
CRM_Event_Form_Registration_ConfirmTest.testSubmit
CRM_Event_Form_Registration_RegisterTest.testMinValueForPriceSet
CRM_Event_Form_Task_BadgeTest.testSubmit
CRM_Event_Form_Task_BatchTest.testSubmit
CRM_Event_Form_Task_ParticipantStatusTest.testSubmit
CRM_Event_Form_Task_RegisterTest.testGet
CRM_Event_Form_ParticipantTest.testSubmit
CRM_Event_Form_SearchTest.testSearch
CRM_Event_Form_SelfSvcTransferTest.testCancel
CRM_Event_Form_SelfSvcUpdateTest.testForm
CRM_Event_Import_Parser_ParticipantTest.testImportWithExternalID
CRM_Event_ActionMappingTest.testLimitByRoleId
CRM_Export_BAO_ExportTest.testExportComponentsNull
CRM_Extension_Container_BasicTest.testGetKeysEmpty
CRM_Extension_Container_CollectionTest.testGetKeysEmpty
CRM_Extension_Container_StaticTest.testGetKeysEmpty
CRM_Extension_Manager_ModuleTest.testInstallDisableUninstall
CRM_Extension_Manager_ModuleUpgTest.testInstallDisableUninstall
CRM_Extension_Manager_PaymentTest.testInstallDisableUninstall
CRM_Extension_Manager_ReportTest.testInstallDisableUninstall
CRM_Extension_Manager_SearchTest.testInstallDisableUninstall
CRM_Extension_BrowserTest.testDisabled
CRM_Extension_InfoTest.testGood_file
CRM_Extension_ManagerTest.testInstallInvalidType
CRM_Extension_MapperTest.testClassToKey
CRM_Financial_BAO_FinancialAccountTest.testAdd
CRM_Financial_BAO_FinancialItemTest.testAdd
CRM_Financial_BAO_FinancialTypeAccountTest.testAdd
CRM_Financial_BAO_FinancialTypeTest.testSetIsActive
CRM_Financial_BAO_PaymentProcessorTest.testGetCreditCards
CRM_Financial_BAO_PaymentProcessorTypeTest.testCreate
CRM_Financial_Form_PaymentEditTest.testSubmitOnPaymentInstrumentChange
CRM_Financial_Form_PaymentFormsTest.testEventPaymentForms
CRM_Financial_Page_AjaxBatchSummaryTest.testMakeBatchSummary
CRM_Financial_Page_AjaxTest.testGetFinancialTransactionsList
CRM_Group_Page_AjaxTest.testGroupListWithFilter
CRM_Import_DataSource_CsvTest.CRM_Import_DataSource_CsvTest::testToCsv
CRM_Logging_LoggingTest.testLoggingNonStandardCustomTableName
CRM_Logging_SchemaTest.CRM_Logging_SchemaTest::testQueryRewrite
CRM_Mailing_BAO_ConfirmTest.testConfirm
CRM_Mailing_BAO_MailingJobTest.testIsTemporaryError
CRM_Mailing_BAO_MailingTest.testgetRecipientsUsingACL
CRM_Mailing_BAO_QueryTest.CRM_Mailing_BAO_QueryTest::testSearch
CRM_Mailing_BAO_SpoolTest.testSend
CRM_Mailing_Form_Task_AdhocMailingTest.testCreateHiddenGroupFromSearchBuilder
CRM_Mailing_MailStoreTest.testMaildirBasic
CRM_Mailing_MailingSystemTest.testMailerPreviewExtraScheme
CRM_Mailing_TokensTest.CRM_Mailing_TokensTest::testTokensWithMailingId
CRM_Member_BAO_MembershipLogTest.testDel
CRM_Member_BAO_MembershipStatusTest.testAdd
CRM_Member_BAO_MembershipTest.testDeleteRelatedMembershipsOnParentTypeChanged
CRM_Member_BAO_MembershipTypeTest.testAdd
CRM_Member_BAO_QueryTest.testConvertEntityFieldSingleValue
CRM_Member_Form_Task_BatchTest.testBatchSubmit
CRM_Member_Form_Task_LabelTest.testMembershipTokenReplacementInPDF
CRM_Member_Form_Task_PDFLetterTest.testMembershipTokenReplacementInPDF
CRM_Member_Form_MembershipRenewalTest.testSubmit
CRM_Member_Form_MembershipTest.testFormRuleEmptyContact
CRM_Member_Import_Parser_MembershipTest.testImport
CRM_Member_Page_MembershipTypeTest.testMembershipTypePage
CRM_Member_Selector_SearchTest.testSelectorGetRows
CRM_Member_StatusOverrideTypesTest.testIsOverriddenReturnFalseForNoStatusOverrideType
CRM_Member_TaskTest.testPermissionedTiles
CRM_PCP_BAO_PCPTest.testAddPCPBlock
CRM_Pledge_BAO_PledgeBlockTest.testCreateAndDeletePledgeBlock
CRM_Pledge_BAO_PledgePaymentTest.testAdd
CRM_Pledge_BAO_PledgeTest.testAdd
CRM_Pledge_Form_PledgeTest.testPostProcess
CRM_Pledge_Form_SearchTest.testSearch
CRM_Price_BAO_PriceFieldTest.testSubmitPriceFieldWithOptions
CRM_Price_BAO_PriceFieldValueTest.testVisibilityFieldExists
CRM_Price_BAO_PriceSetTest.testGetAmountLevelTextAmount
CRM_Price_Form_FieldTest.testPublicFieldWithOnlyAdminOptionsIsNotAllowed
CRM_Price_Form_OptionTest.testChangingUniquePublicOptionOnPublicFieldIsNotAllowed
CRM_Profile_Form_EditTest.testProfileUrl
CRM_Queue_Queue_SqlTest.CRM_Queue_Queue_SqlTest::testPriorities
CRM_Queue_QueueTest.testRunnerRequiresErrorPolicy
CRM_Queue_RunnerTest.testRunAllNormal
CRM_Report_Form_Contact_LoggingDetailTest.testLabelFieldIsntRequired
CRM_Report_Form_Contribute_DetailTest.CRM_Report_Form_Contribute_DetailTest::testReportOutput
CRM_Report_Form_Member_DetailTest.testAutoRenewDisplay
CRM_Report_Form_ActivityTest.testLongCustomFieldNames
CRM_Report_Form_ContactSummaryTest.testOddEvenStreetNumber
CRM_Report_Form_TestCaseTest.CRM_Report_Form_TestCaseTest::testReportOutput
CRM_Report_Utils_ReportTest.testMakeCsv
CRM_Report_FormTest.testGetFromTo
CRM_SMS_BAO_ProviderTest.testCreateAndUpdateProvider
CRM_SMS_PreviewTest.testSMSPreview
CRM_SMS_ProviderTest.testProcessInbound
CRM_UF_Page_ProfileEditorTest.testGetSchema
CRM_Upgrade_Incremental_php_FiveFiftyFiveTest.testFixingPrintLabelUpgrade
CRM_Upgrade_Incremental_php_FiveTwentyTest.testChangeCaseTypeAutoassignee
CRM_Upgrade_Incremental_BaseTest.testMessageTemplateUpgrade
CRM_Upgrade_FormTest.testComposerRequirementMatch
CRM_Upgrade_SnapshotTest.testTableNames_good
CRM_Utils_API_MatchOptionTest.testCreateMatch_none
CRM_Utils_API_ReloadOptionTest.testNoReload
CRM_Utils_Cache_SqlGroupTest.testSameInstance
CRM_Utils_Check_Component_EnvTest.testResourceUrlCheck
CRM_Utils_Check_Component_OptionGroupsTest.testCheckOptionGroupValues
CRM_Utils_Mail_EmailProcessorInboundTest.testFetchActivitiesWithManyAttachments
CRM_Utils_Mail_EmailProcessorTest.testBounceProcessing
CRM_Utils_Mail_FilteredPearMailerTest.testFilter
CRM_Utils_Mail_IncomingTest.testEmailUseExistentIndividualContact
CRM_Utils_Migrate_ImportExportTest.CRM_Utils_Migrate_ImportExportTest::testBasicXMLExports
CRM_Utils_PDF_UtilsTest.testDOMPDFSettings
CRM_Utils_SQL_DeleteTest.testGetDefault
CRM_Utils_SQL_InsertTest.testRow_twice
CRM_Utils_SQL_SelectTest.testGetDefault
CRM_Utils_AddressTest.testAddressFormat
CRM_Utils_ArrayTest.testAsColumns
CRM_Utils_AutoCleanTest.testAutoclean
CRM_Utils_CacheTest.testNack
CRM_Utils_ColorTest.CRM_Utils_ColorTest::testGetContrast
CRM_Utils_DateTest.testGetFromTo
CRM_Utils_EnglishNumberTest.testRoundTrip
CRM_Utils_FileTest.testIsChildPath
CRM_Utils_GlobalStackTest.testPushPop
CRM_Utils_HTMLTest.CRM_Utils_HTMLTest::testParseStrings
CRM_Utils_HookTest.testRunHooks_reentrancy
CRM_Utils_HtmlToTextTest.CRM_Utils_HtmlToTextTest::testHtmlToText
CRM_Utils_HttpClientTest.testFetchHttp
CRM_Utils_ICalendarTest.CRM_Utils_ICalendarTest::testParseStrings
CRM_Utils_JSTest.CRM_Utils_JSTest::testParseStrings
CRM_Utils_LazyArrayTest.testAssoc
CRM_Utils_MailTest.testFormatRFC822
CRM_Utils_MoneyTest.CRM_Utils_MoneyTest::testSubtractCurrencies
CRM_Utils_NumberTest.CRM_Utils_NumberTest::testCreateRandomDecimal
CRM_Utils_QueryFormatterTest.CRM_Utils_QueryFormatterTest::testFormat
CRM_Utils_RestTest.testProcessMultiple
CRM_Utils_RuleTest.CRM_Utils_RuleTest::testInteger
CRM_Utils_SQLTest.testInterpolate
CRM_Utils_SignerTest.testSignValidate
CRM_Utils_StringTest.testBase64Url
CRM_Utils_SystemTest.testUrlQueryString
CRM_Utils_TimeTest.CRM_Utils_TimeTest::testEquals
CRM_Utils_TokenConsistencyTest.testCaseTokenConsistency
CRM_Utils_TokenTest.testReplaceGreetingTokens
CRM_Utils_TypeTest.CRM_Utils_TypeTest::testValidate
CRM_Utils_XMLTest.testFilterMarkupTest
CRM_Utils_ZipTest.testFindBaseDirName_normal
CRM_Utils_versionCheckTest.testCronFallback
E2E\Core\AssetBuilderTest.testGetUrl_cached with data set #0
E2E\Core\AssetBuilderTest.testGetUrl_cached with data set #1
E2E\Core\AssetBuilderTest.testGetUrl_cached with data set #2
E2E\Core\AssetBuilderTest.testGetUrl_uncached with data set #0
E2E\Core\AssetBuilderTest.testGetUrl_uncached with data set #1
E2E\Core\AssetBuilderTest.testGetUrl_uncached with data set #2
E2E\Core\ErrorTest.testErrorMessage with data set "frontend_fatal"
E2E\Core\ErrorTest.testErrorMessage with data set "frontend_exception"
E2E\Core\ErrorTest.testErrorMessage with data set "frontend_permission"
E2E\Core\ErrorTest.testErrorMessage with data set "backend_fatal"
E2E\Core\ErrorTest.testErrorMessage with data set "backend_exception"
E2E\Core\ErrorTest.testErrorMessage with data set "backend_permission"
E2E\Core\ErrorTest.testErrorChrome with data set "frontend_permission"
E2E\Core\ErrorTest.testErrorChrome with data set "backend_permission"
E2E\Core\PathUrlTest.testSystemRouter
E2E\Core\PathUrlTest.testPaths_getUrl
E2E\Core\PathUrlTest.testPaths_getPath
E2E\Core\PathUrlTest.testPaths_getVariable
api_v4_OAuthClientGrantTest.testAuthorizationCode
api_v4_OAuthClientTest.testCreateBadProvider
api_v4_OAuthClientTest.testUpdateBadProvider
Civi\Authx\AllFlowsTest.testStatelessGuardSiteKey
Civi\Authx\AllFlowsTest.testStatefulStatelessOverlap
Civi\Authx\AllFlowsTest.testCliServiceLogin
Civi\Authx\AllFlowsTest.testCliPipeUntrustedLogin
Civi\Authx\AllFlowsTest.testStatelessContactOnly with data set #3
Civi\Authx\AllFlowsTest.testStatelessContactOnly with data set #5
Civi\Authx\AllFlowsTest.testStatelessContactOnly with data set #6
Civi\Authx\AllFlowsTest.testStatelessContactOnly with data set #8
Civi\Authx\AllFlowsTest.testStatelessUserContact with data set #0
Civi\Authx\AllFlowsTest.testStatelessUserContact with data set #2
Civi\Authx\AllFlowsTest.testStatelessUserContact with data set #3
Civi\Authx\AllFlowsTest.testStatelessUserContact with data set #5
Civi\Authx\AllFlowsTest.testStatelessUserContact with data set #6
Civi\Authx\AllFlowsTest.testStatelessUserContact with data set #8
Civi\Authx\AllFlowsTest.testStatefulLoginProhibited with data set #0
Civi\Authx\AllFlowsTest.testStatefulLoginProhibited with data set #1
Civi\Authx\AllFlowsTest.testStatefulLoginProhibited with data set #2
Civi\Authx\AllFlowsTest.testStatefulAutoProhibited with data set #0
Civi\Authx\AllFlowsTest.testStatefulAutoProhibited with data set #1
Civi\Authx\AllFlowsTest.testStatefulAutoProhibited with data set #2
api_v4_AfformRoutingTest.testChangingPermissions
api_v4_AfformRoutingTest.testChangingPath
MockPublicFormTest.testAuthenticatedUrlToken_Plain
MockPublicFormTest.testAuthenticatedUrlToken_Html
MockPublicFormTest.testAuthenticatedLinkToken_Html
api_v4_AfformContactUsageTest.testAboutMeAllowed
Civi\FlexMailer\ConcurrentDeliveryTest.testBasic
Civi\FlexMailer\ConcurrentDeliveryTest.testDeletedRecipient
Civi\FlexMailer\ConcurrentDeliveryTest.testDeceasedRecipient
Civi\FlexMailer\ConcurrentDeliveryTest.testMultipleBulkRecipients
Civi\FlexMailer\ConcurrentDeliveryTest.testPauseAndResumeMailing
Civi\FlexMailer\ConcurrentDeliveryTest.testMailNonProductionRun
Civi\FlexMailer\ConcurrentDeliveryTest.testBatchActivityTargets with data set #0
Civi\FlexMailer\ConcurrentDeliveryTest.testBatchActivityTargets with data set #1
Civi\FlexMailer\FlexMailerSystemTest.testBasicHeaders
Civi\FlexMailer\FlexMailerSystemTest.testText
Civi\FlexMailer\FlexMailerSystemTest.testHtmlWithOpenTracking
Civi\FlexMailer\FlexMailerSystemTest.testHtmlWithOpenAndUrlTracking
Civi\FlexMailer\FlexMailerSystemTest.testUrlTracking with data set #0
Civi\FlexMailer\FlexMailerSystemTest.testUrlTracking with data set #1
Civi\FlexMailer\FlexMailerSystemTest.testUrlTracking with data set #2
Civi\FlexMailer\FlexMailerSystemTest.testUrlTracking with data set #3
Civi\FlexMailer\FlexMailerSystemTest.testUrlTracking with data set #4
Civi\FlexMailer\FlexMailerSystemTest.testUrlTracking with data set #5
Civi\FlexMailer\FlexMailerSystemTest.testUrlTracking with data set "url_trackin_enabled"
Civi\FlexMailer\FlexMailerSystemTest.testUrlTracking with data set #6
Civi\FlexMailer\FlexMailerSystemTest.testUrlTracking with data set #7
Civi\FlexMailer\FlexMailerSystemTest.testUrlTracking with data set #8
Civi\FlexMailer\MailingPreviewTest.testMailerPreview
Civi\FlexMailer\MailingPreviewTest.testMailerPreviewWithoutId
Civi\FlexMailer\ValidatorTest.testExamples with data set #0
Civi\FlexMailer\ValidatorTest.testExamples with data set #1
Civi\FlexMailer\ValidatorTest.testExamples with data set #4
Civi\FlexMailer\ValidatorTest.testExamples with data set #5
```https://lab.civicrm.org/dev/core/-/issues/4187AJAX error when sorting soft credit by name or date2023-03-17T00:27:07ZStoobAJAX error when sorting soft credit by name or dateTo reproduce:
- View the Contribution tab of a Contact with Soft Credits [such as this one on dmaster](https://dmaster.demo.civicrm.org/civicrm/contact/view?reset=1&cid=150&selectedChild=contribute)
- click the Contributor or Received a...To reproduce:
- View the Contribution tab of a Contact with Soft Credits [such as this one on dmaster](https://dmaster.demo.civicrm.org/civicrm/contact/view?reset=1&cid=150&selectedChild=contribute)
- click the Contributor or Received arrows in Soft Credit section and attempt sort
- observe Ajax error `DataTables warning: table id=DataTables_Table_0` and/or `Invalid field 'contribution.receive_date'` in the black popup5.59.4https://lab.civicrm.org/dev/core/-/issues/4186Label in custom Contact Reference Autocomplete field are completely off2023-03-15T01:30:37ZsamuelsovLabel in custom Contact Reference Autocomplete field are completely offReproduced in dmaster v5.61.alpha1
To reproduce :
- create a Contact Reference custom field
- when you try to use the automplete, the labels displayed doesn't correspond to a contact (seems like values from the civicrm_option_value tabl...Reproduced in dmaster v5.61.alpha1
To reproduce :
- create a Contact Reference custom field
- when you try to use the automplete, the labels displayed doesn't correspond to a contact (seems like values from the civicrm_option_value table)
![Peek_14-03-2023_15-49](/uploads/53fa404300c21a44ea6f8cebe955488a/Peek_14-03-2023_15-49.gif)
Likely related to the new Entity reference.5.60.0samuelsovsamuelsovhttps://lab.civicrm.org/dev/core/-/issues/4185Single quote in contribution amount label breaks text receipt emails2023-11-23T07:47:01Zchrisgaraffachris@aghstrategies.comSingle quote in contribution amount label breaks text receipt emailsSteps to reproduce:
- Configure a confirmation page to use contribution amounts without a price set.
- Have a single quote in a Contribution Label. Example: "Provides a family with a month's worth of groceries"
- Make a contribution sele...Steps to reproduce:
- Configure a confirmation page to use contribution amounts without a price set.
- Have a single quote in a Contribution Label. Example: "Provides a family with a month's worth of groceries"
- Make a contribution selecting that contribution option
Expected result:
- Contribution receipt email is sent
Actual result:
- PHP error: `"Message was not parsed due to invalid smarty syntax : Smarty error: [in evaluated template line 55]: syntax error: (secure mode) 's' not allowed in if statement (Smarty_Compiler.class.php, line 1398)"`
Can also be triggered by finding the contribution and sending a receipt email.
Full PHP error details from ConfigAndLog: https://lab.civicrm.org/-/snippets/86
Observations:
- This line in the default Contributions - Receipt (on-line) text template seems to be the issue: `{ts}Amount{/ts}: {contribution.total_amount} {if '{contribution.amount_level}'} - {contribution.amount_level}{/if}`
- Adding `{assign var="contributionAmountLevel" value="{contribution.amount_level}"}` and then changing that line to `{ts}Amount{/ts}: {contribution.total_amount} {if $contributionAmountLevel} - {contribution.amount_level}{/if}` is a workaround
- Doesn't seem to be an issue if a Price Set is used where the label has the same character.
- I was able to reproduce on 5.59.2, 5.58.1, 5.56.2, 5.49.5https://lab.civicrm.org/dev/core/-/issues/4184Import search authorization issues2023-03-18T05:09:28ZeileenImport search authorization issuesI've hit an issue where the api validation fails to the point of crashing the SearchKit main screen when `UserJob` records exist that the user does not have access to
To replicate log in as admin, enable Civi-Import & run an import (pre...I've hit an issue where the api validation fails to the point of crashing the SearchKit main screen when `UserJob` records exist that the user does not have access to
To replicate log in as admin, enable Civi-Import & run an import (preferably testing one of my open import PRs in process :-). Then log out, and log in as demo user & try to load the SearchKit page
The issue is some of the imports are unavailable & the chained call here throws an Authorization error that is not caught.
https://github.com/civicrm/civicrm-core/blob/f7594387fc2134c3cd0f6ae093843bbfe5e58847/ext/search_kit/Civi/Search/Admin.php#L128-L134
@colemanw am looking for help on this & also ideally on tweaking this permission check
https://github.com/civicrm/civicrm-core/blob/d26dffa0597aecc903558dd8aaca5cfb392d88dd/CRM/Core/BAO/UserJob.php#L99-L101
to require EITHER a current user match OR is_template = 1
The alternative would be to blank `created_id` for templates - but it still feels like useful info. The template gitlab is https://lab.civicrm.org/dev/core/-/issues/4130
UPDATE
dang -hitting the same on explorer
![image](/uploads/fb6cf98cbd265245e4f1da8953ff2493/image.png)5.61.0https://lab.civicrm.org/dev/core/-/issues/4183API4 Explorer: OOP "save" code is incorrect2023-03-15T15:29:37ZJonGoldAPI4 Explorer: OOP "save" code is incorrectSteps to replicate:
* Go to https://dmaster.demo.civicrm.org/civicrm/api4#/explorer/Contribution/save?records=%2212345%22
If you go directly to it via the URL, the example PHP OOP code doesn't reflect any changes in the "Records" input....Steps to replicate:
* Go to https://dmaster.demo.civicrm.org/civicrm/api4#/explorer/Contribution/save?records=%2212345%22
If you go directly to it via the URL, the example PHP OOP code doesn't reflect any changes in the "Records" input. If you navigate to API Explorer and try to replicate, it will try to add a new record for every character in the "Records" input.https://lab.civicrm.org/dev/core/-/issues/4182Create a generic copy or clone api2023-03-17T07:50:37ZeileenCreate a generic copy or clone apiThis is a spin off of https://lab.civicrm.org/dev/core/-/issues/4130
I was looking at supporting import job templates & thought a clone or copy api makes sense.
I'm no longer prioritising this part & I think putting the code in the fo...This is a spin off of https://lab.civicrm.org/dev/core/-/issues/4130
I was looking at supporting import job templates & thought a clone or copy api makes sense.
I'm no longer prioritising this part & I think putting the code in the form layer or BAO layer for the specific entity is enouugh for now.
In order to clone the job the code looks something like
```
$userJob = UserJob::get()->addWhere('id', '=', $templateID)->execute()->first();
unset($userJob['metadata']['DataSource']['table_name'], $userJob['metadata']['submitted_values']['uploadFile'], $userJob['id'], $userJob['created_id'], $userJob['created_date'], $userJob['expires_date']);
$userJobID = UserJob::create(FALSE)->setValues($userJob)->execute()->first()['id'];
```
I feel like there is a case for a generic `Copy` api - in the `DAO` we have [a function with a signature that I think is probably 'a bit much'](https://github.com/civicrm/civicrm-core/blob/8bf6c5853cf76da43765cd8ef79d4323a442f350/CRM/Core/DAO.php#L1845-L1868) - so it might make sense to migrate to a new function... & create a generic API
I checked what Entities implement `Copy` and found a handful -the non static ones are not in the BAO - so we just have one non-std signature which is unused https://github.com/civicrm/civicrm-core/pull/25594
![image](/uploads/c4e1bbdf63fb79efaa06b03bca44fde4/image.png)
One option would be to add a parameter to the schema eg.
'is_not_clonable'
And then we could add that to fields like `created_id` and they would not need to be in the params. We already have the title of the entity so can assume that should be prefixed with `Copy Of`. The `UserJob` would have to override to set some of the deeper values