include::../description.adoc[]

== Noncompliant Code Example

With the default threshold of 3:

[source,go]
----
func run() {                                                                                      
	prepare("This should be a constant")  // Noncompliant; 'This should ...' is duplicated 3 times
	execute("This should be a constant")
	release("This should be a constant")
}
----

== Compliant Solution

[source,go]
----
const ACTION = "This should be a constant"

func run() {
	prepare(ACTION)
	execute(ACTION)
	release(ACTION)
}
----

== Exceptions

To prevent generating some false-positives, literals having 5 or less characters are excluded as well as literals containing only letters, digits and '_'.

ifdef::env-github,rspecator-view[]

'''
== Implementation Specification
(visible only on this page)

include::../message.adoc[]

include::../parameters.adoc[]

include::../highlighting.adoc[]

'''
== Comments And Links
(visible only on this page)

include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]
