diff options
author | Marco Miller <marco.mmiller@gmail.com> | 2020-07-20 15:19:23 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2020-07-20 15:19:23 +0000 |
commit | 1e56920a5193a14877c081696ad1d926d5c82d91 (patch) | |
tree | ac4fe30185c750ccd4e706c6d03476d3352ec4da | |
parent | 413a4761df8d70f252c332c789f0e572bb55f336 (diff) | |
parent | 61fba84b1df2aac380d250ffbca7490f0645ecdc (diff) |
Merge changes I865edad7,Ibaa01351 into stable-3.0
* changes:
FlushProjectsCache: Use standard name for scenario
e2e-tests: Add FlushProjectsCacheThenRebuild and ListProjects scenarios
5 files changed, 92 insertions, 2 deletions
diff --git a/e2e-tests/src/test/resources/data/com/google/gerrit/scenarios/FlushProjectsCacheThenRebuild.json b/e2e-tests/src/test/resources/data/com/google/gerrit/scenarios/FlushProjectsCacheThenRebuild.json new file mode 100644 index 0000000000..e30a2cfa63 --- /dev/null +++ b/e2e-tests/src/test/resources/data/com/google/gerrit/scenarios/FlushProjectsCacheThenRebuild.json @@ -0,0 +1,5 @@ +[ + { + "url": "HTTP_SCHEME://HOSTNAME:HTTP_PORT/a/config/server/caches/projects/flush" + } +] diff --git a/e2e-tests/src/test/resources/data/com/google/gerrit/scenarios/ListProjects.json b/e2e-tests/src/test/resources/data/com/google/gerrit/scenarios/ListProjects.json new file mode 100644 index 0000000000..f6350bedd2 --- /dev/null +++ b/e2e-tests/src/test/resources/data/com/google/gerrit/scenarios/ListProjects.json @@ -0,0 +1,5 @@ +[ + { + "url": "HTTP_SCHEME://HOSTNAME:HTTP_PORT/a/projects/" + } +] diff --git a/e2e-tests/src/test/scala/com/google/gerrit/scenarios/FlushProjectsCache.scala b/e2e-tests/src/test/scala/com/google/gerrit/scenarios/FlushProjectsCache.scala index 3dd84930e5..2e63fd50c3 100644 --- a/e2e-tests/src/test/scala/com/google/gerrit/scenarios/FlushProjectsCache.scala +++ b/e2e-tests/src/test/scala/com/google/gerrit/scenarios/FlushProjectsCache.scala @@ -26,7 +26,7 @@ class FlushProjectsCache extends CacheFlushSimulation { override def relativeRuntimeWeight = 2 - private val flushCache: ScenarioBuilder = scenario(unique) + private val test: ScenarioBuilder = scenario(unique) .feed(data) .exec(httpRequest) @@ -44,7 +44,7 @@ class FlushProjectsCache extends CacheFlushSimulation { nothingFor(stepWaitTime(getCacheEntriesAfterProject) seconds), atOnceUsers(single) ), - flushCache.inject( + test.inject( nothingFor(stepWaitTime(this) seconds), atOnceUsers(single) ), diff --git a/e2e-tests/src/test/scala/com/google/gerrit/scenarios/FlushProjectsCacheThenRebuild.scala b/e2e-tests/src/test/scala/com/google/gerrit/scenarios/FlushProjectsCacheThenRebuild.scala new file mode 100644 index 0000000000..7d732ea44b --- /dev/null +++ b/e2e-tests/src/test/scala/com/google/gerrit/scenarios/FlushProjectsCacheThenRebuild.scala @@ -0,0 +1,47 @@ +// Copyright (C) 2020 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package com.google.gerrit.scenarios + +import io.gatling.core.Predef._ +import io.gatling.core.feeder.FeederBuilder +import io.gatling.core.structure.ScenarioBuilder + +import scala.concurrent.duration._ + +class FlushProjectsCacheThenRebuild extends GerritSimulation { + private val data: FeederBuilder = jsonFile(resource).convert(keys).queue + + private val test: ScenarioBuilder = scenario(unique) + .feed(data) + .exec(httpRequest) + + private val checkCacheEntriesAfterFlush = new CheckProjectsCacheFlushEntries + private val rebuildCache = new ListProjects + + setUp( + test.inject( + nothingFor(stepWaitTime(this) seconds), + atOnceUsers(single) + ), + checkCacheEntriesAfterFlush.test.inject( + nothingFor(stepWaitTime(checkCacheEntriesAfterFlush) seconds), + atOnceUsers(single) + ), + rebuildCache.test.inject( + nothingFor(stepWaitTime(rebuildCache) seconds), + atOnceUsers(single) + ), + ).protocols(httpProtocol) +} diff --git a/e2e-tests/src/test/scala/com/google/gerrit/scenarios/ListProjects.scala b/e2e-tests/src/test/scala/com/google/gerrit/scenarios/ListProjects.scala new file mode 100644 index 0000000000..bfc97f405a --- /dev/null +++ b/e2e-tests/src/test/scala/com/google/gerrit/scenarios/ListProjects.scala @@ -0,0 +1,33 @@ +// Copyright (C) 2020 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package com.google.gerrit.scenarios + +import io.gatling.core.Predef._ +import io.gatling.core.feeder.FeederBuilder +import io.gatling.core.structure.ScenarioBuilder +import io.gatling.http.Predef.http + +class ListProjects extends GerritSimulation { + private val data: FeederBuilder = jsonFile(resource).convert(keys).queue + + val test: ScenarioBuilder = scenario(unique) + .feed(data) + .exec(http(unique).get("${url}")) + + setUp( + test.inject( + atOnceUsers(single) + )).protocols(httpProtocol) +} |