Skip to content

Commit

Permalink
Snowfakery Add
Browse files Browse the repository at this point in the history
Add Snowfakery functionality to allow for low ratio testing on standard and custom objects.
  • Loading branch information
NickersUMN committed Feb 7, 2024
1 parent 56aa28e commit 98a8971
Show file tree
Hide file tree
Showing 2 changed files with 138 additions and 24 deletions.
10 changes: 9 additions & 1 deletion cumulusci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ project:
package:
name: Declarative Lookup Rollup Summaries Tool
namespace: dlrs
api_version: "59.0"
api_version: "58.0"
git:
repo_url: https://github.com/SFDO-Community/declarative-lookup-rollup-summaries
prefix_beta: beta/
Expand Down Expand Up @@ -128,6 +128,14 @@ orgs:
config_file: orgs/dev.json
namespaced: True
days: 7

tasks:
snowfakery_lowratio:
description: Create a sample dataset for main objects in CSOM EDA org
class_path: cumulusci.tasks.bulkdata.snowfakery.Snowfakery
options:
recipe: datasets/qa/snowfakerylowratio.yml

plans:
install:
slug: install
Expand Down
152 changes: 129 additions & 23 deletions datasets/qa/snowfakerylowratio.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,25 @@
Nurturing: 20%
Qualified: 10%
Unqualified: 10%
#Campaigns added independently of Contacts
#Outlier Campaign with Responses
- object: Campaign
count: 1
nickname: CampaignResponded
fields:
Name: ${{fake.Text(max_nb_chars = 25)}} Responded
IsActive: TRUE
Status: Completed
StartDate:
date_between:
start_date: -1y
end_date: today
EndDate:
date_between:
start_date: ${{StartDate}}
end_date: today
- object: Campaign
nickname: Campaign1
count: 10
nickname: CampaignSent
fields:
Name: ${{fake.Text(max_nb_chars = 25)}}
IsActive: TRUE
Expand All @@ -60,29 +75,46 @@
start_date: ${{StartDate}}
end_date: +1y
#QA Lookup Parent Record to be referenced later for Second Lookup on Child
- object: QALookupParent__c
nickname: CustomParent2
- object: QALookupParent__c
count: 1
nickname: CustomParent2
fields:
Name: QALookupParent2
#QA Lookup Parent Record that will have child QA Lookup Parent
- object: QALookupParent__c
nickname: CustomParentTop
count: 1
nickname: CustomParentTop
fields:
Name: QALookupParentTop
friends:
- object: QALookupParent__c
nickname: CustomParentwithChild
count: 1
nickname: CustomParentwithChild
fields:
Name: QALookupParentwithChild
Self_Relationship__c:
reference: CustomParentTop
friends:
#Outlier QA Lookup Child with Low Amount and No Parent Lookup 2
- object: QALookupChild__c
count: 6
nickname: CustomChild
fields:
Name: ${{fake.Text(max_nb_chars = 25)}}
Amount__c: 7
Color__c:
random_choice:
- Red
- Yellow
- Green
- Blue
Description__c: ${{fake.Text(max_nb_chars = 200)}}
Description2__c: ${{fake.Text(max_nb_chars = 200)}}
LookupParent__c:
reference: CustomParentwithChild
- object: QALookupChild__c
count: 5
nickname: CustomChild
fields:
Name: ${{fake.Text(max_nb_chars = 25)}}
Amount__c: 1000
Expand All @@ -98,12 +130,31 @@
reference: CustomParentwithChild
LookupParent2__c:
reference: CustomParent2
- object: Account
count: 1
nickname: ParentAccount
fields:
Name:
fake: Company
NumberOfEmployees: 10
BillingStreet:
fake: street_address
BillingCity:
fake: city
BillingState:
fake: state
BillingPostalCode:
fake: postalcode
BillingCountry: United States
- object: Account
count: 20
nickname: BusinessOrganization
fields:
Name:
fake: Company
ParentId:
reference: ParentAccount
NumberOfEmployees: 10
BillingStreet:
fake: street_address
BillingCity:
Expand Down Expand Up @@ -147,24 +198,78 @@
start_date: -1y
end_date: today
friends:
#Outlier Campaign with Responses
- object: CampaignMember
count: 5 #5 campaign members for every contact
count: 1
fields:
ContactId:
reference: Person
CampaignId:
random_reference:
to: Campaign1
to: CampaignResponded
parent: Person
unique: True
Status: Responded
- object: CampaignMember
count: 4 #4 campaign members for every contact
fields:
ContactId:
reference: Person
CampaignId:
random_reference:
to: CampaignSent
parent: Person
unique: True
Status: Sent
#Outlier Closed Case
- object: Case
count: 1
nickname: ClosedCase
fields:
AccountId:
reference: BusinessOrganization
ContactId:
reference: Person
Origin: Web
Reason: Equipment Design
Status: Closed
Subject: The ${{Contact.Lastname}} Closed Case
#Parent Case
- object: Case
count: 1
nickname: ParentCase
fields:
AccountId:
reference: BusinessOrganization
ContactId:
reference: Person
Origin: Web
Reason: Equipment Design
Status: Closed
Subject: The ${{Contact.Lastname}} Parent Case
#QA Lookup Parent Record to with lookups to Account and Case
friends:
- object: QALookupParent__c
count: 1
nickname: CustomParentAcctCase
fields:
Name: QALookupParentAcctCase
Account__c:
reference: ParentAccount
Case__c:
reference: ParentCase
- object: Case
count: 3 #3 cases for every contact
nickname: CasewithReferences
fields:
AccountId:
reference: BusinessOrganization
ContactId:
reference: Person
ParentId:
reference: ParentCase
QA_Lookup_Parent__c:
reference: CustomParentwithChild
Origin:
random_choice:
- Phone
Expand All @@ -179,40 +284,41 @@
Equipment Design: 20%
Status:
random_choice:
New: 20%
Working: 30%
Escalated: 30%
Closed: 20%
New: 30%
Working: 35%
Escalated: 35%
Subject: The ${{Contact.Lastname}} ${{Case.Reason}} Case
#Outlier Opportunity with High Amount
- object: Opportunity
count: 1
fields:
name: The ${{Contact.Lastname}} Biggest Opportunity
AccountId:
reference: BusinessOrganization
Stagename: Closed Won
CloseDate:
date_between:
start_date: -1y
end_date: today
Amount: 100000
AccountId:
reference: BusinessOrganization
name: The ${{Contact.Lastname}} Biggest Opportunity
- object: Opportunity
count: 3 #5 opportunities for every contact
count: 3 #3 opportunities for every contact
fields:
name: The ${{Contact.Lastname}} Opportunity
AccountId:
reference: BusinessOrganization
QA_Lookup_Parent__c:
reference: CustomParentwithChild
Stagename:
random_choice:
Prospecting: 30%
Qualification: 30%
Closed Won: 20%
Prospecting: 40%
Qualification: 40%
Closed Lost: 20%
CloseDate:
date_between:
start_date: -1y
end_date: today
Amount: 1000
AccountId:
reference: BusinessOrganization
name: The ${{Contact.Lastname}} Opportunity
friends:
- object: OpportunityContactRole
fields:
Expand All @@ -226,4 +332,4 @@
Decision Maker: 20%
Economic Buyer: 20%
Economic Decision Maker: 20%
Evaluator: 20%
Evaluator: 20%

0 comments on commit 98a8971

Please sign in to comment.