Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
c8ba4e5
SED-3921: new settings with multitenancy capabilities (entity, access…
iegorov777 Apr 12, 2025
b9103ae
SED-3921: hooks for user settings (draft)
iegorov777 Apr 14, 2025
92639ae
SED-3921: hooks for user settings
iegorov777 Apr 15, 2025
9edffe6
SED-3921: fix
iegorov777 Apr 15, 2025
9d6d20c
SED-3921: rename
iegorov777 Apr 15, 2025
0424cfb
SED-3921: change path for services
iegorov777 Apr 17, 2025
9a7d99b
SED-3921: project settings (improvements, part #1)
iegorov777 Apr 22, 2025
4c492f6
SED-3921: fix warn messages
iegorov777 Apr 23, 2025
e0637af
Merge remote-tracking branch 'origin/master' into SED-3921-Introduced…
iegorov777 Apr 24, 2025
a13677e
SED-3921: move classes
iegorov777 Apr 25, 2025
e59fafc
SED-3921: object overlapper for project settings (draft)
iegorov777 May 2, 2025
227f90d
SED-3921: object overlapper for project settings
iegorov777 May 5, 2025
9594f39
Merge remote-tracking branch 'origin/master' into SED-3921-Introduced…
iegorov777 May 5, 2025
42229e3
Merge remote-tracking branch 'origin/master' into SED-3921-Introduced…
iegorov777 May 15, 2025
7129af6
SED-3921: support multitenancy for project settings
iegorov777 May 21, 2025
e6cb62a
SED-3921: support multitenancy for project settings (step framework v…
iegorov777 May 22, 2025
6449132
SED-3921: support multitenancy for project settings (step framework v…
iegorov777 May 22, 2025
4f40c9d
SED-3921: support multitenancy for project settings (validator for un…
iegorov777 May 27, 2025
58f0b86
SED-3921: support multitenancy for project settings (fix remarks)
iegorov777 Jun 3, 2025
1981efe
SED-3921: unit test on validator
iegorov777 Jun 14, 2025
8ef55a2
SED-3921: accessors
iegorov777 Jun 14, 2025
885b9e8
SED-3921: fix ProjectSettingAccessorImpl
iegorov777 Jun 14, 2025
2f7f7d1
SED-3921: object filter in ProjectSettingAccessor
iegorov777 Jun 15, 2025
323c22c
SED-3921: new step-framework.version
iegorov777 Jun 15, 2025
e9c9f7f
Merge remote-tracking branch 'origin/master' into SED-3921-Introduced…
iegorov777 Jun 15, 2025
9de0991
SED-3921: fix remarks
iegorov777 Jun 23, 2025
385c735
Merge remote-tracking branch 'origin/master' into SED-3921-Introduced…
iegorov777 Jun 24, 2025
a81592e
SED-3921: step-framework.version
iegorov777 Jun 24, 2025
32e45b5
SED-3921: fixes
iegorov777 Jun 24, 2025
293e178
SED-3921: configurable validator
iegorov777 Jun 24, 2025
1192250
Merge remote-tracking branch 'origin/master' into SED-3921-Introduced…
iegorov777 Jun 26, 2025
81e3593
Merge branch 'refs/heads/master' into SED-3921-Introduced-Settings-wi…
david-stephan Jul 29, 2025
9f13da3
SED-3921 resolving merge issues
david-stephan Jul 30, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
<!-- internal dependencies -->
<dependencies.version>2025.6.25</dependencies.version>
<step-grid.version>2.4.0</step-grid.version>
<step-framework.version>2025.7.25-6883709e548a1a5b33c7202e</step-framework.version>
<step-framework.version>2025.7.29-6888d7ba4e318f3fad1d864c</step-framework.version>

<!-- external, non-transitive, dependencies -->
<dep.groovy.version>3.0.23</dep.groovy.version>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ public String createAutomationPackage(@QueryParam("version") String apVersion,
ObjectId id = automationPackageManager.createAutomationPackage(
automationPackageInputStream, fileDetail.getFileName(),
apVersion, activationExpression,
getObjectEnricher(), getObjectPredicate()
getObjectEnricher(), getObjectPredicate(), getObjectValidator()
);
return id == null ? null : id.toString();
} catch (AutomationPackageManagerException e) {
Expand Down Expand Up @@ -146,7 +146,7 @@ public String createAutomationPackageFromMaven(@QueryParam("version") String apV
try {
MavenArtifactIdentifier mavenArtifactIdentifier = getMavenArtifactIdentifierFromXml(mavenArtifactXml);
return automationPackageManager.createAutomationPackageFromMaven(
mavenArtifactIdentifier, apVersion, activationExpression, getObjectEnricher(), getObjectPredicate()
mavenArtifactIdentifier, apVersion, activationExpression, getObjectEnricher(), getObjectPredicate(), getObjectValidator()
).toString();
} catch (AutomationPackageManagerException e) {
throw new ControllerServiceException(e.getMessage());
Expand Down Expand Up @@ -192,7 +192,8 @@ public List<String> executeAutomationPackage(@FormDataParam("file") InputStream
fileDetail == null ? null : fileDetail.getFileName(),
executionParameters,
getObjectEnricher(),
getObjectPredicate()
getObjectPredicate(),
getObjectValidator()
);
} catch (AutomationPackageManagerException e) {
throw new ControllerServiceException(e.getMessage());
Expand Down Expand Up @@ -259,7 +260,7 @@ public AutomationPackageUpdateResult updateAutomationPackage(@PathParam("id") St
return automationPackageManager.createOrUpdateAutomationPackage(
true, false, new ObjectId(id),
uploadedInputStream, fileDetail.getFileName(), apVersion, activationExpression,
getObjectEnricher(), getObjectPredicate(), async != null && async
getObjectEnricher(), getObjectPredicate(), getObjectValidator(), async != null && async
);
} catch (AutomationPackageManagerException e) {
throw new ControllerServiceException(e.getMessage());
Expand Down Expand Up @@ -290,7 +291,7 @@ public Response createOrUpdateAutomationPackage(@QueryParam("async") Boolean asy
try {
AutomationPackageUpdateResult result = automationPackageManager.createOrUpdateAutomationPackage(
true, true, null, uploadedInputStream, fileDetail.getFileName(), apVersion, activationExpression,
getObjectEnricher(), getObjectPredicate(), async != null && async
getObjectEnricher(), getObjectPredicate(), getObjectValidator(), async != null && async
);
Response.ResponseBuilder responseBuilder;
if (result.getStatus() == AutomationPackageUpdateStatus.CREATED) {
Expand Down Expand Up @@ -326,7 +327,7 @@ public AutomationPackageUpdateResult createOrUpdateAutomationPackageFromMaven(@Q
try {
MavenArtifactIdentifier mvnIdentifier = getMavenArtifactIdentifierFromXml(mavenArtifactXml);
return automationPackageManager.createOrUpdateAutomationPackageFromMaven(
mvnIdentifier, true, true, null, apVersion, activationExpression, getObjectEnricher(), getObjectPredicate(), async == null ? false : async
mvnIdentifier, true, true, null, apVersion, activationExpression, getObjectEnricher(), getObjectPredicate(), getObjectValidator(), async == null ? false : async
);
} catch (AutomationPackageManagerException e) {
throw new ControllerServiceException(e.getMessage());
Expand Down Expand Up @@ -358,7 +359,7 @@ public AutomationPackageUpdateResult updateAutomationPackageFromMaven(@PathParam
MavenArtifactIdentifier mvnIdentifier = getMavenArtifactIdentifierFromXml(mavenArtifactXml);
return automationPackageManager.createOrUpdateAutomationPackageFromMaven(
mvnIdentifier, true, false, new ObjectId(id), apVersion,
activationExpression, getObjectEnricher(), getObjectPredicate(), async == null ? false : async
activationExpression, getObjectEnricher(), getObjectPredicate(), getObjectValidator(), async == null ? false : async
);
} catch (AutomationPackageManagerException e) {
throw new ControllerServiceException(e.getMessage());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ public void testCrud() throws IOException {
String fileName = "step-automation-packages-sample1-extended.jar";
File automationPackageJar = new File("src/test/resources/samples/" + fileName);
try (InputStream is = new FileInputStream(automationPackageJar)) {
AutomationPackageUpdateResult result = manager.createOrUpdateAutomationPackage(true, true, null, is, fileName, null, null, null, null, false);
AutomationPackageUpdateResult result = manager.createOrUpdateAutomationPackage(true, true, null, is, fileName, null, null, null, null, null, false);
Assert.assertEquals(AutomationPackageUpdateStatus.UPDATED, result.getStatus());
ObjectId resultId = result.getId();

Expand Down Expand Up @@ -310,7 +310,7 @@ public void testResourcesInKeywordsAndPlans() throws IOException {

try (InputStream is = new FileInputStream(automationPackageJar)) {
ObjectId result;
result = manager.createAutomationPackage(is, fileName, null, null, null, null);
result = manager.createAutomationPackage(is, fileName, null, null, null, null, null);
AutomationPackage storedPackage = automationPackageAccessor.get(result);

List<Plan> storedPlans = planAccessor.findManyByCriteria(getAutomationPackageIdCriteria(result)).collect(Collectors.toList());
Expand All @@ -332,7 +332,7 @@ public void testResourcesInKeywordsAndPlans() throws IOException {
@Test
public void testInvalidFile() throws IOException {
try (InputStream is = new FileInputStream("src/test/resources/step/automation/packages/picture.png")) {
manager.createAutomationPackage(is, "picture.png", null, null, null, null);
manager.createAutomationPackage(is, "picture.png", null, null, null, null, null);
Assert.fail("The exception should be thrown in case of invalid automation package file");
} catch (AutomationPackageManagerException ex) {
// ok - invalid file should cause the exception
Expand All @@ -343,7 +343,7 @@ public void testInvalidFile() throws IOException {
public void testZipArchive() throws IOException {
try (InputStream is = new FileInputStream("src/test/resources/step/automation/packages/step-automation-packages.zip")) {
ObjectId result;
result = manager.createAutomationPackage(is, "step-automation-packages.zip", null, null, null, null);
result = manager.createAutomationPackage(is, "step-automation-packages.zip", null, null, null, null, null);
AutomationPackage storedPackage = automationPackageAccessor.get(result);

List<Plan> storedPlans = planAccessor.findManyByCriteria(getAutomationPackageIdCriteria(result)).collect(Collectors.toList());
Expand Down Expand Up @@ -420,9 +420,9 @@ private SampleUploadingResult uploadSample1WithAsserts(boolean createNew, boolea
try (InputStream is = new FileInputStream(automationPackageJar)) {
ObjectId result;
if (createNew) {
result = manager.createAutomationPackage(is, fileName, null, null, null, null);
result = manager.createAutomationPackage(is, fileName, null, null, null, null,null);
} else {
AutomationPackageUpdateResult updateResult = manager.createOrUpdateAutomationPackage(true, true, null, is, fileName, null, null, null, null, async);
AutomationPackageUpdateResult updateResult = manager.createOrUpdateAutomationPackage(true, true, null, is, fileName, null, null, null, null, null, async);
if (async && expectedDelay) {
Assert.assertEquals(AutomationPackageUpdateStatus.UPDATE_DELAYED, updateResult.getStatus());
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ public List<StepClassParserResult> getTestPlans(ExecutionEngine executionEngine)
AutomationPackageFromClassLoaderProvider automationPackageProvider = new AutomationPackageFromClassLoaderProvider(testClass.getClassLoader());
ObjectId automationPackageId = automationPackageManager.createOrUpdateAutomationPackage(
false, true, null, automationPackageProvider, null, null,
true, null, null, false
true, null, null, null, false
).getId();

List<PlanFilter> planFilterList = new ArrayList<>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@
import step.junit.runners.annotations.ExecutionParameters;
import step.junit.runners.annotations.Plans;

/**
* This test covers some plans from annotation package. Plans with JMeter keywords are excluded to support local
* launch without installed JMeter. All plans including JMeter are covered by {@link StepAutomationPackageRunAllTest}
*/
@ExcludePlans({"JMeter Plan", "testAutomation.plan"})
@Plans({"plans/plan2.plan", "plans/plan3.plan", "plans/assertsTest.plan"})
@ExecutionParameters({"PARAM_EXEC","Value","PARAM_EXEC2","Value","PARAM_EXEC3","Value"})
Expand Down
Loading