Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat/wfm trigger #1644

Merged
merged 39 commits into from Nov 14, 2023
Merged
Show file tree
Hide file tree
Changes from 12 commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
ae5a988
Add trigger support to workflow manager
brosenberg42 Feb 6, 2023
0f5a186
Refactor trigger
brosenberg42 Feb 7, 2023
c00cc06
Apply triggers to all previous tasks
brosenberg42 Feb 9, 2023
62152a4
Fix derivative media
brosenberg42 Feb 9, 2023
984d3ae
Use MockitoTest base class
brosenberg42 Feb 9, 2023
153bdc2
Fix test
brosenberg42 Feb 10, 2023
c06ff4a
Merge branch 'develop' into feat/wfm-trigger
brosenberg42 May 25, 2023
9bc681d
Merge branch 'develop' into feat/wfm-trigger
brosenberg42 Jun 8, 2023
0ff5076
Address PR issues
brosenberg42 Jul 6, 2023
1499e12
Fix OUTPUT_LAST_TASK_ONLY
brosenberg42 Jul 18, 2023
1db6e21
Fix TestRedis
brosenberg42 Jul 18, 2023
8a86ae1
Add missing header
brosenberg42 Jul 18, 2023
883972e
Address PR issues
brosenberg42 Jul 27, 2023
a8faa79
Apply trigger filter before getting next set of tracks.
brosenberg42 Jul 28, 2023
adf8a77
Fix task merging
brosenberg42 Aug 9, 2023
a6e70c5
Add trackType to Algorithm
brosenberg42 Aug 15, 2023
e04e3b3
Allow multiple trigger values
brosenberg42 Aug 25, 2023
c425657
Get rid of detectionType
brosenberg42 Aug 25, 2023
556cb5f
Remove redundant templates in mpf-system-tests.
brosenberg42 Aug 28, 2023
fee9d3c
Fix task merging
brosenberg42 Aug 28, 2023
8e2b797
Remove detectionType from streaming
brosenberg42 Aug 28, 2023
f24cc3f
Remove remaining references to detectionType
brosenberg42 Aug 29, 2023
4f7cbb7
Fix sortJsonActionOutputObjectSets
brosenberg42 Aug 29, 2023
d589c1e
Fix sortJsonActionOutputObjectSets
brosenberg42 Aug 29, 2023
930dfae
Fix switched actual and expected params
brosenberg42 Aug 30, 2023
38b04ef
Comments and clean up
brosenberg42 Aug 31, 2023
3ea1f4e
Simplify TaskMergingManager.
brosenberg42 Sep 1, 2023
3e653e8
Clean up
brosenberg42 Sep 5, 2023
fe3a69a
Add trackType to CplusplusHelloWorld
brosenberg42 Sep 5, 2023
3047abc
Merge branch 'develop' into feat/wfm-trigger
brosenberg42 Sep 15, 2023
ce57c31
Add action to json output
brosenberg42 Oct 30, 2023
85aeb04
Merge branch 'develop' into feat/wfm-trigger
brosenberg42 Oct 30, 2023
68b314c
Fix test
brosenberg42 Oct 30, 2023
383d34b
Address PR issues
brosenberg42 Oct 30, 2023
30f7b05
Update missing action output.
brosenberg42 Nov 1, 2023
7debbe8
Update system tests.
brosenberg42 Nov 1, 2023
414ece9
Fix system test
brosenberg42 Nov 1, 2023
672b2f3
Merge branch 'develop' into feat/wfm-trigger
brosenberg42 Nov 8, 2023
1827882
Address PR issues
brosenberg42 Nov 13, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Expand Up @@ -26,8 +26,17 @@

package org.mitre.mpf.nms.streaming;

import org.junit.After;
import org.junit.Before;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.lenient;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import java.util.concurrent.CompletableFuture;
import java.util.concurrent.CompletionException;

import org.junit.Rule;
import org.junit.Test;
import org.mitre.mpf.nms.ChannelNode;
import org.mitre.mpf.nms.streaming.messages.LaunchStreamingJobMessage;
Expand All @@ -36,17 +45,14 @@
import org.mockito.ArgumentMatchers;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;

import java.util.concurrent.CompletableFuture;
import java.util.concurrent.CompletionException;

import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.*;
import org.mockito.junit.MockitoJUnit;
import org.mockito.junit.MockitoRule;
import org.mockito.quality.Strictness;

public class TestChildStreamingJobManager {

private AutoCloseable _closeable;
@Rule
public MockitoRule _mockitoRule = MockitoJUnit.rule().strictness(Strictness.STRICT_STUBS);

@InjectMocks
private ChildStreamingJobManager _childStreamingJobManager;
Expand All @@ -58,18 +64,6 @@ public class TestChildStreamingJobManager {
private StreamingJobFactory _mockJobFactory;


@Before
public void init() {
_closeable = MockitoAnnotations.openMocks(this);
}


@After
public void close() throws Exception {
_closeable.close();
}


@Test
public void canHandleJobStartAndStop() {
StreamingJob job = mock(StreamingJob.class);
Expand Down Expand Up @@ -203,7 +197,7 @@ private static TestJobController setupMockJob(StreamingJob job) {
when(job.startJob())
.thenReturn(future);

when(job.stopJob())
lenient().when(job.stopJob())
.thenReturn(future);

return new TestJobController() {
Expand All @@ -224,4 +218,3 @@ private static interface TestJobController {
void causeException(Exception e);
}
}

Expand Up @@ -26,8 +26,24 @@

package org.mitre.mpf.nms.streaming;

import org.junit.After;
import org.junit.Before;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotEquals;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import static org.mitre.mpf.nms.streaming.StreamingJobTestUtil.createLaunchMessage;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.ArgumentMatchers.isA;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;

import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.List;

import org.junit.Rule;
import org.junit.Test;
import org.mitre.mpf.nms.ChannelNode;
import org.mitre.mpf.nms.streaming.messages.LaunchStreamingJobMessage;
Expand All @@ -36,20 +52,14 @@
import org.mockito.ArgumentCaptor;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;

import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.List;

import static org.junit.Assert.*;
import static org.mitre.mpf.nms.streaming.StreamingJobTestUtil.createLaunchMessage;
import static org.mockito.Mockito.*;
import org.mockito.junit.MockitoJUnit;
import org.mockito.junit.MockitoRule;
import org.mockito.quality.Strictness;

public class TestMasterStreamingJobManager {

private AutoCloseable _closeable;
@Rule
public MockitoRule _mockitoRule = MockitoJUnit.rule().strictness(Strictness.STRICT_STUBS);

@InjectMocks
private MasterStreamingJobManager _streamingJobManager;
Expand All @@ -59,15 +69,6 @@ public class TestMasterStreamingJobManager {

private static final List<String> TEST_NODES = Arrays.asList("Node1", "Node2", "Node3");

@Before
public void init() {
_closeable = MockitoAnnotations.openMocks(this);
}

@After
public void close() throws Exception {
_closeable.close();
}

@Test
public void jobsStartOnNodeWithMinJobs() {
Expand Down Expand Up @@ -184,5 +185,3 @@ private void verifyStopSentToNode(long jobId, String hostname) {

}
}


Expand Up @@ -48,6 +48,7 @@
import org.mitre.mpf.wfm.data.entities.persistent.*;
import org.mitre.mpf.wfm.enums.BatchJobStatusType;
import org.mitre.mpf.wfm.enums.MpfHeaders;
import org.mitre.mpf.wfm.segmenting.TriggerProcessor;
import org.mitre.mpf.wfm.service.S3StorageBackend;
import org.mitre.mpf.wfm.service.StorageException;
import org.mitre.mpf.wfm.service.TiesDbBeforeJobCheckService;
Expand Down Expand Up @@ -396,6 +397,7 @@ private void checkProperties(

S3StorageBackend.validateS3Properties(combinedProperties);
DetectionTransformationProcessor.validatePaddingProperties(combinedProperties);
TriggerProcessor.validateTrigger(combinedProperties);
}
}
}
Expand Down