Using global variables (AtomicReference) with session and assertions

Hello,

I want to assert on the number of successful requests during the simulation. This number exists in the session and I thought I could use something like AtomicReference to save the number from the session and use it during assertions.

This is what I reached so far:

import scala.concurrent.duration._

import io.gatling.core.Predef._
import io.gatling.http.Predef._
import io.gatling.jdbc.Predef._
import java.util.concurrent.atomic.AtomicReference

class iPIMClassicEditEditorialProductDataFiltering extends Simulation {

val baseUrl = "http://localhost:7070/"
val httpProtocol = http
.baseURL(baseUrl)
.inferHtmlResources()
.acceptEncodingHeader(“gzip,deflate”)
.contentTypeHeader(“text/xml;charset=UTF-8”)
.userAgentHeader(“Apache-HttpClient/4.1.1 (java 1.5)”)

val eventWSService = baseUrl + "EventWSBeanDelegate?wsdl"

var atomicReference = new AtomicReferenceInt;

val scn = scenario(“Data Filtering”)
.group(“First Stage”){
exec(FilteringObject.filter(“Edit”))
.exec(session => {
println("reps: " + session(“reps”).as[String])
setRepps(session(“reps”).as[Int])
atomicReference.set(23)
println("atomicReference: " + atomicReference.get()) --------> atomicReference: 23
println("repps: " + repps)
session
})
}

setUp(scn.inject(atOnceUsers(1)))
.assertions(
details(“First Stage” / “Edit Filtering”).successfulRequests.count.is(atomicReference.get()) ---------------> sees it as 0
)
.protocols(httpProtocol)
}

Any help is appreciated
Thanks