in src/main/kotlin/com/pestphp/pest/features/datasets/InvalidDatasetNameCaseInspection.kt [59:76]
override fun invoke(context: ActionContext, datasetNamePsiElement: StringLiteralExpression, updater: ModPsiUpdater) {
val sentenceCaseDatasetName = convertTestNameToSentenceCase(datasetNamePsiElement.contents)
val newNameParameter = PhpPsiElementFactory.createStringLiteralExpression(
datasetNamePsiElement.project,
sentenceCaseDatasetName,
true
)
val datasetUsages = getDatasetUsages(datasetNamePsiElement)?.map { updater.getWritable(it) }
datasetUsages?.forEach {
val testWithDataset = it as? MethodReference ?: return@forEach
val nameParameter = testWithDataset.getParameter(0) as? StringLiteralExpression ?: return@forEach
nameParameter.replace(newNameParameter.copy())
}
datasetNamePsiElement.replace(newNameParameter.copy())
}