Merge branch 'develop' of https://github.com/Safelite/DigitalConsumer.ISS into feature/INSR-2140
This commit is contained in:
commit
c73029763c
45 changed files with 2195 additions and 315 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -24,7 +24,6 @@ pnpm-debug.log*
|
||||||
|
|
||||||
# Playwright
|
# Playwright
|
||||||
/test-results/
|
/test-results/
|
||||||
/ortoni-report/
|
|
||||||
/playwright-report/
|
/playwright-report/
|
||||||
/blob-report/
|
/blob-report/
|
||||||
/playwright/.cache/
|
/playwright/.cache/
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
FROM node:20
|
FROM node:16
|
||||||
|
|
||||||
FROM mcr.microsoft.com/playwright:v1.48.0-noble
|
FROM mcr.microsoft.com/playwright:v1.48.0-noble
|
||||||
|
|
||||||
|
|
@ -12,10 +12,10 @@ COPY package*.json ./
|
||||||
RUN npm install
|
RUN npm install
|
||||||
|
|
||||||
# Install Playwright browsers
|
# Install Playwright browsers
|
||||||
RUN npx playwright install chromium --with-deps
|
RUN npx playwright install --with-deps
|
||||||
|
|
||||||
# Install jq
|
|
||||||
RUN apt-get install -y jq
|
|
||||||
|
|
||||||
# Copy the rest of the application code
|
# Copy the rest of the application code
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
|
# Run Playwright tests
|
||||||
|
CMD ["npx", "playwright", "test"]
|
||||||
|
|
|
||||||
|
|
@ -90,6 +90,7 @@ stages:
|
||||||
"npx wait-on http://localhost:8080 && npm run test:playwright -- --shard=$(shardNumber)/$(totalShards) --reporter=list,blob --grep \"@smoke | @Advanced\"")
|
"npx wait-on http://localhost:8080 && npm run test:playwright -- --shard=$(shardNumber)/$(totalShards) --reporter=list,blob --grep \"@smoke | @Advanced\"")
|
||||||
|
|
||||||
# Start container and stream logs
|
# Start container and stream logs
|
||||||
|
|
||||||
echo "Starting tests for shard $(shardNumber)..."
|
echo "Starting tests for shard $(shardNumber)..."
|
||||||
docker start -a $container_id
|
docker start -a $container_id
|
||||||
|
|
||||||
|
|
@ -126,6 +127,8 @@ stages:
|
||||||
condition: always()
|
condition: always()
|
||||||
|
|
||||||
- job: download_and_merge_reports
|
- job: download_and_merge_reports
|
||||||
|
container:
|
||||||
|
image: mcr.microsoft.com/playwright:v1.48.0-noble
|
||||||
dependsOn: playwright_tests
|
dependsOn: playwright_tests
|
||||||
timeoutInMinutes: 8
|
timeoutInMinutes: 8
|
||||||
cancelTimeoutInMinutes: 10
|
cancelTimeoutInMinutes: 10
|
||||||
|
|
@ -192,23 +195,19 @@ stages:
|
||||||
# inputs:
|
# inputs:
|
||||||
# searchFolder: 'test-results'
|
# searchFolder: 'test-results'
|
||||||
# testResultsFormat: 'JUnit'
|
# testResultsFormat: 'JUnit'
|
||||||
# testResultsFiles: 'junit_results.xml'
|
# testResultsFiles: 'results.xml'
|
||||||
# mergeTestResults: true
|
# mergeTestResults: true
|
||||||
# failTaskOnFailedTests: false
|
# failTaskOnFailedTests: false
|
||||||
# testRunTitle: 'Playwright Tests'
|
# testRunTitle: 'Playwright Tests'
|
||||||
# condition: succeededOrFailed()
|
# condition: succeededOrFailed()
|
||||||
|
|
||||||
- task: PublishPipelineArtifact@1
|
- task: PublishPipelineArtifact@1
|
||||||
displayName: 'Publish Merged Report'
|
displayName: 'Publish Merged Report'
|
||||||
condition: always()
|
condition: always()
|
||||||
inputs:
|
inputs:
|
||||||
targetPath: '$(System.DefaultWorkingDirectory)/ortoni-report'
|
targetPath: '$(System.DefaultWorkingDirectory)/ortoni-report'
|
||||||
artifact: 'playwright-merged-report'
|
artifact: 'playwright-merged-report'
|
||||||
publishLocation: 'pipeline'
|
publishLocation: 'pipeline'
|
||||||
- script: |
|
|
||||||
docker rmi $(dockerImageName):$(imageTag) -f
|
|
||||||
displayName: 'Cleanup Docker Image'
|
|
||||||
condition: always()
|
|
||||||
|
|
||||||
- ${{ else }}:
|
- ${{ else }}:
|
||||||
# Dev Build/Deploy
|
# Dev Build/Deploy
|
||||||
|
|
|
||||||
|
|
@ -1,149 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
create_issue() {
|
|
||||||
local title="$1"
|
|
||||||
local project_key="$2"
|
|
||||||
local issue_type="$3"
|
|
||||||
local parent_issue_key="$4"
|
|
||||||
|
|
||||||
AUTH=$(echo -ne "$JIRA_USERNAME:$JIRA_API_KEY" | base64 --wrap 0)
|
|
||||||
|
|
||||||
local parent_issue=$(curl -s -H "Authorization: Basic $AUTH" \
|
|
||||||
"$JIRA_SERVER/rest/api/3/issue/$parent_issue_key")
|
|
||||||
|
|
||||||
local parent_fix_versions=$(echo $parent_issue | jq -r '.fields.fixVersions')
|
|
||||||
|
|
||||||
local created_issue=$(curl -X POST -H "Content-Type: application/json" \
|
|
||||||
-H "Authorization: Basic $AUTH" \
|
|
||||||
-d '{
|
|
||||||
"fields": {
|
|
||||||
"summary": "'"$title"'",
|
|
||||||
"project": {
|
|
||||||
"key": "'"$project_key"'"
|
|
||||||
},
|
|
||||||
"issuetype": {
|
|
||||||
"name": "'"$issue_type"'"
|
|
||||||
},
|
|
||||||
"parent": {
|
|
||||||
"key": "'"$parent_issue_key"'"
|
|
||||||
},
|
|
||||||
"fixVersions": '"$parent_fix_versions"'
|
|
||||||
}
|
|
||||||
}' \
|
|
||||||
"$JIRA_SERVER/rest/api/3/issue")
|
|
||||||
|
|
||||||
local created_issue_id=$(echo $created_issue | jq -r '.id')
|
|
||||||
|
|
||||||
curl -X PUT -H "Content-Type: application/json" \
|
|
||||||
-H "Authorization: Basic $AUTH" \
|
|
||||||
-d '{
|
|
||||||
"fields": {
|
|
||||||
"fixVersions": '"$parent_fix_versions"'
|
|
||||||
}
|
|
||||||
}' \
|
|
||||||
"$JIRA_SERVER/rest/api/3/issue/$created_issue_id"
|
|
||||||
}
|
|
||||||
|
|
||||||
extract_uuid() {
|
|
||||||
local url="$1"
|
|
||||||
local uuid_regex='[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'
|
|
||||||
if [[ "$url" =~ $uuid_regex ]]; then
|
|
||||||
echo "${BASH_REMATCH}"
|
|
||||||
else
|
|
||||||
echo "No UUID found in the URL."
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
update_issue_status() {
|
|
||||||
local issue_key="$1"
|
|
||||||
local status_name="$2"
|
|
||||||
|
|
||||||
AUTH=$(echo -ne "$JIRA_USERNAME:$JIRA_API_KEY" | base64 --wrap 0)
|
|
||||||
|
|
||||||
local transitions=$(curl -s -H "Authorization: Basic $AUTH" \
|
|
||||||
"$JIRA_SERVER/rest/api/3/issue/$issue_key/transitions")
|
|
||||||
|
|
||||||
local transition_id=$(echo "$transitions" | jq -r --arg status_name "$status_name" '
|
|
||||||
.transitions[] | select(.isAvailable == true and .to.name == $status_name) | .id
|
|
||||||
')
|
|
||||||
|
|
||||||
if [ -z "$transition_id" ]; then
|
|
||||||
echo "BadRequestError"
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
curl -X POST -H "Content-Type: application/json" \
|
|
||||||
-H "Authorization: Basic $AUTH" \
|
|
||||||
-d '{
|
|
||||||
"transition": {
|
|
||||||
"id": "'"$transition_id"'"
|
|
||||||
}
|
|
||||||
}' \
|
|
||||||
"$JIRA_SERVER/rest/api/3/issue/$issue_key/transitions"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
add_attachments() {
|
|
||||||
AUTH=$(echo -ne "$JIRA_USERNAME:$JIRA_API_KEY" | base64 --wrap 0)
|
|
||||||
|
|
||||||
local issue_key="$1"
|
|
||||||
shift
|
|
||||||
local attachments=("$@")
|
|
||||||
|
|
||||||
echo $issue_key
|
|
||||||
echo $attachments
|
|
||||||
|
|
||||||
local form_data=""
|
|
||||||
for attachment in "${attachments[@]}"; do
|
|
||||||
form_data+="--form file=@$attachment "
|
|
||||||
done
|
|
||||||
|
|
||||||
echo $form_data
|
|
||||||
|
|
||||||
echo $(curl -X POST $form_data \
|
|
||||||
-H "X-Atlassian-Token: no-check" \
|
|
||||||
-H "Authorization: Basic $AUTH" \
|
|
||||||
"$JIRA_SERVER/rest/api/3/issue/$issue_key/attachments")
|
|
||||||
}
|
|
||||||
|
|
||||||
add_comment() {
|
|
||||||
AUTH=$(echo -ne "$JIRA_USERNAME:$JIRA_API_KEY" | base64 --wrap 0)
|
|
||||||
local issue_key="$1"
|
|
||||||
shift
|
|
||||||
local comment_items_input=("$@")
|
|
||||||
local comment_json="[]"
|
|
||||||
|
|
||||||
for item in "${comment_items_input[@]}"; do
|
|
||||||
if [ -e "$item" ]; then
|
|
||||||
# If it's a file path
|
|
||||||
local attachment=$(add_attachments "$issue_key" "$item")
|
|
||||||
local id=$(echo $attachment | grep -oP '"id":\s*"\K[^"]+')
|
|
||||||
|
|
||||||
local attachment_content=$(curl -s -I -L -H "Authorization: Basic $AUTH" "$JIRA_SERVER/rest/api/3/attachment/content/$id" \
|
|
||||||
| grep -i "Location:" | tail -1 | awk '{print $2}' | tr -d '\r')
|
|
||||||
echo "$JIRA_SERVER/rest/api/3/attachment/content/$id"
|
|
||||||
echo "$attachment_content"
|
|
||||||
|
|
||||||
local uuid=$(extract_uuid "$attachment_content")
|
|
||||||
echo "$uuid"
|
|
||||||
|
|
||||||
json_object=$(jq -n --arg uuid "$uuid" '{ type: "mediaSingle", attrs: { layout: "align-start" }, content: [{ type: "media", attrs: { type: "file", id: $uuid, width: 200, height: 200, collection: "", alt: "" } }]}')
|
|
||||||
|
|
||||||
comment_json=$(echo "$comment_json" | jq --argjson obj "$json_object" '. += [$obj]')
|
|
||||||
else
|
|
||||||
# If it's a string
|
|
||||||
json_object=$(jq -n --arg text "$item" '{ type: "paragraph", content: [{ type: "text", text: $text }]}')
|
|
||||||
|
|
||||||
comment_json=$(echo "$comment_json" | jq --argjson obj "$json_object" '. += [$obj]')
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
request=$(jq -n --argjson content "$comment_json" '{body: { type: "doc", version: 1, content: $content }}')
|
|
||||||
|
|
||||||
curl -X POST -H "Content-Type: application/json" \
|
|
||||||
-H "Authorization: Basic $AUTH" \
|
|
||||||
-d "$request" \
|
|
||||||
"$JIRA_SERVER/rest/api/3/issue/$issue_key/comment"
|
|
||||||
}
|
|
||||||
|
|
||||||
if [[ $# -gt 0 ]]; then # IF function call passed in
|
|
||||||
"$@" # Call function
|
|
||||||
fi
|
|
||||||
|
|
@ -22,7 +22,10 @@ const policySoapByScenario: { [x: string]: string } = {
|
||||||
'0018a': '<soapenv:Envelope xmlns:soapenv= \"http://schemas.xmlsoap.org/soap/envelope/\"> <soapenv:Body> <se:policySearchResponse xmlns:_xml= \"http://www.ACORD.org/standards/PC_Surety/ACORD1/xml/\" xmlns:se= \"http://pm.lmig.com/cl/PolicyServicesMediationModule/iAcordPolicySearch\"> <_xml:ACORD> <_xml:SignonRs> <_xml:CustId> <_xml:SPName>Safelite</_xml:SPName> <_xml:CustPermId>00005</_xml:CustPermId> </_xml:CustId> <_xml:ClientDt>2023-12-11T21:27:05Z</_xml:ClientDt> <_xml:CustLangPref>EN</_xml:CustLangPref> <_xml:ClientApp> <_xml:Org>Liberty Mutual</_xml:Org> <_xml:Name>PM CNG</_xml:Name> <_xml:Version>1.0</_xml:Version> </_xml:ClientApp> <_xml:ServerDt>2023-12-11T21:27:05Z</_xml:ServerDt> <_xml:Language>EN</_xml:Language> </_xml:SignonRs> <_xml:InsuranceSvcRs> <_xml:RqUID>df38d1a8-f583-4ee6-a23d-950c1930c150</_xml:RqUID> <_xml:PolicyInqRs> <_xml:RqUID>df38d1a8-f583-4ee6-a23d-950c1930c150</_xml:RqUID> <_xml:TransactionResponseDt>2023-12-11T21:27:05Z</_xml:TransactionResponseDt> <_xml:MsgStatus> <_xml:MsgStatusCd>Success</_xml:MsgStatusCd> </_xml:MsgStatus> <_xml:AsOfDt>2023-01-01</_xml:AsOfDt> <_xml:Requestor id= \"RequestorId_1\" /> <_xml:PartyInqInfo> <_xml:InsuredOrPrincipal id= \"InsuredOrPrincipalId_1\" /> </_xml:PartyInqInfo> <_xml:PolInfo> <_xml:PersAutoPolicy id= \"PersAutoPolicyID_1\"> <_xml:InsuredOrPrincipal> <_xml:GeneralPartyInfo> <_xml:NameInfo> <_xml:PersonName> <_xml:Surname>${lastName}</_xml:Surname> <_xml:GivenName>${firstName}</_xml:GivenName> </_xml:PersonName> </_xml:NameInfo> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> <_xml:Communications> <_xml:PhoneInfo> <_xml:PhoneTypeCd>Home</_xml:PhoneTypeCd> <_xml:PhoneNumber>${phoneNumber}</_xml:PhoneNumber> </_xml:PhoneInfo> </_xml:Communications> </_xml:GeneralPartyInfo> <_xml:InsuredOrPrincipalInfo> <_xml:InsuredOrPrincipalRoleCd>primary</_xml:InsuredOrPrincipalRoleCd> <_xml:PersonInfo> <_xml:GenderCd>F</_xml:GenderCd> </_xml:PersonInfo> </_xml:InsuredOrPrincipalInfo> </_xml:InsuredOrPrincipal> <_xml:PersPolicy> <_xml:PolicyNumber>${policyNumber}</_xml:PolicyNumber> <_xml:PolicyVersion>GRS</_xml:PolicyVersion> <_xml:CompanyProductCd>liberty</_xml:CompanyProductCd> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:ControllingStateProvCd>CT</_xml:ControllingStateProvCd> <_xml:ContractTerm> <_xml:EffectiveDt>2022-12-21</_xml:EffectiveDt> <_xml:ExpirationDt>2099-12-21</_xml:ExpirationDt> </_xml:ContractTerm> <_xml:GroupId>000</_xml:GroupId> <_xml:MiscParty> <_xml:ItemIdInfo> <_xml:InsurerId>998281163922817</_xml:InsurerId> </_xml:ItemIdInfo> </_xml:MiscParty> </_xml:PersPolicy> <_xml:Location> <_xml:ItemIdInfo id= \"ItemIdInfoId_1\" /> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> </_xml:Location> <_xml:PersAutoLineBusiness> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:PersVeh> <_xml:ItemIdInfo> <_xml:InsurerId>1</_xml:InsurerId> </_xml:ItemIdInfo> <_xml:Manufacturer>SBRU</_xml:Manufacturer> <_xml:Model>Outback</_xml:Model> <_xml:ModelYear>2021</_xml:ModelYear> <_xml:Registration> <_xml:RegistrationId>UNKNOWN</_xml:RegistrationId> <_xml:StateProvCd>CT</_xml:StateProvCd> </_xml:Registration> <_xml:VehIdentificationNumber>4S4BTAFC7M3163249</_xml:VehIdentificationNumber> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>service_level_ind</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>parking_guard</_xml:CoverageCd> </_xml:VehRateGroupInfo> </_xml:PersVeh> </_xml:PersAutoLineBusiness> <_xml:RemarkText id= \"endorsementId_1\" IdRef= \"PersAutoPolicyID_1\">000</_xml:RemarkText> <_xml:PolicySummaryInfo> <_xml:PolicyStatusCd>ACTIVE</_xml:PolicyStatusCd> </_xml:PolicySummaryInfo> </_xml:PersAutoPolicy> </_xml:PolInfo> </_xml:PolicyInqRs> </_xml:InsuranceSvcRs> </_xml:ACORD> </se:policySearchResponse> </soapenv:Body> </soapenv:Envelope>',
|
'0018a': '<soapenv:Envelope xmlns:soapenv= \"http://schemas.xmlsoap.org/soap/envelope/\"> <soapenv:Body> <se:policySearchResponse xmlns:_xml= \"http://www.ACORD.org/standards/PC_Surety/ACORD1/xml/\" xmlns:se= \"http://pm.lmig.com/cl/PolicyServicesMediationModule/iAcordPolicySearch\"> <_xml:ACORD> <_xml:SignonRs> <_xml:CustId> <_xml:SPName>Safelite</_xml:SPName> <_xml:CustPermId>00005</_xml:CustPermId> </_xml:CustId> <_xml:ClientDt>2023-12-11T21:27:05Z</_xml:ClientDt> <_xml:CustLangPref>EN</_xml:CustLangPref> <_xml:ClientApp> <_xml:Org>Liberty Mutual</_xml:Org> <_xml:Name>PM CNG</_xml:Name> <_xml:Version>1.0</_xml:Version> </_xml:ClientApp> <_xml:ServerDt>2023-12-11T21:27:05Z</_xml:ServerDt> <_xml:Language>EN</_xml:Language> </_xml:SignonRs> <_xml:InsuranceSvcRs> <_xml:RqUID>df38d1a8-f583-4ee6-a23d-950c1930c150</_xml:RqUID> <_xml:PolicyInqRs> <_xml:RqUID>df38d1a8-f583-4ee6-a23d-950c1930c150</_xml:RqUID> <_xml:TransactionResponseDt>2023-12-11T21:27:05Z</_xml:TransactionResponseDt> <_xml:MsgStatus> <_xml:MsgStatusCd>Success</_xml:MsgStatusCd> </_xml:MsgStatus> <_xml:AsOfDt>2023-01-01</_xml:AsOfDt> <_xml:Requestor id= \"RequestorId_1\" /> <_xml:PartyInqInfo> <_xml:InsuredOrPrincipal id= \"InsuredOrPrincipalId_1\" /> </_xml:PartyInqInfo> <_xml:PolInfo> <_xml:PersAutoPolicy id= \"PersAutoPolicyID_1\"> <_xml:InsuredOrPrincipal> <_xml:GeneralPartyInfo> <_xml:NameInfo> <_xml:PersonName> <_xml:Surname>${lastName}</_xml:Surname> <_xml:GivenName>${firstName}</_xml:GivenName> </_xml:PersonName> </_xml:NameInfo> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> <_xml:Communications> <_xml:PhoneInfo> <_xml:PhoneTypeCd>Home</_xml:PhoneTypeCd> <_xml:PhoneNumber>${phoneNumber}</_xml:PhoneNumber> </_xml:PhoneInfo> </_xml:Communications> </_xml:GeneralPartyInfo> <_xml:InsuredOrPrincipalInfo> <_xml:InsuredOrPrincipalRoleCd>primary</_xml:InsuredOrPrincipalRoleCd> <_xml:PersonInfo> <_xml:GenderCd>F</_xml:GenderCd> </_xml:PersonInfo> </_xml:InsuredOrPrincipalInfo> </_xml:InsuredOrPrincipal> <_xml:PersPolicy> <_xml:PolicyNumber>${policyNumber}</_xml:PolicyNumber> <_xml:PolicyVersion>GRS</_xml:PolicyVersion> <_xml:CompanyProductCd>liberty</_xml:CompanyProductCd> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:ControllingStateProvCd>CT</_xml:ControllingStateProvCd> <_xml:ContractTerm> <_xml:EffectiveDt>2022-12-21</_xml:EffectiveDt> <_xml:ExpirationDt>2099-12-21</_xml:ExpirationDt> </_xml:ContractTerm> <_xml:GroupId>000</_xml:GroupId> <_xml:MiscParty> <_xml:ItemIdInfo> <_xml:InsurerId>998281163922817</_xml:InsurerId> </_xml:ItemIdInfo> </_xml:MiscParty> </_xml:PersPolicy> <_xml:Location> <_xml:ItemIdInfo id= \"ItemIdInfoId_1\" /> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> </_xml:Location> <_xml:PersAutoLineBusiness> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:PersVeh> <_xml:ItemIdInfo> <_xml:InsurerId>1</_xml:InsurerId> </_xml:ItemIdInfo> <_xml:Manufacturer>SBRU</_xml:Manufacturer> <_xml:Model>Outback</_xml:Model> <_xml:ModelYear>2021</_xml:ModelYear> <_xml:Registration> <_xml:RegistrationId>UNKNOWN</_xml:RegistrationId> <_xml:StateProvCd>CT</_xml:StateProvCd> </_xml:Registration> <_xml:VehIdentificationNumber>4S4BTAFC7M3163249</_xml:VehIdentificationNumber> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>service_level_ind</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>parking_guard</_xml:CoverageCd> </_xml:VehRateGroupInfo> </_xml:PersVeh> </_xml:PersAutoLineBusiness> <_xml:RemarkText id= \"endorsementId_1\" IdRef= \"PersAutoPolicyID_1\">000</_xml:RemarkText> <_xml:PolicySummaryInfo> <_xml:PolicyStatusCd>ACTIVE</_xml:PolicyStatusCd> </_xml:PolicySummaryInfo> </_xml:PersAutoPolicy> </_xml:PolInfo> </_xml:PolicyInqRs> </_xml:InsuranceSvcRs> </_xml:ACORD> </se:policySearchResponse> </soapenv:Body> </soapenv:Envelope>',
|
||||||
'0019a': '<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"> <soapenv:Body> <se:policySearchResponse xmlns:_xml=\"http://www.ACORD.org/standards/PC_Surety/ACORD1/xml/\" xmlns:se=\"http://pm.lmig.com/cl/PolicyServicesMediationModule/iAcordPolicySearch\"> <_xml:ACORD> <_xml:SignonRs> <_xml:CustId> <_xml:SPName>Safelite</_xml:SPName> <_xml:CustPermId>00005</_xml:CustPermId> </_xml:CustId> <_xml:ClientDt>2025-01-13T18:01:11Z</_xml:ClientDt> <_xml:CustLangPref>EN</_xml:CustLangPref> <_xml:ClientApp> <_xml:Org>Liberty Mutual</_xml:Org> <_xml:Name>PM CNG</_xml:Name> <_xml:Version>1.0</_xml:Version> </_xml:ClientApp> <_xml:ServerDt>2025-01-13T18:01:11Z</_xml:ServerDt> <_xml:Language>EN</_xml:Language> </_xml:SignonRs> <_xml:InsuranceSvcRs> <_xml:RqUID>5da3e764-374a-41e0-9baf-9fe76bbc4a6e</_xml:RqUID> <_xml:PolicyInqRs> <_xml:RqUID>5da3e764-374a-41e0-9baf-9fe76bbc4a6e</_xml:RqUID> <_xml:TransactionResponseDt>2025-01-13T18:01:11Z</_xml:TransactionResponseDt> <_xml:MsgStatus> <_xml:MsgStatusCd>Success</_xml:MsgStatusCd> </_xml:MsgStatus> <_xml:AsOfDt>2023-01-01</_xml:AsOfDt> <_xml:Requestor id=\"RequestorId_1\" /> <_xml:PartyInqInfo> <_xml:InsuredOrPrincipal id=\"InsuredOrPrincipalId_1\" /> </_xml:PartyInqInfo> <_xml:PolInfo> <_xml:PersAutoPolicy id=\"PersAutoPolicyID_1\"> <_xml:InsuredOrPrincipal> <_xml:GeneralPartyInfo> <_xml:NameInfo> <_xml:PersonName> <_xml:Surname>${lastName}</_xml:Surname> <_xml:GivenName>${firstName}</_xml:GivenName> </_xml:PersonName> </_xml:NameInfo> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> <_xml:Communications> <_xml:PhoneInfo> <_xml:PhoneTypeCd>Home</_xml:PhoneTypeCd> <_xml:PhoneNumber>${phoneNumber}</_xml:PhoneNumber> </_xml:PhoneInfo> </_xml:Communications> </_xml:GeneralPartyInfo> <_xml:InsuredOrPrincipalInfo> <_xml:InsuredOrPrincipalRoleCd>primary</_xml:InsuredOrPrincipalRoleCd> <_xml:PersonInfo> <_xml:GenderCd>M</_xml:GenderCd> </_xml:PersonInfo> </_xml:InsuredOrPrincipalInfo> </_xml:InsuredOrPrincipal> <_xml:PersPolicy> <_xml:PolicyNumber>${policyNumber}</_xml:PolicyNumber> <_xml:PolicyVersion>GRS</_xml:PolicyVersion> <_xml:CompanyProductCd>liberty</_xml:CompanyProductCd> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:ControllingStateProvCd>NH</_xml:ControllingStateProvCd> <_xml:ContractTerm> <_xml:EffectiveDt>2022-12-21</_xml:EffectiveDt> <_xml:ExpirationDt>2099-12-21</_xml:ExpirationDt> </_xml:ContractTerm> <_xml:GroupId>000</_xml:GroupId> <_xml:MiscParty> <_xml:ItemIdInfo> <_xml:InsurerId>998411168732470</_xml:InsurerId> </_xml:ItemIdInfo> </_xml:MiscParty> </_xml:PersPolicy> <_xml:Location> <_xml:ItemIdInfo id=\"ItemIdInfoId_1\" /> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> </_xml:Location> <_xml:PersAutoLineBusiness> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:PersVeh> <_xml:ItemIdInfo> <_xml:InsurerId>1</_xml:InsurerId> </_xml:ItemIdInfo> <_xml:Manufacturer>SBRU</_xml:Manufacturer> <_xml:Model>WRX</_xml:Model> <_xml:ModelYear>2021</_xml:ModelYear> <_xml:Registration> <_xml:RegistrationId>UNKNOWN</_xml:RegistrationId> <_xml:StateProvCd>NH</_xml:StateProvCd> </_xml:Registration> <_xml:VehIdentificationNumber>JF1VA1A63M9801802</_xml:VehIdentificationNumber> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>service_level_ind</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>parking_guard</_xml:CoverageCd> </_xml:VehRateGroupInfo> </_xml:PersVeh> </_xml:PersAutoLineBusiness> <_xml:RemarkText id=\"endorsementId_1\" IdRef=\"PersAutoPolicyID_1\">000</_xml:RemarkText> <_xml:PolicySummaryInfo> <_xml:PolicyStatusCd>ACTIVE</_xml:PolicyStatusCd> </_xml:PolicySummaryInfo> </_xml:PersAutoPolicy> </_xml:PolInfo> </_xml:PolicyInqRs> </_xml:InsuranceSvcRs> </_xml:ACORD> </se:policySearchResponse> </soapenv:Body> </soapenv:Envelope>',
|
'0019a': '<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"> <soapenv:Body> <se:policySearchResponse xmlns:_xml=\"http://www.ACORD.org/standards/PC_Surety/ACORD1/xml/\" xmlns:se=\"http://pm.lmig.com/cl/PolicyServicesMediationModule/iAcordPolicySearch\"> <_xml:ACORD> <_xml:SignonRs> <_xml:CustId> <_xml:SPName>Safelite</_xml:SPName> <_xml:CustPermId>00005</_xml:CustPermId> </_xml:CustId> <_xml:ClientDt>2025-01-13T18:01:11Z</_xml:ClientDt> <_xml:CustLangPref>EN</_xml:CustLangPref> <_xml:ClientApp> <_xml:Org>Liberty Mutual</_xml:Org> <_xml:Name>PM CNG</_xml:Name> <_xml:Version>1.0</_xml:Version> </_xml:ClientApp> <_xml:ServerDt>2025-01-13T18:01:11Z</_xml:ServerDt> <_xml:Language>EN</_xml:Language> </_xml:SignonRs> <_xml:InsuranceSvcRs> <_xml:RqUID>5da3e764-374a-41e0-9baf-9fe76bbc4a6e</_xml:RqUID> <_xml:PolicyInqRs> <_xml:RqUID>5da3e764-374a-41e0-9baf-9fe76bbc4a6e</_xml:RqUID> <_xml:TransactionResponseDt>2025-01-13T18:01:11Z</_xml:TransactionResponseDt> <_xml:MsgStatus> <_xml:MsgStatusCd>Success</_xml:MsgStatusCd> </_xml:MsgStatus> <_xml:AsOfDt>2023-01-01</_xml:AsOfDt> <_xml:Requestor id=\"RequestorId_1\" /> <_xml:PartyInqInfo> <_xml:InsuredOrPrincipal id=\"InsuredOrPrincipalId_1\" /> </_xml:PartyInqInfo> <_xml:PolInfo> <_xml:PersAutoPolicy id=\"PersAutoPolicyID_1\"> <_xml:InsuredOrPrincipal> <_xml:GeneralPartyInfo> <_xml:NameInfo> <_xml:PersonName> <_xml:Surname>${lastName}</_xml:Surname> <_xml:GivenName>${firstName}</_xml:GivenName> </_xml:PersonName> </_xml:NameInfo> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> <_xml:Communications> <_xml:PhoneInfo> <_xml:PhoneTypeCd>Home</_xml:PhoneTypeCd> <_xml:PhoneNumber>${phoneNumber}</_xml:PhoneNumber> </_xml:PhoneInfo> </_xml:Communications> </_xml:GeneralPartyInfo> <_xml:InsuredOrPrincipalInfo> <_xml:InsuredOrPrincipalRoleCd>primary</_xml:InsuredOrPrincipalRoleCd> <_xml:PersonInfo> <_xml:GenderCd>M</_xml:GenderCd> </_xml:PersonInfo> </_xml:InsuredOrPrincipalInfo> </_xml:InsuredOrPrincipal> <_xml:PersPolicy> <_xml:PolicyNumber>${policyNumber}</_xml:PolicyNumber> <_xml:PolicyVersion>GRS</_xml:PolicyVersion> <_xml:CompanyProductCd>liberty</_xml:CompanyProductCd> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:ControllingStateProvCd>NH</_xml:ControllingStateProvCd> <_xml:ContractTerm> <_xml:EffectiveDt>2022-12-21</_xml:EffectiveDt> <_xml:ExpirationDt>2099-12-21</_xml:ExpirationDt> </_xml:ContractTerm> <_xml:GroupId>000</_xml:GroupId> <_xml:MiscParty> <_xml:ItemIdInfo> <_xml:InsurerId>998411168732470</_xml:InsurerId> </_xml:ItemIdInfo> </_xml:MiscParty> </_xml:PersPolicy> <_xml:Location> <_xml:ItemIdInfo id=\"ItemIdInfoId_1\" /> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> </_xml:Location> <_xml:PersAutoLineBusiness> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:PersVeh> <_xml:ItemIdInfo> <_xml:InsurerId>1</_xml:InsurerId> </_xml:ItemIdInfo> <_xml:Manufacturer>SBRU</_xml:Manufacturer> <_xml:Model>WRX</_xml:Model> <_xml:ModelYear>2021</_xml:ModelYear> <_xml:Registration> <_xml:RegistrationId>UNKNOWN</_xml:RegistrationId> <_xml:StateProvCd>NH</_xml:StateProvCd> </_xml:Registration> <_xml:VehIdentificationNumber>JF1VA1A63M9801802</_xml:VehIdentificationNumber> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>service_level_ind</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>parking_guard</_xml:CoverageCd> </_xml:VehRateGroupInfo> </_xml:PersVeh> </_xml:PersAutoLineBusiness> <_xml:RemarkText id=\"endorsementId_1\" IdRef=\"PersAutoPolicyID_1\">000</_xml:RemarkText> <_xml:PolicySummaryInfo> <_xml:PolicyStatusCd>ACTIVE</_xml:PolicyStatusCd> </_xml:PolicySummaryInfo> </_xml:PersAutoPolicy> </_xml:PolInfo> </_xml:PolicyInqRs> </_xml:InsuranceSvcRs> </_xml:ACORD> </se:policySearchResponse> </soapenv:Body> </soapenv:Envelope>',
|
||||||
'0020a': '<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"> <soapenv:Body> <se:policySearchResponse xmlns:_xml=\"http://www.ACORD.org/standards/PC_Surety/ACORD1/xml/\" xmlns:se=\"http://pm.lmig.com/cl/PolicyServicesMediationModule/iAcordPolicySearch\"> <_xml:ACORD> <_xml:SignonRs> <_xml:CustId> <_xml:SPName>Safelite</_xml:SPName> <_xml:CustPermId>00005</_xml:CustPermId> </_xml:CustId> <_xml:ClientDt>2025-01-13T18:01:11Z</_xml:ClientDt> <_xml:CustLangPref>EN</_xml:CustLangPref> <_xml:ClientApp> <_xml:Org>Liberty Mutual</_xml:Org> <_xml:Name>PM CNG</_xml:Name> <_xml:Version>1.0</_xml:Version> </_xml:ClientApp> <_xml:ServerDt>2025-01-13T18:01:11Z</_xml:ServerDt> <_xml:Language>EN</_xml:Language> </_xml:SignonRs> <_xml:InsuranceSvcRs> <_xml:RqUID>5da3e764-374a-41e0-9baf-9fe76bbc4a6e</_xml:RqUID> <_xml:PolicyInqRs> <_xml:RqUID>5da3e764-374a-41e0-9baf-9fe76bbc4a6e</_xml:RqUID> <_xml:TransactionResponseDt>2025-01-13T18:01:11Z</_xml:TransactionResponseDt> <_xml:MsgStatus> <_xml:MsgStatusCd>Success</_xml:MsgStatusCd> </_xml:MsgStatus> <_xml:AsOfDt>2023-01-01</_xml:AsOfDt> <_xml:Requestor id=\"RequestorId_1\" /> <_xml:PartyInqInfo> <_xml:InsuredOrPrincipal id=\"InsuredOrPrincipalId_1\" /> </_xml:PartyInqInfo> <_xml:PolInfo> <_xml:PersAutoPolicy id=\"PersAutoPolicyID_1\"> <_xml:InsuredOrPrincipal> <_xml:GeneralPartyInfo> <_xml:NameInfo> <_xml:PersonName> <_xml:Surname>${lastName}</_xml:Surname> <_xml:GivenName>${firstName}</_xml:GivenName> </_xml:PersonName> </_xml:NameInfo> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> <_xml:Communications> <_xml:PhoneInfo> <_xml:PhoneTypeCd>Home</_xml:PhoneTypeCd> <_xml:PhoneNumber>${phoneNumber}</_xml:PhoneNumber> </_xml:PhoneInfo> </_xml:Communications> </_xml:GeneralPartyInfo> <_xml:InsuredOrPrincipalInfo> <_xml:InsuredOrPrincipalRoleCd>primary</_xml:InsuredOrPrincipalRoleCd> <_xml:PersonInfo> <_xml:GenderCd>M</_xml:GenderCd> </_xml:PersonInfo> </_xml:InsuredOrPrincipalInfo> </_xml:InsuredOrPrincipal> <_xml:PersPolicy> <_xml:PolicyNumber>${policyNumber}</_xml:PolicyNumber> <_xml:PolicyVersion>GRS</_xml:PolicyVersion> <_xml:CompanyProductCd>liberty</_xml:CompanyProductCd> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:ControllingStateProvCd>NH</_xml:ControllingStateProvCd> <_xml:ContractTerm> <_xml:EffectiveDt>2022-12-21</_xml:EffectiveDt> <_xml:ExpirationDt>2099-12-21</_xml:ExpirationDt> </_xml:ContractTerm> <_xml:GroupId>000</_xml:GroupId> <_xml:MiscParty> <_xml:ItemIdInfo> <_xml:InsurerId>998411168732470</_xml:InsurerId> </_xml:ItemIdInfo> </_xml:MiscParty> </_xml:PersPolicy> <_xml:Location> <_xml:ItemIdInfo id=\"ItemIdInfoId_1\" /> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> </_xml:Location> <_xml:PersAutoLineBusiness> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:PersVeh> <_xml:ItemIdInfo> <_xml:InsurerId>1</_xml:InsurerId> </_xml:ItemIdInfo> <_xml:Manufacturer>SBRU</_xml:Manufacturer> <_xml:Model>WRX</_xml:Model> <_xml:ModelYear>2021</_xml:ModelYear> <_xml:Registration> <_xml:RegistrationId>UNKNOWN</_xml:RegistrationId> <_xml:StateProvCd>NH</_xml:StateProvCd> </_xml:Registration> <_xml:VehIdentificationNumber>JF1VA1A63M9801802</_xml:VehIdentificationNumber> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>service_level_ind</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>parking_guard</_xml:CoverageCd> </_xml:VehRateGroupInfo> </_xml:PersVeh> </_xml:PersAutoLineBusiness> <_xml:RemarkText id=\"endorsementId_1\" IdRef=\"PersAutoPolicyID_1\">000</_xml:RemarkText> <_xml:PolicySummaryInfo> <_xml:PolicyStatusCd>ACTIVE</_xml:PolicyStatusCd> </_xml:PolicySummaryInfo> </_xml:PersAutoPolicy> </_xml:PolInfo> </_xml:PolicyInqRs> </_xml:InsuranceSvcRs> </_xml:ACORD> </se:policySearchResponse> </soapenv:Body> </soapenv:Envelope>',
|
'0020a': '<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"> <soapenv:Body> <se:policySearchResponse xmlns:_xml=\"http://www.ACORD.org/standards/PC_Surety/ACORD1/xml/\" xmlns:se=\"http://pm.lmig.com/cl/PolicyServicesMediationModule/iAcordPolicySearch\"> <_xml:ACORD> <_xml:SignonRs> <_xml:CustId> <_xml:SPName>Safelite</_xml:SPName> <_xml:CustPermId>00005</_xml:CustPermId> </_xml:CustId> <_xml:ClientDt>2025-01-13T18:01:11Z</_xml:ClientDt> <_xml:CustLangPref>EN</_xml:CustLangPref> <_xml:ClientApp> <_xml:Org>Liberty Mutual</_xml:Org> <_xml:Name>PM CNG</_xml:Name> <_xml:Version>1.0</_xml:Version> </_xml:ClientApp> <_xml:ServerDt>2025-01-13T18:01:11Z</_xml:ServerDt> <_xml:Language>EN</_xml:Language> </_xml:SignonRs> <_xml:InsuranceSvcRs> <_xml:RqUID>5da3e764-374a-41e0-9baf-9fe76bbc4a6e</_xml:RqUID> <_xml:PolicyInqRs> <_xml:RqUID>5da3e764-374a-41e0-9baf-9fe76bbc4a6e</_xml:RqUID> <_xml:TransactionResponseDt>2025-01-13T18:01:11Z</_xml:TransactionResponseDt> <_xml:MsgStatus> <_xml:MsgStatusCd>Success</_xml:MsgStatusCd> </_xml:MsgStatus> <_xml:AsOfDt>2023-01-01</_xml:AsOfDt> <_xml:Requestor id=\"RequestorId_1\" /> <_xml:PartyInqInfo> <_xml:InsuredOrPrincipal id=\"InsuredOrPrincipalId_1\" /> </_xml:PartyInqInfo> <_xml:PolInfo> <_xml:PersAutoPolicy id=\"PersAutoPolicyID_1\"> <_xml:InsuredOrPrincipal> <_xml:GeneralPartyInfo> <_xml:NameInfo> <_xml:PersonName> <_xml:Surname>${lastName}</_xml:Surname> <_xml:GivenName>${firstName}</_xml:GivenName> </_xml:PersonName> </_xml:NameInfo> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> <_xml:Communications> <_xml:PhoneInfo> <_xml:PhoneTypeCd>Home</_xml:PhoneTypeCd> <_xml:PhoneNumber>${phoneNumber}</_xml:PhoneNumber> </_xml:PhoneInfo> </_xml:Communications> </_xml:GeneralPartyInfo> <_xml:InsuredOrPrincipalInfo> <_xml:InsuredOrPrincipalRoleCd>primary</_xml:InsuredOrPrincipalRoleCd> <_xml:PersonInfo> <_xml:GenderCd>M</_xml:GenderCd> </_xml:PersonInfo> </_xml:InsuredOrPrincipalInfo> </_xml:InsuredOrPrincipal> <_xml:PersPolicy> <_xml:PolicyNumber>${policyNumber}</_xml:PolicyNumber> <_xml:PolicyVersion>GRS</_xml:PolicyVersion> <_xml:CompanyProductCd>liberty</_xml:CompanyProductCd> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:ControllingStateProvCd>NH</_xml:ControllingStateProvCd> <_xml:ContractTerm> <_xml:EffectiveDt>2022-12-21</_xml:EffectiveDt> <_xml:ExpirationDt>2099-12-21</_xml:ExpirationDt> </_xml:ContractTerm> <_xml:GroupId>000</_xml:GroupId> <_xml:MiscParty> <_xml:ItemIdInfo> <_xml:InsurerId>998411168732470</_xml:InsurerId> </_xml:ItemIdInfo> </_xml:MiscParty> </_xml:PersPolicy> <_xml:Location> <_xml:ItemIdInfo id=\"ItemIdInfoId_1\" /> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> </_xml:Location> <_xml:PersAutoLineBusiness> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:PersVeh> <_xml:ItemIdInfo> <_xml:InsurerId>1</_xml:InsurerId> </_xml:ItemIdInfo> <_xml:Manufacturer>SBRU</_xml:Manufacturer> <_xml:Model>WRX</_xml:Model> <_xml:ModelYear>2021</_xml:ModelYear> <_xml:Registration> <_xml:RegistrationId>UNKNOWN</_xml:RegistrationId> <_xml:StateProvCd>NH</_xml:StateProvCd> </_xml:Registration> <_xml:VehIdentificationNumber>JF1VA1A63M9801802</_xml:VehIdentificationNumber> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>service_level_ind</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>parking_guard</_xml:CoverageCd> </_xml:VehRateGroupInfo> </_xml:PersVeh> </_xml:PersAutoLineBusiness> <_xml:RemarkText id=\"endorsementId_1\" IdRef=\"PersAutoPolicyID_1\">000</_xml:RemarkText> <_xml:PolicySummaryInfo> <_xml:PolicyStatusCd>ACTIVE</_xml:PolicyStatusCd> </_xml:PolicySummaryInfo> </_xml:PersAutoPolicy> </_xml:PolInfo> </_xml:PolicyInqRs> </_xml:InsuranceSvcRs> </_xml:ACORD> </se:policySearchResponse> </soapenv:Body> </soapenv:Envelope>',
|
||||||
'0021a': '<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"> <soapenv:Body> <se:policySearchResponse xmlns:_xml=\"http://www.ACORD.org/standards/PC_Surety/ACORD1/xml/\" xmlns:se=\"http://pm.lmig.com/cl/PolicyServicesMediationModule/iAcordPolicySearch\"> <_xml:ACORD> <_xml:SignonRs> <_xml:CustId> <_xml:SPName>Safelite</_xml:SPName> <_xml:CustPermId>00005</_xml:CustPermId> </_xml:CustId> <_xml:ClientDt>2025-01-03T14:13:58Z</_xml:ClientDt> <_xml:CustLangPref>EN</_xml:CustLangPref> <_xml:ClientApp> <_xml:Org>Liberty Mutual</_xml:Org> <_xml:Name>PM CNG</_xml:Name> <_xml:Version>1.0</_xml:Version> </_xml:ClientApp> <_xml:ServerDt>2025-01-03T14:13:58Z</_xml:ServerDt> <_xml:Language>EN</_xml:Language> </_xml:SignonRs> <_xml:InsuranceSvcRs> <_xml:RqUID>cda7f1a9-6a7c-4851-8c75-9eba3f721e26</_xml:RqUID> <_xml:PolicyInqRs> <_xml:RqUID>cda7f1a9-6a7c-4851-8c75-9eba3f721e26</_xml:RqUID> <_xml:TransactionResponseDt>2025-01-03T14:13:58Z</_xml:TransactionResponseDt> <_xml:MsgStatus> <_xml:MsgStatusCd>Success</_xml:MsgStatusCd> </_xml:MsgStatus> <_xml:AsOfDt>2017-02-06</_xml:AsOfDt> <_xml:Requestor id=\"RequestorId_1\" /> <_xml:PartyInqInfo> <_xml:InsuredOrPrincipal id=\"InsuredOrPrincipalId_1\" /> </_xml:PartyInqInfo> <_xml:PolInfo> <_xml:PersAutoPolicy id=\"PersAutoPolicyID_1\"> <_xml:InsuredOrPrincipal> <_xml:GeneralPartyInfo> <_xml:NameInfo> <_xml:PersonName> <_xml:Surname>${lastName}</_xml:Surname> <_xml:GivenName>${firstName}</_xml:GivenName> </_xml:PersonName> </_xml:NameInfo> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> <_xml:Communications> <_xml:PhoneInfo> <_xml:PhoneTypeCd>Home</_xml:PhoneTypeCd> <_xml:PhoneNumber>${phoneNumber}</_xml:PhoneNumber> </_xml:PhoneInfo> </_xml:Communications> </_xml:GeneralPartyInfo> <_xml:InsuredOrPrincipalInfo> <_xml:InsuredOrPrincipalRoleCd>primary</_xml:InsuredOrPrincipalRoleCd> <_xml:PersonInfo> <_xml:GenderCd>M</_xml:GenderCd> </_xml:PersonInfo> </_xml:InsuredOrPrincipalInfo> </_xml:InsuredOrPrincipal> <_xml:PersPolicy> <_xml:PolicyNumber>${policyNumber}</_xml:PolicyNumber> <_xml:PolicyVersion>STD</_xml:PolicyVersion> <_xml:CompanyProductCd>liberty</_xml:CompanyProductCd> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:ControllingStateProvCd>CA</_xml:ControllingStateProvCd> <_xml:ContractTerm> <_xml:EffectiveDt>2023-11-01</_xml:EffectiveDt> <_xml:ExpirationDt>2099-11-01</_xml:ExpirationDt> </_xml:ContractTerm> <_xml:GroupId>000</_xml:GroupId> <_xml:MiscParty> <_xml:ItemIdInfo> <_xml:InsurerId>3861415357665</_xml:InsurerId> </_xml:ItemIdInfo> </_xml:MiscParty> </_xml:PersPolicy> <_xml:Location> <_xml:ItemIdInfo id=\"ItemIdInfoId_1\" /> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> </_xml:Location> <_xml:PersAutoLineBusiness> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:PersVeh> <_xml:ItemIdInfo> <_xml:InsurerId>1</_xml:InsurerId> </_xml:ItemIdInfo> <_xml:Manufacturer>HOND</_xml:Manufacturer> <_xml:Model>ACCORD</_xml:Model> <_xml:ModelYear>2016</_xml:ModelYear> <_xml:Registration> <_xml:RegistrationId>UNKNOWN</_xml:RegistrationId> <_xml:StateProvCd>CA</_xml:StateProvCd> </_xml:Registration> <_xml:VehIdentificationNumber>1HGCR2F31GA195371</_xml:VehIdentificationNumber> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>service_level_ind</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>parking_guard</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:Coverage> <_xml:CoverageCd>GLSS</_xml:CoverageCd> <_xml:CoverageDesc>ACV</_xml:CoverageDesc> <_xml:Deductible> <_xml:FormatCurrencyAmt> <_xml:Amt>500.00</_xml:Amt> </_xml:FormatCurrencyAmt> </_xml:Deductible> <_xml:Option> <_xml:OptionCd>V</_xml:OptionCd> <_xml:OptionValue>1</_xml:OptionValue> <_xml:OptionValueDesc>COVERAGE_LIMIT_IND</_xml:OptionValueDesc> </_xml:Option> </_xml:Coverage> </_xml:PersVeh> </_xml:PersAutoLineBusiness> <_xml:RemarkText id=\"endorsementId_1\" IdRef=\"PersAutoPolicyID_1\">000</_xml:RemarkText> <_xml:PolicySummaryInfo> <_xml:PolicyStatusCd>ACTIVE</_xml:PolicyStatusCd> </_xml:PolicySummaryInfo> </_xml:PersAutoPolicy> </_xml:PolInfo> </_xml:PolicyInqRs> </_xml:InsuranceSvcRs> </_xml:ACORD> </se:policySearchResponse> </soapenv:Body> </soapenv:Envelope>'
|
'0021a': '<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"> <soapenv:Body> <se:policySearchResponse xmlns:_xml=\"http://www.ACORD.org/standards/PC_Surety/ACORD1/xml/\" xmlns:se=\"http://pm.lmig.com/cl/PolicyServicesMediationModule/iAcordPolicySearch\"> <_xml:ACORD> <_xml:SignonRs> <_xml:CustId> <_xml:SPName>Safelite</_xml:SPName> <_xml:CustPermId>00005</_xml:CustPermId> </_xml:CustId> <_xml:ClientDt>2025-01-03T14:13:58Z</_xml:ClientDt> <_xml:CustLangPref>EN</_xml:CustLangPref> <_xml:ClientApp> <_xml:Org>Liberty Mutual</_xml:Org> <_xml:Name>PM CNG</_xml:Name> <_xml:Version>1.0</_xml:Version> </_xml:ClientApp> <_xml:ServerDt>2025-01-03T14:13:58Z</_xml:ServerDt> <_xml:Language>EN</_xml:Language> </_xml:SignonRs> <_xml:InsuranceSvcRs> <_xml:RqUID>cda7f1a9-6a7c-4851-8c75-9eba3f721e26</_xml:RqUID> <_xml:PolicyInqRs> <_xml:RqUID>cda7f1a9-6a7c-4851-8c75-9eba3f721e26</_xml:RqUID> <_xml:TransactionResponseDt>2025-01-03T14:13:58Z</_xml:TransactionResponseDt> <_xml:MsgStatus> <_xml:MsgStatusCd>Success</_xml:MsgStatusCd> </_xml:MsgStatus> <_xml:AsOfDt>2017-02-06</_xml:AsOfDt> <_xml:Requestor id=\"RequestorId_1\" /> <_xml:PartyInqInfo> <_xml:InsuredOrPrincipal id=\"InsuredOrPrincipalId_1\" /> </_xml:PartyInqInfo> <_xml:PolInfo> <_xml:PersAutoPolicy id=\"PersAutoPolicyID_1\"> <_xml:InsuredOrPrincipal> <_xml:GeneralPartyInfo> <_xml:NameInfo> <_xml:PersonName> <_xml:Surname>${lastName}</_xml:Surname> <_xml:GivenName>${firstName}</_xml:GivenName> </_xml:PersonName> </_xml:NameInfo> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> <_xml:Communications> <_xml:PhoneInfo> <_xml:PhoneTypeCd>Home</_xml:PhoneTypeCd> <_xml:PhoneNumber>${phoneNumber}</_xml:PhoneNumber> </_xml:PhoneInfo> </_xml:Communications> </_xml:GeneralPartyInfo> <_xml:InsuredOrPrincipalInfo> <_xml:InsuredOrPrincipalRoleCd>primary</_xml:InsuredOrPrincipalRoleCd> <_xml:PersonInfo> <_xml:GenderCd>M</_xml:GenderCd> </_xml:PersonInfo> </_xml:InsuredOrPrincipalInfo> </_xml:InsuredOrPrincipal> <_xml:PersPolicy> <_xml:PolicyNumber>${policyNumber}</_xml:PolicyNumber> <_xml:PolicyVersion>STD</_xml:PolicyVersion> <_xml:CompanyProductCd>liberty</_xml:CompanyProductCd> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:ControllingStateProvCd>CA</_xml:ControllingStateProvCd> <_xml:ContractTerm> <_xml:EffectiveDt>2023-11-01</_xml:EffectiveDt> <_xml:ExpirationDt>2099-11-01</_xml:ExpirationDt> </_xml:ContractTerm> <_xml:GroupId>000</_xml:GroupId> <_xml:MiscParty> <_xml:ItemIdInfo> <_xml:InsurerId>3861415357665</_xml:InsurerId> </_xml:ItemIdInfo> </_xml:MiscParty> </_xml:PersPolicy> <_xml:Location> <_xml:ItemIdInfo id=\"ItemIdInfoId_1\" /> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> </_xml:Location> <_xml:PersAutoLineBusiness> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:PersVeh> <_xml:ItemIdInfo> <_xml:InsurerId>1</_xml:InsurerId> </_xml:ItemIdInfo> <_xml:Manufacturer>HOND</_xml:Manufacturer> <_xml:Model>ACCORD</_xml:Model> <_xml:ModelYear>2016</_xml:ModelYear> <_xml:Registration> <_xml:RegistrationId>UNKNOWN</_xml:RegistrationId> <_xml:StateProvCd>CA</_xml:StateProvCd> </_xml:Registration> <_xml:VehIdentificationNumber>1HGCR2F31GA195371</_xml:VehIdentificationNumber> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>service_level_ind</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>parking_guard</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:Coverage> <_xml:CoverageCd>GLSS</_xml:CoverageCd> <_xml:CoverageDesc>ACV</_xml:CoverageDesc> <_xml:Deductible> <_xml:FormatCurrencyAmt> <_xml:Amt>500.00</_xml:Amt> </_xml:FormatCurrencyAmt> </_xml:Deductible> <_xml:Option> <_xml:OptionCd>V</_xml:OptionCd> <_xml:OptionValue>1</_xml:OptionValue> <_xml:OptionValueDesc>COVERAGE_LIMIT_IND</_xml:OptionValueDesc> </_xml:Option> </_xml:Coverage> </_xml:PersVeh> </_xml:PersAutoLineBusiness> <_xml:RemarkText id=\"endorsementId_1\" IdRef=\"PersAutoPolicyID_1\">000</_xml:RemarkText> <_xml:PolicySummaryInfo> <_xml:PolicyStatusCd>ACTIVE</_xml:PolicyStatusCd> </_xml:PolicySummaryInfo> </_xml:PersAutoPolicy> </_xml:PolInfo> </_xml:PolicyInqRs> </_xml:InsuranceSvcRs> </_xml:ACORD> </se:policySearchResponse> </soapenv:Body> </soapenv:Envelope>',
|
||||||
|
'0022a': '<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"> <soapenv:Body> <se:policySearchResponse xmlns:_xml=\"http://www.ACORD.org/standards/PC_Surety/ACORD1/xml/\" xmlns:se=\"http://pm.lmig.com/cl/PolicyServicesMediationModule/iAcordPolicySearch\"> <_xml:ACORD> <_xml:SignonRs> <_xml:CustId> <_xml:SPName>Safelite</_xml:SPName> <_xml:CustPermId>00005</_xml:CustPermId> </_xml:CustId> <_xml:ClientDt>2025-01-03T14:13:58Z</_xml:ClientDt> <_xml:CustLangPref>EN</_xml:CustLangPref> <_xml:ClientApp> <_xml:Org>Liberty Mutual</_xml:Org> <_xml:Name>PM CNG</_xml:Name> <_xml:Version>1.0</_xml:Version> </_xml:ClientApp> <_xml:ServerDt>2025-01-03T14:13:58Z</_xml:ServerDt> <_xml:Language>EN</_xml:Language> </_xml:SignonRs> <_xml:InsuranceSvcRs> <_xml:RqUID>cda7f1a9-6a7c-4851-8c75-9eba3f721e26</_xml:RqUID> <_xml:PolicyInqRs> <_xml:RqUID>cda7f1a9-6a7c-4851-8c75-9eba3f721e26</_xml:RqUID> <_xml:TransactionResponseDt>2025-01-03T14:13:58Z</_xml:TransactionResponseDt> <_xml:MsgStatus> <_xml:MsgStatusCd>Success</_xml:MsgStatusCd> </_xml:MsgStatus> <_xml:AsOfDt>2017-02-06</_xml:AsOfDt> <_xml:Requestor id=\"RequestorId_1\" /> <_xml:PartyInqInfo> <_xml:InsuredOrPrincipal id=\"InsuredOrPrincipalId_1\" /> </_xml:PartyInqInfo> <_xml:PolInfo> <_xml:PersAutoPolicy id=\"PersAutoPolicyID_1\"> <_xml:InsuredOrPrincipal> <_xml:GeneralPartyInfo> <_xml:NameInfo> <_xml:PersonName> <_xml:Surname>${lastName}</_xml:Surname> <_xml:GivenName>${firstName}</_xml:GivenName> </_xml:PersonName> </_xml:NameInfo> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> <_xml:Communications> <_xml:PhoneInfo> <_xml:PhoneTypeCd>Home</_xml:PhoneTypeCd> <_xml:PhoneNumber>${phoneNumber}</_xml:PhoneNumber> </_xml:PhoneInfo> </_xml:Communications> </_xml:GeneralPartyInfo> <_xml:InsuredOrPrincipalInfo> <_xml:InsuredOrPrincipalRoleCd>primary</_xml:InsuredOrPrincipalRoleCd> <_xml:PersonInfo> <_xml:GenderCd>M</_xml:GenderCd> </_xml:PersonInfo> </_xml:InsuredOrPrincipalInfo> </_xml:InsuredOrPrincipal> <_xml:PersPolicy> <_xml:PolicyNumber>${policyNumber}</_xml:PolicyNumber> <_xml:PolicyVersion>STD</_xml:PolicyVersion> <_xml:CompanyProductCd>liberty</_xml:CompanyProductCd> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:ControllingStateProvCd>CA</_xml:ControllingStateProvCd> <_xml:ContractTerm> <_xml:EffectiveDt>2023-11-01</_xml:EffectiveDt> <_xml:ExpirationDt>2099-11-01</_xml:ExpirationDt> </_xml:ContractTerm> <_xml:GroupId>000</_xml:GroupId> <_xml:MiscParty> <_xml:ItemIdInfo> <_xml:InsurerId>3861415357665</_xml:InsurerId> </_xml:ItemIdInfo> </_xml:MiscParty> </_xml:PersPolicy> <_xml:Location> <_xml:ItemIdInfo id=\"ItemIdInfoId_1\" /> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> </_xml:Location> <_xml:PersAutoLineBusiness> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:PersVeh> <_xml:ItemIdInfo> <_xml:InsurerId>1</_xml:InsurerId> </_xml:ItemIdInfo> <_xml:Manufacturer>HOND</_xml:Manufacturer> <_xml:Model>ACCORD</_xml:Model> <_xml:ModelYear>2016</_xml:ModelYear> <_xml:Registration> <_xml:RegistrationId>UNKNOWN</_xml:RegistrationId> <_xml:StateProvCd>CA</_xml:StateProvCd> </_xml:Registration> <_xml:VehIdentificationNumber>1HGCR2F31GA195371</_xml:VehIdentificationNumber> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>service_level_ind</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>parking_guard</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:Coverage> <_xml:CoverageCd>GLSS</_xml:CoverageCd> <_xml:CoverageDesc>ACV</_xml:CoverageDesc> <_xml:Deductible> <_xml:FormatCurrencyAmt> <_xml:Amt>500.00</_xml:Amt> </_xml:FormatCurrencyAmt> </_xml:Deductible> <_xml:Option> <_xml:OptionCd>V</_xml:OptionCd> <_xml:OptionValue>1</_xml:OptionValue> <_xml:OptionValueDesc>COVERAGE_LIMIT_IND</_xml:OptionValueDesc> </_xml:Option> </_xml:Coverage> </_xml:PersVeh> </_xml:PersAutoLineBusiness> <_xml:RemarkText id=\"endorsementId_1\" IdRef=\"PersAutoPolicyID_1\">000</_xml:RemarkText> <_xml:PolicySummaryInfo> <_xml:PolicyStatusCd>ACTIVE</_xml:PolicyStatusCd> </_xml:PolicySummaryInfo> </_xml:PersAutoPolicy> </_xml:PolInfo> </_xml:PolicyInqRs> </_xml:InsuranceSvcRs> </_xml:ACORD> </se:policySearchResponse> </soapenv:Body> </soapenv:Envelope>',
|
||||||
|
'0023a': '<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"> <soapenv:Body> <se:policySearchResponse xmlns:_xml=\"http://www.ACORD.org/standards/PC_Surety/ACORD1/xml/\" xmlns:se=\"http://pm.lmig.com/cl/PolicyServicesMediationModule/iAcordPolicySearch\"> <_xml:ACORD> <_xml:SignonRs> <_xml:CustId> <_xml:SPName>Safelite</_xml:SPName> <_xml:CustPermId>00005</_xml:CustPermId> </_xml:CustId> <_xml:ClientDt>2025-01-03T14:13:58Z</_xml:ClientDt> <_xml:CustLangPref>EN</_xml:CustLangPref> <_xml:ClientApp> <_xml:Org>Liberty Mutual</_xml:Org> <_xml:Name>PM CNG</_xml:Name> <_xml:Version>1.0</_xml:Version> </_xml:ClientApp> <_xml:ServerDt>2025-01-03T14:13:58Z</_xml:ServerDt> <_xml:Language>EN</_xml:Language> </_xml:SignonRs> <_xml:InsuranceSvcRs> <_xml:RqUID>cda7f1a9-6a7c-4851-8c75-9eba3f721e26</_xml:RqUID> <_xml:PolicyInqRs> <_xml:RqUID>cda7f1a9-6a7c-4851-8c75-9eba3f721e26</_xml:RqUID> <_xml:TransactionResponseDt>2025-01-03T14:13:58Z</_xml:TransactionResponseDt> <_xml:MsgStatus> <_xml:MsgStatusCd>Success</_xml:MsgStatusCd> </_xml:MsgStatus> <_xml:AsOfDt>2017-02-06</_xml:AsOfDt> <_xml:Requestor id=\"RequestorId_1\" /> <_xml:PartyInqInfo> <_xml:InsuredOrPrincipal id=\"InsuredOrPrincipalId_1\" /> </_xml:PartyInqInfo> <_xml:PolInfo> <_xml:PersAutoPolicy id=\"PersAutoPolicyID_1\"> <_xml:InsuredOrPrincipal> <_xml:GeneralPartyInfo> <_xml:NameInfo> <_xml:PersonName> <_xml:Surname>${lastName}</_xml:Surname> <_xml:GivenName>${firstName}</_xml:GivenName> </_xml:PersonName> </_xml:NameInfo> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> <_xml:Communications> <_xml:PhoneInfo> <_xml:PhoneTypeCd>Home</_xml:PhoneTypeCd> <_xml:PhoneNumber>${phoneNumber}</_xml:PhoneNumber> </_xml:PhoneInfo> </_xml:Communications> </_xml:GeneralPartyInfo> <_xml:InsuredOrPrincipalInfo> <_xml:InsuredOrPrincipalRoleCd>primary</_xml:InsuredOrPrincipalRoleCd> <_xml:PersonInfo> <_xml:GenderCd>M</_xml:GenderCd> </_xml:PersonInfo> </_xml:InsuredOrPrincipalInfo> </_xml:InsuredOrPrincipal> <_xml:PersPolicy> <_xml:PolicyNumber>${policyNumber}</_xml:PolicyNumber> <_xml:PolicyVersion>STD</_xml:PolicyVersion> <_xml:CompanyProductCd>liberty</_xml:CompanyProductCd> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:ControllingStateProvCd>CA</_xml:ControllingStateProvCd> <_xml:ContractTerm> <_xml:EffectiveDt>2023-11-01</_xml:EffectiveDt> <_xml:ExpirationDt>2099-11-01</_xml:ExpirationDt> </_xml:ContractTerm> <_xml:GroupId>000</_xml:GroupId> <_xml:MiscParty> <_xml:ItemIdInfo> <_xml:InsurerId>3861415357665</_xml:InsurerId> </_xml:ItemIdInfo> </_xml:MiscParty> </_xml:PersPolicy> <_xml:Location> <_xml:ItemIdInfo id=\"ItemIdInfoId_1\" /> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> </_xml:Location> <_xml:PersAutoLineBusiness> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:PersVeh> <_xml:ItemIdInfo> <_xml:InsurerId>1</_xml:InsurerId> </_xml:ItemIdInfo> <_xml:Manufacturer>HOND</_xml:Manufacturer> <_xml:Model>ACCORD</_xml:Model> <_xml:ModelYear>2016</_xml:ModelYear> <_xml:Registration> <_xml:RegistrationId>UNKNOWN</_xml:RegistrationId> <_xml:StateProvCd>CA</_xml:StateProvCd> </_xml:Registration> <_xml:VehIdentificationNumber>1HGCR2F31GA195371</_xml:VehIdentificationNumber> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>service_level_ind</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>parking_guard</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:Coverage> <_xml:CoverageCd>GLSS</_xml:CoverageCd> <_xml:CoverageDesc>ACV</_xml:CoverageDesc> <_xml:Deductible> <_xml:FormatCurrencyAmt> <_xml:Amt>500.00</_xml:Amt> </_xml:FormatCurrencyAmt> </_xml:Deductible> <_xml:Option> <_xml:OptionCd>V</_xml:OptionCd> <_xml:OptionValue>1</_xml:OptionValue> <_xml:OptionValueDesc>COVERAGE_LIMIT_IND</_xml:OptionValueDesc> </_xml:Option> </_xml:Coverage> </_xml:PersVeh> </_xml:PersAutoLineBusiness> <_xml:RemarkText id=\"endorsementId_1\" IdRef=\"PersAutoPolicyID_1\">000</_xml:RemarkText> <_xml:PolicySummaryInfo> <_xml:PolicyStatusCd>ACTIVE</_xml:PolicyStatusCd> </_xml:PolicySummaryInfo> </_xml:PersAutoPolicy> </_xml:PolInfo> </_xml:PolicyInqRs> </_xml:InsuranceSvcRs> </_xml:ACORD> </se:policySearchResponse> </soapenv:Body> </soapenv:Envelope>',
|
||||||
|
'0024a': '<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"> <soapenv:Body> <se:policySearchResponse xmlns:_xml=\"http://www.ACORD.org/standards/PC_Surety/ACORD1/xml/\" xmlns:se=\"http://pm.lmig.com/cl/PolicyServicesMediationModule/iAcordPolicySearch\"> <_xml:ACORD> <_xml:SignonRs> <_xml:CustId> <_xml:SPName>Safelite</_xml:SPName> <_xml:CustPermId>00005</_xml:CustPermId> </_xml:CustId> <_xml:ClientDt>2025-01-03T14:13:58Z</_xml:ClientDt> <_xml:CustLangPref>EN</_xml:CustLangPref> <_xml:ClientApp> <_xml:Org>Liberty Mutual</_xml:Org> <_xml:Name>PM CNG</_xml:Name> <_xml:Version>1.0</_xml:Version> </_xml:ClientApp> <_xml:ServerDt>2025-01-03T14:13:58Z</_xml:ServerDt> <_xml:Language>EN</_xml:Language> </_xml:SignonRs> <_xml:InsuranceSvcRs> <_xml:RqUID>cda7f1a9-6a7c-4851-8c75-9eba3f721e26</_xml:RqUID> <_xml:PolicyInqRs> <_xml:RqUID>cda7f1a9-6a7c-4851-8c75-9eba3f721e26</_xml:RqUID> <_xml:TransactionResponseDt>2025-01-03T14:13:58Z</_xml:TransactionResponseDt> <_xml:MsgStatus> <_xml:MsgStatusCd>Success</_xml:MsgStatusCd> </_xml:MsgStatus> <_xml:AsOfDt>2017-02-06</_xml:AsOfDt> <_xml:Requestor id=\"RequestorId_1\" /> <_xml:PartyInqInfo> <_xml:InsuredOrPrincipal id=\"InsuredOrPrincipalId_1\" /> </_xml:PartyInqInfo> <_xml:PolInfo> <_xml:PersAutoPolicy id=\"PersAutoPolicyID_1\"> <_xml:InsuredOrPrincipal> <_xml:GeneralPartyInfo> <_xml:NameInfo> <_xml:PersonName> <_xml:Surname>${lastName}</_xml:Surname> <_xml:GivenName>${firstName}</_xml:GivenName> </_xml:PersonName> </_xml:NameInfo> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> <_xml:Communications> <_xml:PhoneInfo> <_xml:PhoneTypeCd>Home</_xml:PhoneTypeCd> <_xml:PhoneNumber>${phoneNumber}</_xml:PhoneNumber> </_xml:PhoneInfo> </_xml:Communications> </_xml:GeneralPartyInfo> <_xml:InsuredOrPrincipalInfo> <_xml:InsuredOrPrincipalRoleCd>primary</_xml:InsuredOrPrincipalRoleCd> <_xml:PersonInfo> <_xml:GenderCd>M</_xml:GenderCd> </_xml:PersonInfo> </_xml:InsuredOrPrincipalInfo> </_xml:InsuredOrPrincipal> <_xml:PersPolicy> <_xml:PolicyNumber>${policyNumber}</_xml:PolicyNumber> <_xml:PolicyVersion>STD</_xml:PolicyVersion> <_xml:CompanyProductCd>liberty</_xml:CompanyProductCd> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:ControllingStateProvCd>CA</_xml:ControllingStateProvCd> <_xml:ContractTerm> <_xml:EffectiveDt>2023-11-01</_xml:EffectiveDt> <_xml:ExpirationDt>2099-11-01</_xml:ExpirationDt> </_xml:ContractTerm> <_xml:GroupId>000</_xml:GroupId> <_xml:MiscParty> <_xml:ItemIdInfo> <_xml:InsurerId>3861415357665</_xml:InsurerId> </_xml:ItemIdInfo> </_xml:MiscParty> </_xml:PersPolicy> <_xml:Location> <_xml:ItemIdInfo id=\"ItemIdInfoId_1\" /> <_xml:Addr> <_xml:Addr1>${streetAddress}</_xml:Addr1> <_xml:City>${city}</_xml:City> <_xml:StateProvCd>${state}</_xml:StateProvCd> <_xml:PostalCode>${postalCode}</_xml:PostalCode> <_xml:Country>US</_xml:Country> </_xml:Addr> </_xml:Location> <_xml:PersAutoLineBusiness> <_xml:LOBCd>AUTOP</_xml:LOBCd> <_xml:PersVeh> <_xml:ItemIdInfo> <_xml:InsurerId>1</_xml:InsurerId> </_xml:ItemIdInfo> <_xml:Manufacturer>HOND</_xml:Manufacturer> <_xml:Model>ACCORD</_xml:Model> <_xml:ModelYear>2016</_xml:ModelYear> <_xml:Registration> <_xml:RegistrationId>UNKNOWN</_xml:RegistrationId> <_xml:StateProvCd>CA</_xml:StateProvCd> </_xml:Registration> <_xml:VehIdentificationNumber>1HGCR2F31GA195371</_xml:VehIdentificationNumber> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>service_level_ind</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:VehRateGroupInfo> <_xml:RateGroup>000</_xml:RateGroup> <_xml:CoverageCd>parking_guard</_xml:CoverageCd> </_xml:VehRateGroupInfo> <_xml:Coverage> <_xml:CoverageCd>GLSS</_xml:CoverageCd> <_xml:CoverageDesc>ACV</_xml:CoverageDesc> <_xml:Deductible> <_xml:FormatCurrencyAmt> <_xml:Amt>500.00</_xml:Amt> </_xml:FormatCurrencyAmt> </_xml:Deductible> <_xml:Option> <_xml:OptionCd>V</_xml:OptionCd> <_xml:OptionValue>1</_xml:OptionValue> <_xml:OptionValueDesc>COVERAGE_LIMIT_IND</_xml:OptionValueDesc> </_xml:Option> </_xml:Coverage> </_xml:PersVeh> </_xml:PersAutoLineBusiness> <_xml:RemarkText id=\"endorsementId_1\" IdRef=\"PersAutoPolicyID_1\">000</_xml:RemarkText> <_xml:PolicySummaryInfo> <_xml:PolicyStatusCd>ACTIVE</_xml:PolicyStatusCd> </_xml:PolicySummaryInfo> </_xml:PersAutoPolicy> </_xml:PolInfo> </_xml:PolicyInqRs> </_xml:InsuranceSvcRs> </_xml:ACORD> </se:policySearchResponse> </soapenv:Body> </soapenv:Envelope>'
|
||||||
}
|
}
|
||||||
|
|
||||||
const claimRegistrationValue = "{\"claimNumber\":\"058913992\",\"reportedDate\":\"2023-11-01T18:56:08.264Z\",\"howReported\":\"digital\",\"status\":\"registered\",\"lossCategory\":\"glassOnly\",\"lossCause\":\"glassOnly\",\"lossCauseDetail\":null,\"lossDate\":\"2023-11-01\",\"lossTime\":\"00:00\",\"lossDescription\":\"ROCK FROM ROAD - NO ONE AT FAULT\",\"lossLocation\":{\"primary\":true,\"line1\":null,\"line2\":null,\"city\":\"Columbus\",\"county\":null,\"state\":\"OR\",\"postalCode\":\"\",\"country\":\"US\",\"type\":null,\"locationName\":null,\"subType\":null},\"_links\":{\"reporter\":{\"id\":\"65429f485e8cd37072a5bb5d\",\"href\":\"claims/058913992/contacts/65429f485e8cd37072a5bb5d\",\"title\":\"BRANDON JOHNSON\"},\"primaryContact\":null,\"insureds\":[{\"id\":\"65429f485e8cd37072a5bb5d\",\"href\":\"claims/058913992/contacts/65429f485e8cd37072a5bb5d\",\"title\":\"BRANDON JOHNSON\"}],\"pedestrianCyclists\":[],\"contacts\":{\"id\":null,\"href\":\"claims/058913992/contacts\"},\"claimDamage\":{\"id\":null,\"href\":\"claims/058913992/claim-damage\"},\"vehicleIncidents\":[{\"id\":\"65429f4b31209b23b788c38e\",\"href\":\"claims/058913992/vehicle-incidents/65429f4b31209b23b788c38e\",\"vehicle\":\"BMW740\"}],\"propertyIncidents\":{\"dwelling\":null,\"otherStructure\":null,\"personalProperty\":null,\"livingExpense\":null},\"injuryIncidents\":[]}}";
|
const claimRegistrationValue = "{\"claimNumber\":\"058913992\",\"reportedDate\":\"2023-11-01T18:56:08.264Z\",\"howReported\":\"digital\",\"status\":\"registered\",\"lossCategory\":\"glassOnly\",\"lossCause\":\"glassOnly\",\"lossCauseDetail\":null,\"lossDate\":\"2023-11-01\",\"lossTime\":\"00:00\",\"lossDescription\":\"ROCK FROM ROAD - NO ONE AT FAULT\",\"lossLocation\":{\"primary\":true,\"line1\":null,\"line2\":null,\"city\":\"Columbus\",\"county\":null,\"state\":\"OR\",\"postalCode\":\"\",\"country\":\"US\",\"type\":null,\"locationName\":null,\"subType\":null},\"_links\":{\"reporter\":{\"id\":\"65429f485e8cd37072a5bb5d\",\"href\":\"claims/058913992/contacts/65429f485e8cd37072a5bb5d\",\"title\":\"BRANDON JOHNSON\"},\"primaryContact\":null,\"insureds\":[{\"id\":\"65429f485e8cd37072a5bb5d\",\"href\":\"claims/058913992/contacts/65429f485e8cd37072a5bb5d\",\"title\":\"BRANDON JOHNSON\"}],\"pedestrianCyclists\":[],\"contacts\":{\"id\":null,\"href\":\"claims/058913992/contacts\"},\"claimDamage\":{\"id\":null,\"href\":\"claims/058913992/claim-damage\"},\"vehicleIncidents\":[{\"id\":\"65429f4b31209b23b788c38e\",\"href\":\"claims/058913992/vehicle-incidents/65429f4b31209b23b788c38e\",\"vehicle\":\"BMW740\"}],\"propertyIncidents\":{\"dwelling\":null,\"otherStructure\":null,\"personalProperty\":null,\"livingExpense\":null},\"injuryIncidents\":[]}}";
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ export interface ITestData {
|
||||||
isPolicyFound: boolean, // Effective difference between advanced and essential
|
isPolicyFound: boolean, // Effective difference between advanced and essential
|
||||||
isUseVehicleOnPolicy: boolean, // Should we use the vehicle on the policy?
|
isUseVehicleOnPolicy: boolean, // Should we use the vehicle on the policy?
|
||||||
isVehicleLookupValidations: boolean, // Should we validate vehicle lookup?
|
isVehicleLookupValidations: boolean, // Should we validate vehicle lookup?
|
||||||
|
isVehicleSelectBailout: boolean, // Should we bailout on vehicle lookup?
|
||||||
isNoComp: boolean, // Is this a NoComp policy?
|
isNoComp: boolean, // Is this a NoComp policy?
|
||||||
isItac: boolean, // Is this an ITAC scenario?
|
isItac: boolean, // Is this an ITAC scenario?
|
||||||
hasStateLawPopup: boolean, // Are we expecting a state law pop-up on ProviderSelectionPage?
|
hasStateLawPopup: boolean, // Are we expecting a state law pop-up on ProviderSelectionPage?
|
||||||
|
|
@ -36,4 +37,5 @@ export interface ITestData {
|
||||||
isRecalWarning: boolean,
|
isRecalWarning: boolean,
|
||||||
isSeparateApptsWarning: boolean, // IF true, check for the separate appts warning on VehicleDamagePage
|
isSeparateApptsWarning: boolean, // IF true, check for the separate appts warning on VehicleDamagePage
|
||||||
isAuthenticationRequired: boolean
|
isAuthenticationRequired: boolean
|
||||||
|
isMoldingQuestion: boolean,
|
||||||
}
|
}
|
||||||
|
|
@ -5,6 +5,7 @@ import { ContactDetailsPage } from "../../pages/ContactDetailsPage";
|
||||||
import { CoverageStatementPage } from "../../pages/CoverageStatementPage";
|
import { CoverageStatementPage } from "../../pages/CoverageStatementPage";
|
||||||
import { DuplicateCheckPage } from "../../pages/DuplicateCheckPage";
|
import { DuplicateCheckPage } from "../../pages/DuplicateCheckPage";
|
||||||
import { EndorsementsPage } from "../../pages/EndorsementsPage";
|
import { EndorsementsPage } from "../../pages/EndorsementsPage";
|
||||||
|
import { MoldingQuestionsPage } from "../../pages/MoldingQuestionsPage";
|
||||||
import { OrderConfirmationPage } from "../../pages/OrderConfirmationPage";
|
import { OrderConfirmationPage } from "../../pages/OrderConfirmationPage";
|
||||||
import { PartQuestionsPage } from "../../pages/PartQuestionsPage";
|
import { PartQuestionsPage } from "../../pages/PartQuestionsPage";
|
||||||
import { PaymentMethodPage } from "../../pages/PaymentMethodPage";
|
import { PaymentMethodPage } from "../../pages/PaymentMethodPage";
|
||||||
|
|
@ -57,5 +58,6 @@ export default interface ITestPages {
|
||||||
vinLookupPage: VinLookupPage,
|
vinLookupPage: VinLookupPage,
|
||||||
vehicleLookupAddressPage: VehicleLookupAddressPage,
|
vehicleLookupAddressPage: VehicleLookupAddressPage,
|
||||||
vehicleLookupLicensePage: VehicleLookupLicensePage,
|
vehicleLookupLicensePage: VehicleLookupLicensePage,
|
||||||
welcomePage: WelcomePage
|
welcomePage: WelcomePage,
|
||||||
|
moldingQuestionsPage: MoldingQuestionsPage
|
||||||
}
|
}
|
||||||
|
|
@ -43,6 +43,7 @@ import CcisApiUtil from "@impl/api/CcisApiUtil";
|
||||||
import MockPolicyData from "@business-logic/data/MockPolicyData";
|
import MockPolicyData from "@business-logic/data/MockPolicyData";
|
||||||
import VehiclePartQuestionsPage from "../../pages/VehiclePartsPage";
|
import VehiclePartQuestionsPage from "../../pages/VehiclePartsPage";
|
||||||
import CapabilityQuestionsPage from "../../pages/CapabilityQuestionsPage";
|
import CapabilityQuestionsPage from "../../pages/CapabilityQuestionsPage";
|
||||||
|
import { MoldingQuestionsPage } from "../../pages/MoldingQuestionsPage";
|
||||||
|
|
||||||
export default class TestCase extends DisposableBase implements ITestCase {
|
export default class TestCase extends DisposableBase implements ITestCase {
|
||||||
public static FrameworkConfig: FrameworkConfig = {
|
public static FrameworkConfig: FrameworkConfig = {
|
||||||
|
|
@ -136,7 +137,9 @@ export default class TestCase extends DisposableBase implements ITestCase {
|
||||||
|
|
||||||
if (testInfo.testCase)
|
if (testInfo.testCase)
|
||||||
if (!(testInfo.testCase.testData!.isMockTesting ?? false)) {
|
if (!(testInfo.testCase.testData!.isMockTesting ?? false)) {
|
||||||
await testInfo.testCase.disposeAll();
|
if (testInfo.testCase.testData?.isPolicyFound) {
|
||||||
|
await testInfo.testCase.disposeAll();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const seconds: string = String(testInfo.duration / 1000);
|
const seconds: string = String(testInfo.duration / 1000);
|
||||||
|
|
@ -201,7 +204,8 @@ export default class TestCase extends DisposableBase implements ITestCase {
|
||||||
vinLookupPage: new VinLookupPage(page),
|
vinLookupPage: new VinLookupPage(page),
|
||||||
vehicleLookupAddressPage: new VehicleLookupAddressPage(page),
|
vehicleLookupAddressPage: new VehicleLookupAddressPage(page),
|
||||||
vehicleLookupLicensePage: new VehicleLookupLicensePage(page),
|
vehicleLookupLicensePage: new VehicleLookupLicensePage(page),
|
||||||
welcomePage: new WelcomePage(page)
|
welcomePage: new WelcomePage(page),
|
||||||
|
moldingQuestionsPage: new MoldingQuestionsPage(page)
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -226,4 +230,4 @@ export default class TestCase extends DisposableBase implements ITestCase {
|
||||||
console.log("Delete 'Fake Claim Registration policy' status: " + crDeleteRes.status); //For debug use console.dir(crDeleteRes);
|
console.log("Delete 'Fake Claim Registration policy' status: " + crDeleteRes.status); //For debug use console.dir(crDeleteRes);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -61,6 +61,21 @@ export function consolidateJsonReport() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function generateSummaryTable(existingIssues: { [key: string]: any[] }): string {
|
function generateSummaryTable(existingIssues: { [key: string]: any[] }): string {
|
||||||
|
let totalCritical = 0;
|
||||||
|
let totalSerious = 0;
|
||||||
|
let totalModerate = 0;
|
||||||
|
let totalMinor = 0;
|
||||||
|
let totalTotal = 0;
|
||||||
|
|
||||||
|
Object.keys(existingIssues).forEach(pageName => {
|
||||||
|
const issues = existingIssues[pageName];
|
||||||
|
totalCritical += issues.filter(issue => issue.impact === 'critical').length;
|
||||||
|
totalSerious += issues.filter(issue => issue.impact === 'serious').length;
|
||||||
|
totalModerate += issues.filter(issue => issue.impact === 'moderate').length;
|
||||||
|
totalMinor += issues.filter(issue => issue.impact === 'minor').length;
|
||||||
|
totalTotal += issues.length;
|
||||||
|
});
|
||||||
|
|
||||||
return `
|
return `
|
||||||
<table class="summary-table" role="table">
|
<table class="summary-table" role="table">
|
||||||
<thead>
|
<thead>
|
||||||
|
|
@ -94,6 +109,16 @@ function generateSummaryTable(existingIssues: { [key: string]: any[] }): string
|
||||||
`;
|
`;
|
||||||
}).join('')}
|
}).join('')}
|
||||||
</tbody>
|
</tbody>
|
||||||
|
<tfoot>
|
||||||
|
<tr>
|
||||||
|
<td><b>Total</b></td>
|
||||||
|
<td><b>${totalCritical}</b></td>
|
||||||
|
<td><b>${totalSerious}</b></td>
|
||||||
|
<td><b>${totalModerate}</b></td>
|
||||||
|
<td><b>${totalMinor}</b></td>
|
||||||
|
<td><b>${totalTotal}</b></td>
|
||||||
|
</tr>
|
||||||
|
</tfoot>
|
||||||
</table>
|
</table>
|
||||||
`;
|
`;
|
||||||
}
|
}
|
||||||
|
|
@ -285,6 +310,9 @@ export function createAccessibilityHtmlReport() {
|
||||||
border: 1px solid #ddd;
|
border: 1px solid #ddd;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
}
|
}
|
||||||
|
tfoot {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
`;
|
`;
|
||||||
|
|
||||||
let reportContent = `
|
let reportContent = `
|
||||||
|
|
@ -334,4 +362,4 @@ function isDuplicateIssue(existingIssues: any[], newIssue: any): boolean {
|
||||||
return existingIssues.some(issue => {
|
return existingIssues.some(issue => {
|
||||||
return issue.id === newIssue.id && issue.pageName === newIssue.pageName;
|
return issue.id === newIssue.id && issue.pageName === newIssue.pageName;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,7 @@ export class BasePage {
|
||||||
//this causes the schedule page to fail
|
//this causes the schedule page to fail
|
||||||
//await expect(this.buttonLoadSpin).toHaveCount(0, {timeout: 180000});
|
//await expect(this.buttonLoadSpin).toHaveCount(0, {timeout: 180000});
|
||||||
expect(currentUrl).not.toEqual(startingUrl);
|
expect(currentUrl).not.toEqual(startingUrl);
|
||||||
}).toPass({ timeout: 240_000 });
|
}).toPass({ timeout: 180_000 });
|
||||||
}
|
}
|
||||||
|
|
||||||
async validateURL(url: string) {
|
async validateURL(url: string) {
|
||||||
|
|
|
||||||
18
playwright-tests/pages/MoldingQuestionsPage.ts
Normal file
18
playwright-tests/pages/MoldingQuestionsPage.ts
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
import { expect, type Locator, type Page } from '@playwright/test';
|
||||||
|
import { BasePage } from './BasePage';
|
||||||
|
|
||||||
|
export class MoldingQuestionsPage extends BasePage {
|
||||||
|
readonly page: Page;
|
||||||
|
url = process.env['BASE_URL']! + '/?issPage=part-questions';
|
||||||
|
readonly yesButton: Locator;
|
||||||
|
|
||||||
|
constructor(page: Page) {
|
||||||
|
super(page);
|
||||||
|
this.page = page;
|
||||||
|
this.yesButton = page.locator('label').filter({ hasText: 'Yes' }).locator('div');
|
||||||
|
}
|
||||||
|
|
||||||
|
async answerYes() {
|
||||||
|
await this.yesButton.click();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -35,7 +35,7 @@ export class OrderConfirmationPage extends BasePage {
|
||||||
async validateOrderConfirmationPage(testData: Partial<ITestData>) {
|
async validateOrderConfirmationPage(testData: Partial<ITestData>) {
|
||||||
// Destructure data we use
|
// Destructure data we use
|
||||||
const { vehicleDetails, customerDetails, servicePackage, isItac,
|
const { vehicleDetails, customerDetails, servicePackage, isItac,
|
||||||
isNoComp, isPolicyFound, claimDetails, paymentDetails, isUseVehicleOnPolicy } = testData;
|
isNoComp, isPolicyFound, claimDetails, paymentDetails, isUseVehicleOnPolicy } = testData;
|
||||||
await this.serviceText.waitFor({ state: "visible" });
|
await this.serviceText.waitFor({ state: "visible" });
|
||||||
await this.logOrderNumber();
|
await this.logOrderNumber();
|
||||||
|
|
||||||
|
|
@ -45,7 +45,7 @@ export class OrderConfirmationPage extends BasePage {
|
||||||
const emailTextValue = await this.emailText.textContent();
|
const emailTextValue = await this.emailText.textContent();
|
||||||
const servicePackageValue = await this.cartServicePackageText.textContent();
|
const servicePackageValue = await this.cartServicePackageText.textContent();
|
||||||
const amountDueValue = await this.amountDueText.textContent();
|
const amountDueValue = await this.amountDueText.textContent();
|
||||||
const deductibleTextValue = (isItac || isNoComp)? null: await this.deductibleText.textContent();
|
const deductibleTextValue = (isItac || isNoComp) ? null : await this.deductibleText.textContent();
|
||||||
const subtotalTextValue = await this.subtotalText.textContent();
|
const subtotalTextValue = await this.subtotalText.textContent();
|
||||||
const finalAmountDueValue = await this.finalAmountDue.textContent();
|
const finalAmountDueValue = await this.finalAmountDue.textContent();
|
||||||
|
|
||||||
|
|
@ -59,7 +59,7 @@ export class OrderConfirmationPage extends BasePage {
|
||||||
|
|
||||||
// Service package validations
|
// Service package validations
|
||||||
await expect.soft(this.cartServicePackageText).toContainText(`${servicePackage}`)
|
await expect.soft(this.cartServicePackageText).toContainText(`${servicePackage}`)
|
||||||
if (servicePackage === ServicePackage.Premium || servicePackage === ServicePackage.Standard) {
|
if ((servicePackage === ServicePackage.Premium && testData.isReplace === true) || servicePackage === ServicePackage.Standard) {
|
||||||
expect.soft(servicePackageValue).toContain('New wiper blades');
|
expect.soft(servicePackageValue).toContain('New wiper blades');
|
||||||
}
|
}
|
||||||
if (servicePackage === ServicePackage.Premium) {
|
if (servicePackage === ServicePackage.Premium) {
|
||||||
|
|
@ -76,7 +76,7 @@ export class OrderConfirmationPage extends BasePage {
|
||||||
if (isPolicyFound && (isUseVehicleOnPolicy ?? true)) {
|
if (isPolicyFound && (isUseVehicleOnPolicy ?? true)) {
|
||||||
// Extract numbers
|
// Extract numbers
|
||||||
const amountDueAmt = Number.parseFloat(amountDueValue!.split('$')[1].replaceAll(',', ''));
|
const amountDueAmt = Number.parseFloat(amountDueValue!.split('$')[1].replaceAll(',', ''));
|
||||||
const deductibleAmt = deductibleTextValue? Number.parseFloat(deductibleTextValue.split('$')[1].replaceAll(',', '')): 0;
|
const deductibleAmt = deductibleTextValue ? Number.parseFloat(deductibleTextValue.split('$')[1].replaceAll(',', '')) : 0;
|
||||||
const subtotalAmt = Number.parseFloat(subtotalTextValue!.split('$')[1].replaceAll(',', ''));
|
const subtotalAmt = Number.parseFloat(subtotalTextValue!.split('$')[1].replaceAll(',', ''));
|
||||||
subtotalTextValue?.replaceAll(',', '')
|
subtotalTextValue?.replaceAll(',', '')
|
||||||
const finalAmountDueAmt = Number.parseFloat(finalAmountDueValue!.split('$')[1].replaceAll(',', ''));
|
const finalAmountDueAmt = Number.parseFloat(finalAmountDueValue!.split('$')[1].replaceAll(',', ''));
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,8 @@ export class ServiceLocationPage extends BasePage {
|
||||||
|
|
||||||
// For in-shop and drop off
|
// For in-shop and drop off
|
||||||
this.selectAShopOptions = this.page.locator('[class="shop-question"]');
|
this.selectAShopOptions = this.page.locator('[class="shop-question"]');
|
||||||
this.firstAppointmentButton = this.page.locator('div').filter({ hasText: /Appts/}).first();
|
// this.firstAppointmentButton = this.page.locator('div').filter({ hasText: /Appts/}).first();
|
||||||
|
this.firstAppointmentButton = this.page.locator('#availabilityIndicator').first();
|
||||||
this.changeZipButton = this.page.locator('[id="serviceZipLinkPromptId"]');
|
this.changeZipButton = this.page.locator('[id="serviceZipLinkPromptId"]');
|
||||||
this.updateZipTextBox = this.page.getByRole('textbox', { name: 'Update your service ZIP code'});
|
this.updateZipTextBox = this.page.getByRole('textbox', { name: 'Update your service ZIP code'});
|
||||||
this.saveZipButton = this.page.getByRole('button', { name: 'Save ZIP code' });
|
this.saveZipButton = this.page.getByRole('button', { name: 'Save ZIP code' });
|
||||||
|
|
|
||||||
|
|
@ -79,27 +79,5 @@ export class WelcomePage extends BasePage {
|
||||||
await this.city.fill(customerDetails.address.city);
|
await this.city.fill(customerDetails.address.city);
|
||||||
await this.state.selectOption(customerDetails.address.state);
|
await this.state.selectOption(customerDetails.address.state);
|
||||||
}
|
}
|
||||||
await this.logReferralNumber();
|
|
||||||
}
|
|
||||||
|
|
||||||
async logReferralNumber() {
|
|
||||||
let mainLocalStorage = JSON.parse(await this.page.evaluate('localStorage.getItem(\'main\')'));
|
|
||||||
let referralNumber = mainLocalStorage.order.referralNumber as number;
|
|
||||||
let referralSequenceNumber = mainLocalStorage.order.referralSequenceNumber as number;
|
|
||||||
if (referralNumber == null) {
|
|
||||||
for (let i = 1; i <= 20; i++) {
|
|
||||||
if (!referralNumber == null) break;
|
|
||||||
await this.page.waitForTimeout(500);
|
|
||||||
mainLocalStorage = JSON.parse(await this.page.evaluate('localStorage.getItem(\'main\')'));
|
|
||||||
referralNumber = mainLocalStorage.order.referralNumber as number;
|
|
||||||
referralSequenceNumber = mainLocalStorage.order.referralSequenceNumber as number;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
await test.step(`Referral Number:${referralNumber} Referral Sequence Number:${referralSequenceNumber}`, async () => {
|
|
||||||
console.log(`Referral Number:${referralNumber}`);
|
|
||||||
console.log(`Referral Sequence Number:${referralSequenceNumber}`);
|
|
||||||
});
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -28,7 +28,7 @@ if (!process.env.CI) {
|
||||||
const reportConfig: OrtoniReportConfig = {
|
const reportConfig: OrtoniReportConfig = {
|
||||||
port: 1994,
|
port: 1994,
|
||||||
open: "never",
|
open: "never",
|
||||||
folderPath: "ortoni-report",
|
folderPath: "test-results",
|
||||||
filename: "index.html",
|
filename: "index.html",
|
||||||
logo: "../business-logic/data/logo.png",
|
logo: "../business-logic/data/logo.png",
|
||||||
title: "Test Report",
|
title: "Test Report",
|
||||||
|
|
@ -39,8 +39,8 @@ const reportConfig: OrtoniReportConfig = {
|
||||||
base64Image: true,
|
base64Image: true,
|
||||||
};
|
};
|
||||||
|
|
||||||
export const reportFilePath = path.resolve(__dirname, './test-results/accessibility-report.html');
|
export const reportFilePath = path.resolve(__dirname, './../test-results/accessibility-report.html');
|
||||||
export const jsonReportFilePath = path.resolve(__dirname, './test-results/accessibility-report.json');
|
export const jsonReportFilePath = path.resolve(__dirname, './../test-results/accessibility-report.json');
|
||||||
|
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
testDir: './tests',
|
testDir: './tests',
|
||||||
|
|
@ -55,10 +55,10 @@ export default defineConfig({
|
||||||
/* Reporter to use. See https://playwright.dev/docs/test-reporters */
|
/* Reporter to use. See https://playwright.dev/docs/test-reporters */
|
||||||
reporter: [
|
reporter: [
|
||||||
['ortoni-report', reportConfig],
|
['ortoni-report', reportConfig],
|
||||||
['junit', {outputFile: '../test-results/junit_results.xml'}],
|
['junit'],
|
||||||
['list']
|
['list']
|
||||||
],
|
],
|
||||||
timeout: 240_000,
|
timeout: 120_000,
|
||||||
/* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
|
/* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
|
||||||
use: {
|
use: {
|
||||||
/* Base URL to use in actions like `await page.goto('/')`. */
|
/* Base URL to use in actions like `await page.goto('/')`. */
|
||||||
|
|
|
||||||
|
|
@ -49,7 +49,9 @@ import advancedScenario0009TestCases from "./advanced/0009a_NoDeductibleFlorida"
|
||||||
import advancedScenario0010TestCases from "./advanced/0010a_RearGlass";
|
import advancedScenario0010TestCases from "./advanced/0010a_RearGlass";
|
||||||
import advancedScenario0021TestCases from "./advanced/0021a_VehicleByPlate";
|
import advancedScenario0021TestCases from "./advanced/0021a_VehicleByPlate";
|
||||||
import advancedScenario0022TestCases from "./advanced/0022a_VehicleByVIN";
|
import advancedScenario0022TestCases from "./advanced/0022a_VehicleByVIN";
|
||||||
|
import advancedScenario0023TestCases from "./advanced/0023a_VehicleByVINPartsQns";
|
||||||
import { createAccessibilityHtmlReport } from "@impl/utils/ReportUtils";
|
import { createAccessibilityHtmlReport } from "@impl/utils/ReportUtils";
|
||||||
|
import advancedScenario0024TestCases from "./advanced/0024a_VehicleByVINUnverifiedBailout";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -271,6 +273,16 @@ test.describe.parallel('ISS QA Automation Regression', () => {
|
||||||
for (const testCase of advancedScenario0022TestCases) {
|
for (const testCase of advancedScenario0022TestCases) {
|
||||||
test(...prepareTest(testCase, run, options, ruleEngine));
|
test(...prepareTest(testCase, run, options, ruleEngine));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Scenario 0023a
|
||||||
|
for (const testCase of advancedScenario0023TestCases) {
|
||||||
|
test(...prepareTest(testCase, run, options, ruleEngine));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Scenario 0024a
|
||||||
|
for (const testCase of advancedScenario0024TestCases) {
|
||||||
|
test(...prepareTest(testCase, run, options, ruleEngine));
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -284,7 +296,9 @@ test.afterAll(() => {
|
||||||
|
|
||||||
async function run(page: Page, testInfo: TestInfo): Promise<void> {
|
async function run(page: Page, testInfo: TestInfo): Promise<void> {
|
||||||
if (!(testInfo.testCase.testData?.isMockTesting ?? false)) {
|
if (!(testInfo.testCase.testData?.isMockTesting ?? false)) {
|
||||||
await testInfo.testCase.setup();
|
if (testInfo.testCase.testData?.isPolicyFound) {
|
||||||
|
await testInfo.testCase.setup();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
testInfo.testCase.setupPages(page);
|
testInfo.testCase.setupPages(page);
|
||||||
if (testInfo.testCase.testData.isAuthenticationRequired) {
|
if (testInfo.testCase.testData.isAuthenticationRequired) {
|
||||||
|
|
@ -314,7 +328,7 @@ async function runWorkflow(page: Page, testCase: TestCase) {
|
||||||
partQuestions, paymentDetails, isNoComp, isItac, isRecalNotification,
|
partQuestions, paymentDetails, isNoComp, isItac, isRecalNotification,
|
||||||
isRecalWarning, servicePackage, hasStateLawPopup, otherVehiclesOnPolicy,
|
isRecalWarning, servicePackage, hasStateLawPopup, otherVehiclesOnPolicy,
|
||||||
isSeparateApptsWarning, vehiclePartQuestions, editVehicleDetails,
|
isSeparateApptsWarning, vehiclePartQuestions, editVehicleDetails,
|
||||||
hasMilitaryWarning, capabilityQuestions, isUseVehicleOnPolicy, isVehicleLookupValidations } = testCase.testData;
|
hasMilitaryWarning, capabilityQuestions, isUseVehicleOnPolicy, isVehicleLookupValidations, isMoldingQuestion } = testCase.testData;
|
||||||
|
|
||||||
let { isPolicyFound } = testCase.testData; // Allow isPolicyFound to be re-assigned
|
let { isPolicyFound } = testCase.testData; // Allow isPolicyFound to be re-assigned
|
||||||
|
|
||||||
|
|
@ -326,7 +340,7 @@ async function runWorkflow(page: Page, testCase: TestCase) {
|
||||||
endorsementsPage, vehicleLookupPage, partQuestionsPage, paymentMethodPage,
|
endorsementsPage, vehicleLookupPage, partQuestionsPage, paymentMethodPage,
|
||||||
vehicleLookupAddressPage, vehicleLookupLicensePage, vinLookupPage,
|
vehicleLookupAddressPage, vehicleLookupLicensePage, vinLookupPage,
|
||||||
bailoutPage, tpaSearchPage, tpaSubmitPage, tpaConfirmationPage,
|
bailoutPage, tpaSearchPage, tpaSubmitPage, tpaConfirmationPage,
|
||||||
vehiclePartQuestionsPage, capabilityQuestionsPage } = testCase.pages;
|
vehiclePartQuestionsPage, capabilityQuestionsPage, moldingQuestionsPage } = testCase.pages;
|
||||||
|
|
||||||
// Destructure bailout flags
|
// Destructure bailout flags
|
||||||
const { isVehicleSelectBailout, isDoNotSeeMyShopBailout, isTpaNotEnabledBailout,
|
const { isVehicleSelectBailout, isDoNotSeeMyShopBailout, isTpaNotEnabledBailout,
|
||||||
|
|
@ -475,12 +489,19 @@ async function runWorkflow(page: Page, testCase: TestCase) {
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
if (isVehicleSelectBailout) {
|
if (testCase.testData.isVehicleSelectBailout) {
|
||||||
await test.step('BailoutPage >> Validate Bailout', async () => {
|
await test.step('Lookup vehicle >> By VIN-' + vehicleDetails!.vin!, async () => {
|
||||||
await vinLookupPage.enterVin(vehicleDetails!.vin!);
|
await vinLookupPage.enterVin(vehicleDetails!.vin!);
|
||||||
|
});
|
||||||
|
|
||||||
|
await test.step('Click Invalid vin Link', async () => {
|
||||||
await vinLookupPage.triggerBailout();
|
await vinLookupPage.triggerBailout();
|
||||||
|
});
|
||||||
|
|
||||||
|
await test.step('BailoutPage >> Validate Bailout-' + BailoutCode.VehicleNotFound, async () => {
|
||||||
await bailoutPage.validateBailoutDetails(customerDetails!, BailoutCode.VehicleNotFound);
|
await bailoutPage.validateBailoutDetails(customerDetails!, BailoutCode.VehicleNotFound);
|
||||||
});
|
});
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
switch (vehicleDetails!.vehicleLookupType!) {
|
switch (vehicleDetails!.vehicleLookupType!) {
|
||||||
|
|
@ -512,7 +533,15 @@ async function runWorkflow(page: Page, testCase: TestCase) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (isMoldingQuestion) {
|
||||||
|
await test.step('Molding Questions Page >> Select Yes', async () => {
|
||||||
|
if (!moldingQuestionsPage) {
|
||||||
|
console.error("moldingQuestionsPage is not initialized");
|
||||||
|
}
|
||||||
|
await moldingQuestionsPage.answerYes();
|
||||||
|
await moldingQuestionsPage.nextPage();
|
||||||
|
});
|
||||||
|
}
|
||||||
if (capabilityQuestions && capabilityQuestions.length > 0) {
|
if (capabilityQuestions && capabilityQuestions.length > 0) {
|
||||||
await capabilityQuestionsPage.validatePartQuestions(capabilityQuestions);
|
await capabilityQuestionsPage.validatePartQuestions(capabilityQuestions);
|
||||||
await capabilityQuestionsPage.selectPartQuestionResponses(capabilityQuestions);
|
await capabilityQuestionsPage.selectPartQuestionResponses(capabilityQuestions);
|
||||||
|
|
@ -666,4 +695,4 @@ async function runWorkflow(page: Page, testCase: TestCase) {
|
||||||
await test.step('OrderConfirmationPage >> Validate order', async () => {
|
await test.step('OrderConfirmationPage >> Validate order', async () => {
|
||||||
await orderConfirmationPage.validateOrderConfirmationPage(testCase.testData);
|
await orderConfirmationPage.validateOrderConfirmationPage(testCase.testData);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -70,7 +70,7 @@ for (const client of advancedClients) {
|
||||||
const data = { ...advancedScenario0001Data };
|
const data = { ...advancedScenario0001Data };
|
||||||
data.clientTag = client.clientTag;
|
data.clientTag = client.clientTag;
|
||||||
const tc = new TestCase({
|
const tc = new TestCase({
|
||||||
name: `0001a Advanced Replace Deductible Client: "${client.accountName}"`,
|
name: `0001a_Advanced_Replace_Deductible_Client: "${client.accountName}"`,
|
||||||
tags: [`@${client.clientTag}`, `@${client.accountName}`, '@Advanced'],
|
tags: [`@${client.clientTag}`, `@${client.accountName}`, '@Advanced'],
|
||||||
testData: data
|
testData: data
|
||||||
}, undefined, '0001a');
|
}, undefined, '0001a');
|
||||||
|
|
|
||||||
|
|
@ -23,10 +23,10 @@ const customerDetails: ICustomerDetails = {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const policyNumber = `~AutomatedScenario0021a${faker.string.uuid().substring(0, 6)}`;
|
const policyNumber = `~AutomatedScenario0022a${faker.string.uuid().substring(0, 6)}`;
|
||||||
const policySoap = MockPolicyData.getPolicySoapByScenario('0021a', customerDetails, policyNumber);
|
const policySoap = MockPolicyData.getPolicySoapByScenario('0022a', customerDetails, policyNumber);
|
||||||
|
|
||||||
const advancedScenario0021Data: Partial<ITestData> = {
|
const advancedScenario0022Data: Partial<ITestData> = {
|
||||||
clientTag: '',
|
clientTag: '',
|
||||||
isDuplicateClaim: false,
|
isDuplicateClaim: false,
|
||||||
isPolicyFound: true,
|
isPolicyFound: true,
|
||||||
|
|
@ -73,7 +73,7 @@ const advancedScenario0021Data: Partial<ITestData> = {
|
||||||
const advancedClients = ClientData.getAdvancedClients();
|
const advancedClients = ClientData.getAdvancedClients();
|
||||||
const advancedScenario0022TestCases: TestCase[] = [];
|
const advancedScenario0022TestCases: TestCase[] = [];
|
||||||
for (const client of advancedClients) {
|
for (const client of advancedClients) {
|
||||||
const data = { ...advancedScenario0021Data };
|
const data = { ...advancedScenario0022Data };
|
||||||
data.clientTag = client.clientTag;
|
data.clientTag = client.clientTag;
|
||||||
const tc = new TestCase({
|
const tc = new TestCase({
|
||||||
name: `0022a Advanced Client Vehicle By Vin: "${client.accountName}"`,
|
name: `0022a Advanced Client Vehicle By Vin: "${client.accountName}"`,
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,84 @@
|
||||||
|
import ClientData from "@business-logic/data/ClientData";
|
||||||
|
import TestCase from "@business-logic/types/TestCase";
|
||||||
|
import { DamageType, PartQuestionType, PaymentType, ServiceLocation, ServicePackage, VehicleDamage, VehicleLookupType } from "@business-logic/types/Enums";
|
||||||
|
import { ITestData } from "@business-logic/types/ITestData"
|
||||||
|
import { faker } from "@faker-js/faker";
|
||||||
|
import { getNextWeekday } from "@impl/utils/DateUtils";
|
||||||
|
import MockPolicyData from "@business-logic/data/MockPolicyData";
|
||||||
|
import { ICustomerDetails } from "@business-logic/types/CustomerDetails";
|
||||||
|
|
||||||
|
const nextWeekday = getNextWeekday();
|
||||||
|
const customerDetails: ICustomerDetails = {
|
||||||
|
firstName: faker.person.firstName(),
|
||||||
|
lastName: faker.person.lastName(),
|
||||||
|
email: 'itqatest@safelite.com',
|
||||||
|
phoneNumber: '614-531-0031',
|
||||||
|
notes: 'Automated Test',
|
||||||
|
address: {
|
||||||
|
street: faker.location.streetAddress(),
|
||||||
|
city: 'San Jose',
|
||||||
|
state: 'CA',
|
||||||
|
postalCode: '97230-6373',
|
||||||
|
country: 'United States'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const policyNumber = `~AutomatedScenario0023a${faker.string.uuid().substring(0, 6)}`;
|
||||||
|
const policySoap = MockPolicyData.getPolicySoapByScenario('0023a', customerDetails, policyNumber);
|
||||||
|
|
||||||
|
const advancedScenario0023Data: Partial<ITestData> = {
|
||||||
|
clientTag: '',
|
||||||
|
isDuplicateClaim: false,
|
||||||
|
isPolicyFound: true,
|
||||||
|
isNoComp: false,
|
||||||
|
hasStateLawPopup: true,
|
||||||
|
endorsements: undefined,
|
||||||
|
isUseVehicleOnPolicy: false,
|
||||||
|
isVehicleLookupValidations: true,
|
||||||
|
isMoldingQuestion: true,
|
||||||
|
isSafelite: true,
|
||||||
|
servicePackage: faker.helpers.enumValue(ServicePackage),
|
||||||
|
customerDetails: customerDetails,
|
||||||
|
claimDetails: {
|
||||||
|
policyNumber: policyNumber,
|
||||||
|
policyDeductible: 500,
|
||||||
|
damageDate: '2017-06-02',
|
||||||
|
damageCause: DamageType.Vandalism
|
||||||
|
},
|
||||||
|
policySoap: policySoap,
|
||||||
|
vehicleDetails: {
|
||||||
|
year: '1999',
|
||||||
|
make: 'Buick',
|
||||||
|
model: 'LeSabre',
|
||||||
|
style: '4 door sedan',
|
||||||
|
vehicleLookupType: VehicleLookupType.Vin,
|
||||||
|
vin: '1G4HR52K2XH454648',
|
||||||
|
},
|
||||||
|
vehicleDamage: [
|
||||||
|
VehicleDamage.WindshieldCrack,
|
||||||
|
],
|
||||||
|
appointmentDetails: {
|
||||||
|
serviceLocation: ServiceLocation.InShop,
|
||||||
|
shopAddress: undefined,
|
||||||
|
appointmentDate: nextWeekday
|
||||||
|
},
|
||||||
|
paymentDetails: {
|
||||||
|
paymentType: PaymentType.PayAtService
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// TODO: Add validation for deductible/covered amount
|
||||||
|
const advancedClients = ClientData.getAdvancedClients();
|
||||||
|
const advancedScenario0023TestCases: TestCase[] = [];
|
||||||
|
for (const client of advancedClients) {
|
||||||
|
const data = { ...advancedScenario0023Data };
|
||||||
|
data.clientTag = client.clientTag;
|
||||||
|
const tc = new TestCase({
|
||||||
|
name: `0023a Advanced client Unlisted Vehicle: "${client.accountName}"`,
|
||||||
|
tags: [`@${client.clientTag}`, `@${client.accountName}`, '@Advanced'],
|
||||||
|
testData: data
|
||||||
|
}, undefined, '0023a');
|
||||||
|
advancedScenario0023TestCases.push(tc);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default advancedScenario0023TestCases;
|
||||||
|
|
@ -0,0 +1,83 @@
|
||||||
|
import ClientData from "@business-logic/data/ClientData";
|
||||||
|
import TestCase from "@business-logic/types/TestCase";
|
||||||
|
import { DamageType, PartQuestionType, PaymentType, ServiceLocation, ServicePackage, VehicleDamage, VehicleLookupType } from "@business-logic/types/Enums";
|
||||||
|
import { ITestData } from "@business-logic/types/ITestData"
|
||||||
|
import { faker } from "@faker-js/faker";
|
||||||
|
import { getNextWeekday } from "@impl/utils/DateUtils";
|
||||||
|
import MockPolicyData from "@business-logic/data/MockPolicyData";
|
||||||
|
import { ICustomerDetails } from "@business-logic/types/CustomerDetails";
|
||||||
|
|
||||||
|
const nextWeekday = getNextWeekday();
|
||||||
|
const customerDetails: ICustomerDetails = {
|
||||||
|
firstName: faker.person.firstName(),
|
||||||
|
lastName: faker.person.lastName(),
|
||||||
|
email: 'itqatest@safelite.com',
|
||||||
|
phoneNumber: '614-531-0031',
|
||||||
|
notes: 'Automated Test',
|
||||||
|
address: {
|
||||||
|
street: faker.location.streetAddress(),
|
||||||
|
city: 'Columbus',
|
||||||
|
state: 'OH',
|
||||||
|
postalCode: '43220',
|
||||||
|
country: 'United States'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const policyNumber = `~AutomatedScenario0024a${faker.string.uuid().substring(0, 6)}`;
|
||||||
|
const policySoap = MockPolicyData.getPolicySoapByScenario('0024a', customerDetails, policyNumber);
|
||||||
|
|
||||||
|
const advancedScenario0024Data: Partial<ITestData> = {
|
||||||
|
clientTag: '',
|
||||||
|
isDuplicateClaim: false,
|
||||||
|
isPolicyFound: false,
|
||||||
|
isNoComp: false,
|
||||||
|
hasStateLawPopup: false,
|
||||||
|
endorsements: undefined,
|
||||||
|
isUseVehicleOnPolicy: false,
|
||||||
|
isVehicleLookupValidations: false,
|
||||||
|
isVehicleSelectBailout: true,
|
||||||
|
isMoldingQuestion: true,
|
||||||
|
isSafelite: true,
|
||||||
|
servicePackage: faker.helpers.enumValue(ServicePackage),
|
||||||
|
customerDetails: customerDetails,
|
||||||
|
claimDetails: {
|
||||||
|
policyNumber: policyNumber,
|
||||||
|
policyDeductible: 0.00,
|
||||||
|
damageDate: '2017-06-02',
|
||||||
|
damageCause: DamageType.Vandalism
|
||||||
|
},
|
||||||
|
policySoap: policySoap,
|
||||||
|
vehicleDetails: {
|
||||||
|
year: '2015',
|
||||||
|
make: 'Honda',
|
||||||
|
model: 'Accord',
|
||||||
|
style: '4 door sedan',
|
||||||
|
vehicleLookupType: VehicleLookupType.Vin,
|
||||||
|
vin: '0HGCR2E30FA099831',
|
||||||
|
},
|
||||||
|
vehicleDamage: [
|
||||||
|
VehicleDamage.WindshieldCrack,
|
||||||
|
],
|
||||||
|
appointmentDetails: {
|
||||||
|
serviceLocation: ServiceLocation.InShop,
|
||||||
|
shopAddress: undefined,
|
||||||
|
appointmentDate: nextWeekday
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// TODO: Add validation for deductible/covered amount
|
||||||
|
const advancedClients = ClientData.getAdvancedClients();
|
||||||
|
const advancedScenario0024TestCases: TestCase[] = [];
|
||||||
|
for (const client of advancedClients) {
|
||||||
|
const data = { ...advancedScenario0024Data };
|
||||||
|
data.clientTag = client.clientTag;
|
||||||
|
const tc = new TestCase({
|
||||||
|
name: `0024a Advanced client Unlisted Vehicle Bailout: "${client.accountName}"`,
|
||||||
|
tags: [`@${client.clientTag}`, `@${client.accountName}`, '@Advanced'],
|
||||||
|
testData: data
|
||||||
|
}, undefined, '0024a');
|
||||||
|
advancedScenario0024TestCases.push(tc);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default advancedScenario0024TestCases;
|
||||||
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"userKey": 2004417,
|
||||||
|
"sessionKey": 2419636,
|
||||||
|
"sessionId": "8967dbc4-5081-47c4-a896-03050353d9e2",
|
||||||
|
"userId": "2ea43842-440b-4362-a72f-105d987f4bc1",
|
||||||
|
"deviceId": "2ea43842-440b-4362-a72f-105d987f4bc1",
|
||||||
|
"version": 1,
|
||||||
|
"status": 1,
|
||||||
|
"error": null
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
{
|
||||||
|
"accountNumber": "550036",
|
||||||
|
"detailedErrorMessage": null,
|
||||||
|
"notes": null,
|
||||||
|
"hasPolicies": false,
|
||||||
|
"deductible": 250,
|
||||||
|
"status": null,
|
||||||
|
"noCoverage": false,
|
||||||
|
"isOEMEndorsed": false,
|
||||||
|
"policyData": "AMjHAgrjFS8H8IiDcI9sC8DUxbkV/fm1HmxAnMOiIuk1OKL4a5gpqx3O8DmtryfvwcsjA1vAsxalx4t73Fukx0axtCS1cX6NopWRnLnxTPvL3Mv3IcgESaBqcEeWtSol8CN2tly7xvRHPjdQUzXictkVxtlYssRRoPt5V/QtPyydEDbeoHY0F3gTd9/bhxuRCZ5zvO2/jXvVMB2zznBzYfa44+Ywhl9T9ip7VMlcHxox1Wce6kWOGSZTLtf8Zkg+5uft2JspYryrQkhn8/bC3amYRChdfzE8kGL3jh2x1cYgGg1Ooyh7UaWbc/zEFrlt",
|
||||||
|
"referralCorrelationId": "02601141-4f2a-4fc9-9b72-a01c49a2f3fd",
|
||||||
|
"referralNumber": null,
|
||||||
|
"isSuccess": true,
|
||||||
|
"isError": false,
|
||||||
|
"errorCode": null,
|
||||||
|
"errorMessage": null,
|
||||||
|
"successMessage": null
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
{
|
||||||
|
"referralNumber": "120916",
|
||||||
|
"referralSequenceNumber": "10101599",
|
||||||
|
"referralDate": "2025-02-19T10:33:17.68",
|
||||||
|
"referralCorrelationId": "02601141-4f2a-4fc9-9b72-a01c49a2f3fd",
|
||||||
|
"parentAccountNumber": 550036,
|
||||||
|
"billToAccountNumber": "214616",
|
||||||
|
"crmCustomerId": 857222,
|
||||||
|
"savedSessionId": "9da64bae-c2a0-4ef6-8477-74f42965c369",
|
||||||
|
"eon": "S10097450",
|
||||||
|
"workOrderNumber": "",
|
||||||
|
"workOrderId": "",
|
||||||
|
"workOrderStatus": "",
|
||||||
|
"customerPortalLoginToken": "00000000-0000-0000-0000-000000000000",
|
||||||
|
"lockToken": null,
|
||||||
|
"settledTenderAmount": 0.0,
|
||||||
|
"isRecalAckOptIn": false
|
||||||
|
}
|
||||||
|
|
@ -5,18 +5,18 @@
|
||||||
"expirationDate": "0001-01-01T00:00:00",
|
"expirationDate": "0001-01-01T00:00:00",
|
||||||
"type": null,
|
"type": null,
|
||||||
"lineOfBusiness": null,
|
"lineOfBusiness": null,
|
||||||
"policyNumber": "AOA23102736040",
|
"policyNumber": "~AutomatedScenario0001a1db71b",
|
||||||
"status": null,
|
"status": null,
|
||||||
"source": null,
|
"source": null,
|
||||||
"insureds": [
|
"insureds": [
|
||||||
{
|
{
|
||||||
"firstName": "JOHN",
|
"firstName": "Collin",
|
||||||
"lastName": "SMITH",
|
"lastName": "Collier",
|
||||||
"businessName": null,
|
"businessName": null,
|
||||||
"address": "4372 SUNSHINE DR",
|
"address": "601 Grove Lane",
|
||||||
"city": "MONTGOMERY",
|
"city": "PORTLAND",
|
||||||
"state": "AL",
|
"state": "OR",
|
||||||
"zipCode": "36116",
|
"zipCode": "97230",
|
||||||
"phones": null,
|
"phones": null,
|
||||||
"email": null,
|
"email": null,
|
||||||
"driverLicenseState": null,
|
"driverLicenseState": null,
|
||||||
|
|
@ -28,25 +28,33 @@
|
||||||
"vehicles": [
|
"vehicles": [
|
||||||
{
|
{
|
||||||
"id": 0,
|
"id": 0,
|
||||||
"vehicleYear": "2006",
|
"vehicleYear": "2020",
|
||||||
"vehicleMake": "SBRU",
|
"vehicleMake": "BMW",
|
||||||
"vehicleModel": "FORESTER",
|
"vehicleModel": "740",
|
||||||
"vehicleStyle": null,
|
"vehicleStyle": null,
|
||||||
"licensePlate": "UNKNOWN",
|
"licensePlate": "UNKNOWN",
|
||||||
"vin": "JF1SG63616B121212",
|
"vin": "WBA7T2C01LGL17632",
|
||||||
"driver": null,
|
"driver": null,
|
||||||
"owner": null,
|
"owner": null,
|
||||||
"coverages": [],
|
"coverages": [
|
||||||
|
{
|
||||||
|
"code": "COMP",
|
||||||
|
"deductible": 250,
|
||||||
|
"individualLimit": 0,
|
||||||
|
"occurrenceLimit": 0,
|
||||||
|
"dayLimit": 0
|
||||||
|
}
|
||||||
|
],
|
||||||
"fleetNumber": null,
|
"fleetNumber": null,
|
||||||
"fleetUnitNumber": "1",
|
"fleetUnitNumber": "1",
|
||||||
"endorsements": null
|
"endorsements": null
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"taxExempt": "FALSE",
|
"taxExempt": "FALSE",
|
||||||
"policyData": "G+r99boRzfUExiJdE0IYp5w1bhP8AZ31Qy+HnTxiQ8sf9paDgwprrcJJ8b8Sd3khpFBwgGwA0ZDgZmLNcmlOiSRchEvJfrZ47XoMTYq4cRsYjrMqvGVKl2ihGDY5brfMc11Hj6h/iJyDyUTAF4CgkDGhtRTHRcaDnjNQtC3G5Mge5LnZwF1HZs6AI4iFm43O6ZFC1fviI00LoQ1JAiXRcDBDng9OFTkeHoyAiVbxyaUqT07sEKl7jHKXJGYletP2r+yMKdMPoN2fo48quSvoQA=="
|
"policyData": "AMjHAgrjFS8H8IiDcI9sC8DUxbkV/fm1HmxAnMOiIuk1OKL4a5gpqx3O8DmtryfvwcsjA1vAsxalx4t73Fukx0axtCS1cX6NopWRnLnxTPvL3Mv3IcgESaBqcEeWtSol8CN2tly7xvRHPjdQUzXictkVxtlYssRRoPt5V/QtPyydEDbeoHY0F3gTd9/bhxuRCZ5zvO2/jXvVMB2zznBzYfa44+Ywhl9T9ip7VMlcHxox1Wce6kWOGSZTLtf8Zkg+5uft2JspYryrQkhn8/bC3amYRChdfzE8kGL3jh2x1cYgGg1Ooyh7UaWbc/zEFrlt"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"referralCorrelationId": "6a4e2176-b877-481a-ab13-01653ee4f224",
|
"referralCorrelationId": "02601141-4f2a-4fc9-9b72-a01c49a2f3fd",
|
||||||
"referralNumber": null,
|
"referralNumber": null,
|
||||||
"accountNumber": "550036",
|
"accountNumber": "550036",
|
||||||
"isSuccess": true,
|
"isSuccess": true,
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
{
|
||||||
|
"claimantId": null,
|
||||||
|
"claimNumber": "0589139920001",
|
||||||
|
"notes": null,
|
||||||
|
"dispatchNumber": null,
|
||||||
|
"deductible": 0,
|
||||||
|
"referralCorrelationId": "02601141-4f2a-4fc9-9b72-a01c49a2f3fd",
|
||||||
|
"referralNumber": null,
|
||||||
|
"accountNumber": "550036",
|
||||||
|
"isSuccess": true,
|
||||||
|
"isError": false,
|
||||||
|
"errorCode": null,
|
||||||
|
"errorMessage": null,
|
||||||
|
"successMessage": "registered"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
"experiments": [
|
||||||
|
{
|
||||||
|
"universeName": "PIAInsurance",
|
||||||
|
"universeId": 640,
|
||||||
|
"testName": "PIAInsurance_V1",
|
||||||
|
"testId": 504,
|
||||||
|
"variationName": "YesShowPIAInsurance_TEST",
|
||||||
|
"variationId": 1430,
|
||||||
|
"isActive": true,
|
||||||
|
"isExposed": true,
|
||||||
|
"userPartitionNumber": 12,
|
||||||
|
"assignmentId": 14863748,
|
||||||
|
"settings": {
|
||||||
|
"DisplayPIAInsurance": "true"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1,149 @@
|
||||||
|
{
|
||||||
|
"mobileProviderNumber": "001813",
|
||||||
|
"shopProviders": [
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "PLANO",
|
||||||
|
"country": "US",
|
||||||
|
"state": "TX",
|
||||||
|
"streetAddress": "1601 E PLANO PKWY",
|
||||||
|
"streetAddress2": "STE 150",
|
||||||
|
"zipCode": "75074",
|
||||||
|
"zipCodeCtu": "01813"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 4.187648412874978,
|
||||||
|
"providerNumber": "001813",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - DALLAS-FT.WO,TX SOR-CTU",
|
||||||
|
"phoneNumber": "9724237183",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "MCKINNEY",
|
||||||
|
"country": "US",
|
||||||
|
"state": "TX",
|
||||||
|
"streetAddress": "417 POWER HOUSE ST.",
|
||||||
|
"streetAddress2": "STE A",
|
||||||
|
"zipCode": "75071",
|
||||||
|
"zipCodeCtu": "01813"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 13.220085913669747,
|
||||||
|
"providerNumber": "005318",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - MCKINNEY, TX",
|
||||||
|
"phoneNumber": "9725624492",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "LEWISVILLE",
|
||||||
|
"country": "US",
|
||||||
|
"state": "TX",
|
||||||
|
"streetAddress": "2129 S STEMMONS FWY",
|
||||||
|
"streetAddress2": "",
|
||||||
|
"zipCode": "75067",
|
||||||
|
"zipCodeCtu": "01813"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 14.553951205638858,
|
||||||
|
"providerNumber": "004542",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - LEWISVILLE, TX",
|
||||||
|
"phoneNumber": "4694442057",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "MESQUITE",
|
||||||
|
"country": "US",
|
||||||
|
"state": "TX",
|
||||||
|
"streetAddress": "2131 N TOWN EAST BLVD",
|
||||||
|
"streetAddress2": "",
|
||||||
|
"zipCode": "75150",
|
||||||
|
"zipCodeCtu": "01813"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 17.86005691117364,
|
||||||
|
"providerNumber": "004541",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - MESQUITE, TX",
|
||||||
|
"phoneNumber": "9722889891",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "N RICHLAND HILLS",
|
||||||
|
"country": "US",
|
||||||
|
"state": "TX",
|
||||||
|
"streetAddress": "5649 RUFE SNOW DR",
|
||||||
|
"streetAddress2": "",
|
||||||
|
"zipCode": "76180",
|
||||||
|
"zipCodeCtu": "04544"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 32.558897054726366,
|
||||||
|
"providerNumber": "006504",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - FORT WORTH, TX RDU",
|
||||||
|
"phoneNumber": "8176569791",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "ARLINGTON",
|
||||||
|
"country": "US",
|
||||||
|
"state": "TX",
|
||||||
|
"streetAddress": "2411 S COOPER ST",
|
||||||
|
"streetAddress2": "",
|
||||||
|
"zipCode": "76015",
|
||||||
|
"zipCodeCtu": "04544"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 33.065576901075474,
|
||||||
|
"providerNumber": "004540",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - ARLINGTON, TX",
|
||||||
|
"phoneNumber": "8175224300",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "GREENVILLE",
|
||||||
|
"country": "US",
|
||||||
|
"state": "TX",
|
||||||
|
"streetAddress": "7907 TRADERS CIR",
|
||||||
|
"streetAddress2": "",
|
||||||
|
"zipCode": "75402",
|
||||||
|
"zipCodeCtu": "01813"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 36.369381330667089,
|
||||||
|
"providerNumber": "005317",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - GREENVILLE, TX",
|
||||||
|
"phoneNumber": "9034501771",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "FORT WORTH",
|
||||||
|
"country": "US",
|
||||||
|
"state": "TX",
|
||||||
|
"streetAddress": "2751 NORTHERN CROSS BLVD",
|
||||||
|
"streetAddress2": "",
|
||||||
|
"zipCode": "76137",
|
||||||
|
"zipCodeCtu": "04544"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 36.676844951002508,
|
||||||
|
"providerNumber": "004544",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - FORT WORTH, TX",
|
||||||
|
"phoneNumber": "2143283111",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "TYLER",
|
||||||
|
"country": "US",
|
||||||
|
"state": "TX",
|
||||||
|
"streetAddress": "4043 S BROADWAY AVE",
|
||||||
|
"streetAddress2": "",
|
||||||
|
"zipCode": "75701",
|
||||||
|
"zipCodeCtu": "01813"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 98.1186957553462,
|
||||||
|
"providerNumber": "000714",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - TYLER, TX",
|
||||||
|
"phoneNumber": "9035972059",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,14 @@
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"partNumber": "SBB19",
|
||||||
|
"description": "SAFELITE BEAM BLADE 19",
|
||||||
|
"partType": "FRONT WIPER",
|
||||||
|
"isInsurable": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"partNumber": "SBB26",
|
||||||
|
"description": "SAFELITE BEAM BLADE 26",
|
||||||
|
"partType": "FRONT WIPER",
|
||||||
|
"isInsurable": null
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,85 @@
|
||||||
|
{
|
||||||
|
"mobileProviderNumber": "001824",
|
||||||
|
"shopProviders": [
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "Portland",
|
||||||
|
"country": "US",
|
||||||
|
"state": "OR",
|
||||||
|
"streetAddress": "5119 NE 158th Ave",
|
||||||
|
"streetAddress2": "",
|
||||||
|
"zipCode": "97230",
|
||||||
|
"zipCodeCtu": "01824"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 1.2090846804646957,
|
||||||
|
"providerNumber": "001824",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - PORTLAND, OR WSR-CTU",
|
||||||
|
"phoneNumber": "5032260323",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "Clackamas",
|
||||||
|
"country": "US",
|
||||||
|
"state": "OR",
|
||||||
|
"streetAddress": "11231 SE Highway 212",
|
||||||
|
"streetAddress2": "",
|
||||||
|
"zipCode": "97015",
|
||||||
|
"zipCodeCtu": "01824"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 9.5642605222286665,
|
||||||
|
"providerNumber": "003875",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - CLACKAMAS, OR",
|
||||||
|
"phoneNumber": "5037626330",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "Beaverton",
|
||||||
|
"country": "US",
|
||||||
|
"state": "OR",
|
||||||
|
"streetAddress": "13227 SW Canyon Rd",
|
||||||
|
"streetAddress2": "STE F",
|
||||||
|
"zipCode": "97005",
|
||||||
|
"zipCodeCtu": "01824"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 15.594098490720718,
|
||||||
|
"providerNumber": "004762",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - BEAVERTON, OR",
|
||||||
|
"phoneNumber": "5036436601",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "Tualatin",
|
||||||
|
"country": "US",
|
||||||
|
"state": "OR",
|
||||||
|
"streetAddress": "9606 SW Tualatin-Sherwood Rd",
|
||||||
|
"streetAddress2": "",
|
||||||
|
"zipCode": "97062",
|
||||||
|
"zipCodeCtu": "01824"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 17.548518168792196,
|
||||||
|
"providerNumber": "005919",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - TUALATIN, OR",
|
||||||
|
"phoneNumber": "5032822420",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"address": {
|
||||||
|
"city": "Keizer",
|
||||||
|
"country": "US",
|
||||||
|
"state": "OR",
|
||||||
|
"streetAddress": "4229 River Rd N",
|
||||||
|
"streetAddress2": "STE 150",
|
||||||
|
"zipCode": "97303",
|
||||||
|
"zipCodeCtu": "01824"
|
||||||
|
},
|
||||||
|
"distanceInMiles": 46.16399084140199,
|
||||||
|
"providerNumber": "004277",
|
||||||
|
"companyName": "SAFELITE AUTOGLASS - SALEM - KEIZER, OR",
|
||||||
|
"phoneNumber": "5033903030",
|
||||||
|
"isSafeliteShop": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"containsMilitaryBase": false,
|
||||||
|
"isServiceable": true,
|
||||||
|
"isValid": true,
|
||||||
|
"state": "OR",
|
||||||
|
"providerNumber": "01824",
|
||||||
|
"zipCodeCtu": "01824"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
{
|
||||||
|
"windshieldOptions": {
|
||||||
|
"availableReplacementOptions": [
|
||||||
|
"Single"
|
||||||
|
],
|
||||||
|
"isRepairAvailable": true
|
||||||
|
},
|
||||||
|
"backGlassOptions": {
|
||||||
|
"availableReplacementOptions": [
|
||||||
|
"Stationary"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"driverSideOptions": {
|
||||||
|
"availableReplacementOptions": [
|
||||||
|
"Vent",
|
||||||
|
"Back",
|
||||||
|
"Front"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"passengerSideOptions": {
|
||||||
|
"availableReplacementOptions": [
|
||||||
|
"Vent",
|
||||||
|
"Back",
|
||||||
|
"Front"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
{
|
||||||
|
"partsOrQuestions": [
|
||||||
|
{
|
||||||
|
"glassPiece": {
|
||||||
|
"name": "Single",
|
||||||
|
"location": "Windshield"
|
||||||
|
},
|
||||||
|
"parts": [
|
||||||
|
{
|
||||||
|
"childPartQuestions": [],
|
||||||
|
"basePartNumber": "FW05419",
|
||||||
|
"safelitePartNumber": "FW05419 GTY",
|
||||||
|
"color": "Green Tint",
|
||||||
|
"requiresRecalibration": true,
|
||||||
|
"recalibrationType": "DYNAMIC",
|
||||||
|
"canSafeliteRecalibrate": true,
|
||||||
|
"requiresCapabilityQuestions": false,
|
||||||
|
"childParts": [
|
||||||
|
{
|
||||||
|
"partNumber": "RS 101 PAD",
|
||||||
|
"safelitePartNumber": "RS 101 PAD"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"partNumber": "FW05419GTYN",
|
||||||
|
"description": "rain sensor, solar, soundproofing, lane departure warning system, forward collision alert w",
|
||||||
|
"partType": "WINDSHIELD",
|
||||||
|
"isInsurable": null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"partQuestions": null
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
{
|
||||||
|
"partsOrQuestions": [
|
||||||
|
{
|
||||||
|
"glassPiece": {
|
||||||
|
"name": "Single",
|
||||||
|
"location": "Windshield"
|
||||||
|
},
|
||||||
|
"parts": [
|
||||||
|
{
|
||||||
|
"childPartQuestions": [],
|
||||||
|
"basePartNumber": "DW01571",
|
||||||
|
"safelitePartNumber": "DW01571 GTNOEM",
|
||||||
|
"color": "Green Tint",
|
||||||
|
"requiresRecalibration": false,
|
||||||
|
"recalibrationType": null,
|
||||||
|
"canSafeliteRecalibrate": false,
|
||||||
|
"requiresCapabilityQuestions": false,
|
||||||
|
"childParts": [
|
||||||
|
{
|
||||||
|
"partNumber": "GGG 1571",
|
||||||
|
"safelitePartNumber": "GGG 1571"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"partNumber": "DW01571GTNNOEM",
|
||||||
|
"description": "",
|
||||||
|
"partType": "WINDSHIELD"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"partQuestions": null
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"partNumber": "RAIN REPEL",
|
||||||
|
"description": null,
|
||||||
|
"partType": "RAIN DEFENSE",
|
||||||
|
"isInsurable": null
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
{
|
||||||
|
"requiredProviderServices": [
|
||||||
|
"ADAS Dynamic Calibration"
|
||||||
|
],
|
||||||
|
"canProviderRecalibrate": true,
|
||||||
|
"allowMobileSchedule": true,
|
||||||
|
"recalibrationParts": [
|
||||||
|
{
|
||||||
|
"partNumber": "RECAL DYNAMIC",
|
||||||
|
"description": "Adas Dynamic Recal Serv",
|
||||||
|
"recalibrationType": "DYNAMIC",
|
||||||
|
"ribCode": "RL",
|
||||||
|
"safelitePartNumber": "RECAL DYNAMIC",
|
||||||
|
"status": "ACTIVE",
|
||||||
|
"partType": "ADAS RECALIBRATION",
|
||||||
|
"childParts": [],
|
||||||
|
"recalibrationFees": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
{
|
||||||
|
"requiredProviderServices": [
|
||||||
|
"ADAS Dynamic Calibration"
|
||||||
|
],
|
||||||
|
"canProviderRecalibrate": true,
|
||||||
|
"allowMobileSchedule": true,
|
||||||
|
"recalibrationParts": [
|
||||||
|
{
|
||||||
|
"partNumber": "RECAL DYNAMIC",
|
||||||
|
"description": "Adas Dynamic Recal Serv",
|
||||||
|
"recalibrationType": "DYNAMIC",
|
||||||
|
"ribCode": "RL",
|
||||||
|
"safelitePartNumber": "RECAL DYNAMIC",
|
||||||
|
"status": "ACTIVE",
|
||||||
|
"partType": "ADAS RECALIBRATION",
|
||||||
|
"childParts": [],
|
||||||
|
"recalibrationFees": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"partNumber": "SBB22",
|
||||||
|
"description": "SAFELITE BEAM BLADE 22",
|
||||||
|
"partType": "FRONT WIPER"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"partNumber": "SBB22",
|
||||||
|
"description": "SAFELITE BEAM BLADE 22",
|
||||||
|
"partType": "FRONT WIPER"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,29 @@
|
||||||
|
{
|
||||||
|
"lineItems": [
|
||||||
|
{
|
||||||
|
"partNumber": "RAIN REPEL",
|
||||||
|
"promoCode": null,
|
||||||
|
"laborAmount": 0.0,
|
||||||
|
"sellingPrice": 44.99,
|
||||||
|
"kitPrice": 0,
|
||||||
|
"salesTax": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"partNumber": "SBB19",
|
||||||
|
"promoCode": null,
|
||||||
|
"laborAmount": 0.0,
|
||||||
|
"sellingPrice": 34.99,
|
||||||
|
"kitPrice": 0,
|
||||||
|
"salesTax": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"partNumber": "SBB26",
|
||||||
|
"promoCode": null,
|
||||||
|
"laborAmount": 0.0,
|
||||||
|
"sellingPrice": 34.99,
|
||||||
|
"kitPrice": 0,
|
||||||
|
"salesTax": null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"serverData": "ZtCNOF1tCLQBAx2NRKHE/n/fqD8zUxRfYtDuTu7uUiPpeg7i6TmwXwggssX5KsXVenWi0X3mFSjdoyYq79ysxeknuFO2bNoXU8e+wTG2Qmoi4Hoby6pVzuJPTnJzIg75TMZI1cF/FRSffgKLp/Z3HXVAzL1MgvCVZLQgK7x5ILVuBrK6wGFgjfBdEp8qUG/9YKSsJMGYtsuEcJmg8WsxSa1AicmAXj9cXPROcJSocxXp8CDVa3AAqC3mKsD+Hk3uF3EPZ4peVDjGOochxKiN/DnJq1EuJrq/9dqAVnZBc83+j6tKXuYCqtSPciqH+yjOs+p+Qymg51/21cwgK4hWtSNwalc2rSB7xhFqwlK365tO7XmU+KeSdfoKa6co+EjJopr2e/NMb2Edd8bOp88llYtkIHL/HKfxqW8SFHAwazh1PqFd5R9MCC2jCDqaoEVd9awrYlLuvtGSW8WRRAGtLiIiuEhq4/bpfRaYLU2noFk="
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"isItac": false,
|
||||||
|
"isItacOptimized": null,
|
||||||
|
"primaryBillToNumber": null,
|
||||||
|
"partsWerePriced": true,
|
||||||
|
"lineItems": [],
|
||||||
|
"serverData": "KcYkmhhx3j2jfrKcPIai5c3vxIPezYw3algekZCIJ1nRzZHsoYWmD//QlA9cNAqo7E4vA4lcilhi/EbXZ5BfIlUjQng0T1GMzltEwIcGbNw="
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,29 @@
|
||||||
|
{
|
||||||
|
"taxedLineItems": [
|
||||||
|
{
|
||||||
|
"partNumber": "SBB22",
|
||||||
|
"promoCode": null,
|
||||||
|
"laborAmount": 0,
|
||||||
|
"sellingPrice": 34.99,
|
||||||
|
"kitPrice": 0,
|
||||||
|
"salesTax": 2.89
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"partNumber": "SBB22",
|
||||||
|
"promoCode": null,
|
||||||
|
"laborAmount": 0,
|
||||||
|
"sellingPrice": 34.99,
|
||||||
|
"kitPrice": 0,
|
||||||
|
"salesTax": 2.89
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"partNumber": "RAIN REPEL",
|
||||||
|
"promoCode": null,
|
||||||
|
"laborAmount": 0,
|
||||||
|
"sellingPrice": 44.99,
|
||||||
|
"kitPrice": 0,
|
||||||
|
"salesTax": 3.71
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"serverData": "KcYkmhhx3j2jfrKcPIai5c3vxIPezYw3algekZCIJ1nRzZHsoYWmD//QlA9cNAqo7E4vA4lcilhi/EbXZ5BfIvc9C7c7sl9TGGbrA2A3QUiVi9Q+eQQWUrGSlb5Te3PyfK8g5A+gvcXvn+YSjH0tie6XYRgOnhi6ArHjHJ3GTgCmWIhMUosEpnBrUg3/W5ci/3UF4sCnDpihiJPPiMCnOMjzvWp1/xTg5jaoE8N8otARbxQ73ObbvZCJndil/EaSbqYMvL+ymPvDJHPoAfbXUJc90Drlef4gvSV1d6HEZGR/zwoKYipecNPSXcXzRGKrfxgmViszg1d1PyncoyVQrokAIl1KPRmDPJso5CmGrdDjEYsTV0SXUd0NcphMKd8wVrx7QUCLiyW8Vee7cVjWFnqdhkeJ9PYb14WoNb4j1cLJv39ofMcTmaJMI/maAcA8XKPOuhdWTTqWBXOPq3ax1g=="
|
||||||
|
}
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,16 @@
|
||||||
|
{
|
||||||
|
"carId": "CR00069811",
|
||||||
|
"category": "CAR",
|
||||||
|
"year": 2020,
|
||||||
|
"make": "BMW",
|
||||||
|
"model": "740",
|
||||||
|
"style": "4 door sedan",
|
||||||
|
"imageUrl": "https://dbhdyzvm8lm25.cloudfront.net/color_0320_032/MY2020/13736/13736_cc0320_032_300.jpg",
|
||||||
|
"imageVifNumber": "13736",
|
||||||
|
"imageVifColor": "white",
|
||||||
|
"canSafeliteService": true,
|
||||||
|
"recalibrationServices": [
|
||||||
|
"DYNAMIC"
|
||||||
|
],
|
||||||
|
"isMobileStaticRecalibrationApplicable": false
|
||||||
|
}
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
"common": {
|
"common": {
|
||||||
"experiments/api/v1/experiments/run": "common/experiments/api/v1/experiments/run.json"
|
"experiments/api/v1/experiments/run": "common/experiments/api/v1/experiments/run.json"
|
||||||
},
|
},
|
||||||
"scenario1": {
|
"0001a_Advanced_Replace_Deductible_Client": {
|
||||||
"coverage/api/v1/coverage/policy-information": "scenario1/coverage/api/v1/coverage/policy-information.json"
|
"coverage/api/v1/coverage/policy-information": "scenario1/coverage/api/v1/coverage/policy-information.json"
|
||||||
},
|
},
|
||||||
"0002a_Advanced_Replace_Deductible_Client": {
|
"0002a_Advanced_Replace_Deductible_Client": {
|
||||||
|
|
|
||||||
|
|
@ -1,82 +0,0 @@
|
||||||
{
|
|
||||||
"policies": [
|
|
||||||
{
|
|
||||||
"policyEffectiveDate": "0001-01-01T00:00:00",
|
|
||||||
"expirationDate": "0001-01-01T00:00:00",
|
|
||||||
"type": null,
|
|
||||||
"lineOfBusiness": null,
|
|
||||||
"policyNumber": "~550036ENDRSOEM",
|
|
||||||
"status": null,
|
|
||||||
"source": null,
|
|
||||||
"insureds": [
|
|
||||||
{
|
|
||||||
"firstName": "LERNO",
|
|
||||||
"lastName": "REEB",
|
|
||||||
"businessName": null,
|
|
||||||
"address": "2817 BENGAL LN",
|
|
||||||
"city": "PLANO",
|
|
||||||
"state": "TX",
|
|
||||||
"zipCode": "75023",
|
|
||||||
"phones": null,
|
|
||||||
"email": null,
|
|
||||||
"driverLicenseState": null,
|
|
||||||
"relationToInsured": null,
|
|
||||||
"companyCode": "LIBERTY",
|
|
||||||
"customerId": null
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"firstName": "ISAAC",
|
|
||||||
"lastName": "ASIMOV",
|
|
||||||
"businessName": null,
|
|
||||||
"address": "2817 BENGAL LN",
|
|
||||||
"city": "PLANO",
|
|
||||||
"state": "TX",
|
|
||||||
"zipCode": "75023",
|
|
||||||
"phones": null,
|
|
||||||
"email": null,
|
|
||||||
"driverLicenseState": null,
|
|
||||||
"relationToInsured": null,
|
|
||||||
"companyCode": "LIBERTY",
|
|
||||||
"customerId": null
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"vehicles": [
|
|
||||||
{
|
|
||||||
"id": 0,
|
|
||||||
"vehicleYear": "2006",
|
|
||||||
"vehicleMake": "CHRY",
|
|
||||||
"vehicleModel": "300",
|
|
||||||
"vehicleStyle": null,
|
|
||||||
"licensePlate": "UNKNOWN",
|
|
||||||
"vin": "2C3KA53G06H407823",
|
|
||||||
"driver": null,
|
|
||||||
"owner": null,
|
|
||||||
"coverages": [
|
|
||||||
{
|
|
||||||
"code": "COMP",
|
|
||||||
"deductible": 50,
|
|
||||||
"individualLimit": 0,
|
|
||||||
"occurrenceLimit": 0,
|
|
||||||
"dayLimit": 0
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"fleetNumber": null,
|
|
||||||
"fleetUnitNumber": "1",
|
|
||||||
"endorsements": [
|
|
||||||
"OEM Approved"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"taxExempt": "FALSE",
|
|
||||||
"policyData": "G+r99boRzfUExiJdE0IYp/EeRyybEAPInOh4NEX8UesSGLZvquPGXqn9HRn/4zge7aj+HhRN6CkN21JKCMqw4cPrSHhJzQpb83TQMsj71r2fmpx7/2mxZskTaSu0UG48ye+7qQki7a3xTkE9V3aw8+xFLhEm3P6gkExFSRefeCBPH3+n//ypF0ZsawSni4wPyzpZ5KOSyTX4kDPPJUS3Ry2drjHpT/oDKm6Iro0WBaqj8mf7758UlaW1OsxO3JHZc2fi2+vnYB+nVjbDN0DnWZOayLLmjUKyHf09kp2gDCEc39Mb1mweI9OOl8GtW91078A7wnCEWrTITvc1+VLCN9n7mwf6WJ8m47qw5oBxv5s="
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"referralCorrelationId": "3fd7b485-569a-4b4b-8d90-7b7bb49dbb01",
|
|
||||||
"referralNumber": null,
|
|
||||||
"accountNumber": "550036",
|
|
||||||
"isSuccess": true,
|
|
||||||
"isError": false,
|
|
||||||
"errorCode": null,
|
|
||||||
"errorMessage": null,
|
|
||||||
"successMessage": null
|
|
||||||
}
|
|
||||||
Loading…
Reference in a new issue