Skip to content

Commit 15e0b0a

Browse files
authored
ARN-2467 - Update ordering of TB&A questions (#763)
1 parent c4a3f2f commit 15e0b0a

10 files changed

+240
-232
lines changed

app/form/v1_0/steps/thinking-behaviours-attitudes.ts

+29-23
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ const section = sections.thinkingBehaviours
77

88
export const stepUrls = {
99
thinkingBehavioursAttitudes: 'thinking-behaviours-attitudes',
10-
sexualOffending: 'thinking-behaviours-attitudes-sexual-offending',
11-
thinkingBehaviours: 'thinking-behaviours',
10+
riskOfSexualHarm: 'thinking-behaviours-attitudes-risk-of-sexual-harm',
11+
riskOfSexualHarmDetails: 'thinking-behaviours-attitudes-risk-of-sexual-harm-details',
1212
summary: 'thinking-behaviours-attitudes-summary',
1313
analysis: 'thinking-behaviours-attitudes-analysis',
1414
}
@@ -29,43 +29,49 @@ const sectionConfig: SectionConfig = {
2929
thinkingBehavioursFields.thinkingBehavioursAttitudesProblemSolving,
3030
thinkingBehavioursFields.thinkingBehavioursAttitudesPeoplesViews,
3131
thinkingBehavioursFields.thinkingBehavioursAttitudesManipulativePredatoryBehaviour,
32-
thinkingBehavioursFields.thinkingBehavioursAttitudesRiskSexualHarm,
32+
thinkingBehavioursFields.thinkingBehavioursAttitudesTemperManagement,
33+
thinkingBehavioursFields.thinkingBehavioursAttitudesViolenceControllingBehaviour,
34+
thinkingBehavioursFields.thinkingBehavioursAttitudesImpulsiveBehaviour,
35+
thinkingBehavioursFields.thinkingBehavioursAttitudesPositiveAttitude,
36+
thinkingBehavioursFields.thinkingBehavioursAttitudesHostileOrientation,
37+
thinkingBehavioursFields.thinkingBehavioursAttitudesSupervision,
38+
thinkingBehavioursFields.thinkingBehavioursAttitudesCriminalBehaviour,
39+
thinkingBehavioursFields.wantToMakeChanges(),
3340
thinkingBehavioursFields.isUserSubmitted(stepUrls.thinkingBehavioursAttitudes),
3441
thinkingBehavioursFields.sectionComplete(),
3542
].flat(),
3643
navigationOrder: 8,
37-
next: [
38-
nextWhen(thinkingBehavioursFields.thinkingBehavioursAttitudesRiskSexualHarm, 'YES', stepUrls.sexualOffending),
39-
nextWhen(thinkingBehavioursFields.thinkingBehavioursAttitudesRiskSexualHarm, 'NO', stepUrls.thinkingBehaviours),
40-
],
44+
next: stepUrls.riskOfSexualHarm,
4145
sectionProgressRules: [setFieldToIncomplete(section.sectionCompleteField)],
4246
},
4347
{
44-
url: stepUrls.sexualOffending,
48+
url: stepUrls.riskOfSexualHarm,
4549
pageTitle: 'Risk of sexual harm',
4650
pageSubHeading: section.title,
4751
fields: [
48-
thinkingBehavioursFields.thinkingBehavioursAttitudesSexualPreoccupation,
49-
thinkingBehavioursFields.thinkingBehavioursAttitudesOffenceRelatedSexualInterest,
50-
thinkingBehavioursFields.thinkingBehavioursAttitudesEmotionalIntimacy,
51-
thinkingBehavioursFields.isUserSubmitted(stepUrls.sexualOffending),
52+
thinkingBehavioursFields.thinkingBehavioursAttitudesRiskSexualHarm,
53+
thinkingBehavioursFields.isUserSubmitted(stepUrls.riskOfSexualHarm),
5254
thinkingBehavioursFields.sectionComplete(),
5355
].flat(),
54-
next: stepUrls.thinkingBehaviours,
56+
next: [
57+
nextWhen(
58+
thinkingBehavioursFields.thinkingBehavioursAttitudesRiskSexualHarm,
59+
'YES',
60+
stepUrls.riskOfSexualHarmDetails,
61+
),
62+
stepUrls.summary,
63+
],
5564
sectionProgressRules: [setFieldToIncomplete(section.sectionCompleteField)],
5665
},
5766
{
58-
url: stepUrls.thinkingBehaviours,
67+
url: stepUrls.riskOfSexualHarmDetails,
68+
pageTitle: 'Risk of sexual harm',
69+
pageSubHeading: section.title,
5970
fields: [
60-
thinkingBehavioursFields.thinkingBehavioursAttitudesTemperManagement,
61-
thinkingBehavioursFields.thinkingBehavioursAttitudesViolenceControllingBehaviour,
62-
thinkingBehavioursFields.thinkingBehavioursAttitudesImpulsiveBehaviour,
63-
thinkingBehavioursFields.thinkingBehavioursAttitudesPositiveAttitude,
64-
thinkingBehavioursFields.thinkingBehavioursAttitudesHostileOrientation,
65-
thinkingBehavioursFields.thinkingBehavioursAttitudesSupervision,
66-
thinkingBehavioursFields.thinkingBehavioursAttitudesCriminalBehaviour,
67-
thinkingBehavioursFields.wantToMakeChanges(),
68-
thinkingBehavioursFields.isUserSubmitted(stepUrls.thinkingBehaviours),
71+
thinkingBehavioursFields.thinkingBehavioursAttitudesSexualPreoccupation,
72+
thinkingBehavioursFields.thinkingBehavioursAttitudesOffenceRelatedSexualInterest,
73+
thinkingBehavioursFields.thinkingBehavioursAttitudesEmotionalIntimacy,
74+
thinkingBehavioursFields.isUserSubmitted(stepUrls.riskOfSexualHarmDetails),
6975
thinkingBehavioursFields.sectionComplete(),
7076
].flat(),
7177
next: stepUrls.summary,

cypress/e2e/v1.0/fixtures/complete-assessment.fixture.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -214,9 +214,6 @@ describe('Generate fixture for complete assessment', () => {
214214
'Some evidence that they show manipulative behaviour or act in a predatory way towards certain individuals',
215215
)
216216
.clickLabel()
217-
cy.getQuestion('Are there any concerns that Sam poses a risk of sexual harm to others?').getRadio('No').clickLabel()
218-
cy.saveAndContinue()
219-
220217
cy.getQuestion('Is Sam able to manage their temper?')
221218
.getRadio('Sometimes has outbreaks of uncontrolled anger')
222219
.clickLabel()
@@ -243,6 +240,9 @@ describe('Generate fixture for complete assessment', () => {
243240
.clickLabel()
244241
cy.saveAndContinue()
245242

243+
cy.getQuestion('Are there any concerns that Sam poses a risk of sexual harm to others?').getRadio('No').clickLabel()
244+
cy.saveAndContinue()
245+
246246
completePractitionerAnalysisFor(section)
247247
cy.sectionMarkedAsComplete(section)
248248
})

cypress/e2e/v1.0/journeys/thinking-behaviours-attitudes-sexually-motivated-offence-history.cy.ts

+15-18
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,8 @@ import { AccessMode } from '../../../support/commands/api'
33

44
describe('History of Sexually Motivated Offence conditional logic', () => {
55
const destinations = {
6-
landingPage: '/thinking-behaviours-attitudes',
7-
sexualOffending: '/thinking-behaviours-attitudes-sexual-offending',
8-
thinkingBehaviours: '/thinking-behaviours',
6+
riskOfSexualHarm: '/thinking-behaviours-attitudes-risk-of-sexual-harm',
7+
riskOfSexualHarmDetails: '/thinking-behaviours-attitudes-risk-of-sexual-harm-details',
98
summary: '/thinking-behaviours-attitudes-summary',
109
}
1110

@@ -27,19 +26,19 @@ describe('History of Sexually Motivated Offence conditional logic', () => {
2726
cy.enterAssessment(AccessMode.READ_WRITE, { sexuallyMotivatedOffenceHistory: 'YES' })
2827
cy.sectionNotMarkedAsComplete(sectionName)
2928
cy.assessmentNotMarkedAsComplete()
30-
cy.visitSection(sectionName)
31-
cy.assertStepUrlIs(destinations.landingPage)
29+
30+
cy.visitStep(destinations.riskOfSexualHarm)
3231
cy.getQuestion(question).hasHint(null).getRadio('Yes').isChecked()
3332
cy.getQuestion(question).getRadio('No').isDisabled()
3433
cy.saveAndContinue()
35-
cy.assertStepUrlIs(destinations.sexualOffending)
34+
cy.assertStepUrlIs(destinations.riskOfSexualHarmDetails)
3635
})
3736

3837
it('NO from Oasys does not override SAN', () => {
3938
cy.enterAssessment(AccessMode.READ_WRITE, { sexuallyMotivatedOffenceHistory: 'NO' })
4039
cy.sectionMarkedAsComplete(sectionName)
4140
cy.assessmentMarkedAsComplete()
42-
cy.visitStep(destinations.landingPage)
41+
cy.visitStep(destinations.riskOfSexualHarm)
4342
cy.getQuestion(question).hasHint(hint).getRadio('No').isChecked()
4443
cy.getQuestion(question).getRadio('Yes').isNotDisabled()
4544
})
@@ -48,7 +47,7 @@ describe('History of Sexually Motivated Offence conditional logic', () => {
4847
cy.enterAssessment(AccessMode.READ_WRITE, { sexuallyMotivatedOffenceHistory: null })
4948
cy.sectionMarkedAsComplete(sectionName)
5049
cy.assessmentMarkedAsComplete()
51-
cy.visitStep(destinations.landingPage)
50+
cy.visitStep(destinations.riskOfSexualHarm)
5251
cy.getQuestion(question).hasHint(null).getRadio('No').isChecked()
5352
cy.getQuestion(question).getRadio('Yes').isNotDisabled()
5453
})
@@ -58,18 +57,16 @@ describe('History of Sexually Motivated Offence conditional logic', () => {
5857
before(() => {
5958
cy.loadFixture(Fixture.CompleteAssessment)
6059
cy.enterAssessment()
61-
cy.visitStep(destinations.landingPage)
60+
cy.visitStep(destinations.riskOfSexualHarm)
6261
cy.getQuestion(question).getRadio('Yes').clickLabel()
6362
cy.saveAndContinue()
64-
cy.assertStepUrlIs(destinations.sexualOffending)
63+
cy.assertStepUrlIs(destinations.riskOfSexualHarmDetails)
6564
cy.getQuestion('Is there evidence Sam shows sexual preoccupation?').getRadio('Unknown').clickLabel()
6665
cy.getQuestion('Is there evidence Sam has offence-related sexual interests?').getRadio('Unknown').clickLabel()
6766
cy.getQuestion('Is there evidence Sam finds it easier to seek emotional intimacy with children over adults?')
6867
.getRadio('Unknown')
6968
.clickLabel()
7069
cy.saveAndContinue()
71-
cy.assertStepUrlIs(destinations.thinkingBehaviours)
72-
cy.saveAndContinue()
7370
cy.assertStepUrlIs(destinations.summary)
7471
cy.get('#tab_practitioner-analysis').click()
7572
cy.markAsComplete()
@@ -86,7 +83,7 @@ describe('History of Sexually Motivated Offence conditional logic', () => {
8683
cy.enterAssessment(AccessMode.READ_WRITE, { sexuallyMotivatedOffenceHistory: 'YES' })
8784
cy.sectionMarkedAsComplete(sectionName)
8885
cy.assessmentMarkedAsComplete()
89-
cy.visitStep(destinations.landingPage)
86+
cy.visitStep(destinations.riskOfSexualHarm)
9087
cy.getQuestion(question).hasHint(null).getRadio('Yes').isChecked()
9188
cy.getQuestion(question).getRadio('No').isDisabled()
9289
})
@@ -95,7 +92,7 @@ describe('History of Sexually Motivated Offence conditional logic', () => {
9592
cy.enterAssessment(AccessMode.READ_WRITE, { sexuallyMotivatedOffenceHistory: 'NO' })
9693
cy.sectionMarkedAsComplete(sectionName)
9794
cy.assessmentMarkedAsComplete()
98-
cy.visitStep(destinations.landingPage)
95+
cy.visitStep(destinations.riskOfSexualHarm)
9996
cy.getQuestion(question).hasHint(hint).getRadio('Yes').isChecked()
10097
cy.getQuestion(question).getRadio('No').isNotDisabled()
10198
})
@@ -104,7 +101,7 @@ describe('History of Sexually Motivated Offence conditional logic', () => {
104101
cy.enterAssessment(AccessMode.READ_WRITE, { sexuallyMotivatedOffenceHistory: null })
105102
cy.sectionMarkedAsComplete(sectionName)
106103
cy.assessmentMarkedAsComplete()
107-
cy.visitStep(destinations.landingPage)
104+
cy.visitStep(destinations.riskOfSexualHarm)
108105
cy.getQuestion(question).hasHint(null).getRadio('Yes').isChecked()
109106
cy.getQuestion(question).getRadio('No').isNotDisabled()
110107
})
@@ -118,23 +115,23 @@ describe('History of Sexually Motivated Offence conditional logic', () => {
118115
it('YES from Oasys overrides SAN', () => {
119116
cy.enterAssessment(AccessMode.READ_WRITE, { sexuallyMotivatedOffenceHistory: 'YES' })
120117
cy.sectionNotMarkedAsComplete(sectionName)
121-
cy.visitSection(sectionName)
118+
cy.visitStep(destinations.riskOfSexualHarm)
122119
cy.getQuestion(question).hasHint(null).getRadio('Yes').isChecked()
123120
cy.getQuestion(question).getRadio('No').isDisabled()
124121
})
125122

126123
it('NO from Oasys does not override SAN', () => {
127124
cy.enterAssessment(AccessMode.READ_WRITE, { sexuallyMotivatedOffenceHistory: 'NO' })
128125
cy.sectionNotMarkedAsComplete(sectionName)
129-
cy.visitSection(sectionName)
126+
cy.visitStep(destinations.riskOfSexualHarm)
130127
cy.getQuestion(question).hasHint(hint).getRadio('Yes').isNotDisabled().isNotChecked()
131128
cy.getQuestion(question).getRadio('No').isNotDisabled().isNotChecked()
132129
})
133130

134131
it('NULL from Oasys does not override SAN', () => {
135132
cy.enterAssessment(AccessMode.READ_WRITE, { sexuallyMotivatedOffenceHistory: null })
136133
cy.sectionNotMarkedAsComplete(sectionName)
137-
cy.visitSection(sectionName)
134+
cy.visitStep(destinations.riskOfSexualHarm)
138135
cy.getQuestion(question).hasHint(null).getRadio('Yes').isNotDisabled().isNotChecked()
139136
cy.getQuestion(question).getRadio('No').isNotDisabled().isNotChecked()
140137
})

0 commit comments

Comments
 (0)