Skip to content

Commit 97e2f77

Browse files
committed
Merge branch 'master' into 'feat/http'
2 parents d38466c + c9438f1 commit 97e2f77

File tree

14 files changed

+241
-19
lines changed

14 files changed

+241
-19
lines changed

.travis-scripts/install.sh

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@
33
if [[ $TRAVIS_OS_NAME == 'osx' ]]; then
44

55
# Install some custom requirements on OS X
6-
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u66-b17/jdk-8u66-macosx-x64.dmg
7-
hdiutil mount jdk-8u66-macosx-x64.dmg
8-
sudo installer -pkg /Volumes/JDK\ 8\ Update\ 66/JDK\ 8\ Update\ 66.pkg -target LocalSystem
6+
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u92-b14/jdk-8u92-macosx-x64.dmg
7+
hdiutil mount jdk-8u92-macosx-x64.dmg
8+
sudo installer -pkg /Volumes/JDK\ 8\ Update\ 92/JDK\ 8\ Update\ 92.pkg -target LocalSystem
99
else
1010
export DISPLAY=:99.0
1111
sh -e /etc/init.d/xvfb start
1212
pip install --user codecov
13-
fi
13+
fi

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ install:
2929
- '[ "${TRAVIS_PULL_REQUEST}" = "false" ] && ./gradlew :ui:assemble --stacktrace || ./gradlew --stacktrace '
3030

3131
script:
32-
- ./gradlew check --stacktrace -Pheadless=true
32+
- ./gradlew check --stacktrace -Pheadless=true -PlogTests
3333

3434
after_success:
3535
- if [[ "$TRAVIS_OS_NAME" != "osx" ]]; then codecov ; fi

appveyor.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ build_script:
66

77
# to run your custom scripts instead of automatic tests
88
test_script:
9-
- gradlew.bat check --stacktrace -Pheadless=true
9+
- gradlew.bat check --stacktrace -Pheadless=true -PlogTests
1010

1111
platform:
1212
- x64
@@ -28,4 +28,4 @@ deploy:
2828
appveyor_repo_tag: true # deploy on tag push only
2929

3030
cache:
31-
- C:\Users\appveyor\.gradle
31+
- C:\Users\appveyor\.gradle

build.gradle

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,11 @@ allprojects {
140140
// Turn on test results
141141
test {
142142
testLogging {
143-
events "failed"
143+
if (project.hasProperty('logTests')) {
144+
events "started", "passed", "skipped", "failed"
145+
} else {
146+
events "failed"
147+
}
144148
exceptionFormat "full"
145149
}
146150
doFirst {
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package edu.wpi.grip.core.operations.network;
2+
3+
import com.google.inject.AbstractModule;
4+
import com.google.inject.name.Names;
5+
import edu.wpi.grip.core.operations.network.ros.MockROSManager;
6+
import edu.wpi.grip.core.operations.network.ros.ROSNetworkPublisherFactory;
7+
8+
/**
9+
* A mock of {@Link GRIPNetworkModule} for testing.
10+
*/
11+
public final class MockGRIPNetworkModule extends AbstractModule {
12+
@Override
13+
protected void configure() {
14+
bind(MapNetworkPublisherFactory.class)
15+
.annotatedWith(Names.named("ntManager"))
16+
.to(MockMapNetworkPublisher.class);
17+
bind(ROSNetworkPublisherFactory.class)
18+
.annotatedWith(Names.named("rosManager"))
19+
.to(MockROSManager.class);
20+
}
21+
}

core/src/test/java/edu/wpi/grip/core/operations/network/MockMapNetworkPublisher.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
package edu.wpi.grip.core.operations.network;
22

3-
3+
import java.util.Collections;
44
import java.util.Map;
55
import java.util.Optional;
66
import java.util.Set;
77

88
@SuppressWarnings("PMD.UncommentedEmptyMethodBody")
9-
public class MockMapNetworkPublisher<T> extends MapNetworkPublisher<T> {
9+
public class MockMapNetworkPublisher<T> extends MapNetworkPublisher<T> implements MapNetworkPublisherFactory {
10+
11+
public MockMapNetworkPublisher() {
12+
this(Collections.emptySet());
13+
}
1014

1115
public MockMapNetworkPublisher(Set<String> keys) {
1216
super(keys);
@@ -36,4 +40,9 @@ protected void publishNameChanged(Optional<String> oldName, String newName) {
3640
public void close() {
3741

3842
}
43+
44+
@Override
45+
public <T> MapNetworkPublisher<T> create(Set<String> keys) {
46+
return new MockMapNetworkPublisher<>(keys);
47+
}
3948
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package edu.wpi.grip.core.operations.network.ros;
2+
3+
public class MockROSManager implements ROSNetworkPublisherFactory {
4+
5+
@Override
6+
public <C extends JavaToMessageConverter> ROSMessagePublisher create(C converter) {
7+
return null;
8+
}
9+
}

core/src/test/java/edu/wpi/grip/core/operations/network/ros/ROSPackageSanityTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
public class ROSPackageSanityTest extends AbstractPackageSanityTests {
77
public ROSPackageSanityTest() {
88
super();
9-
ignoreClasses(c -> c.equals(ROSLoader.class));
9+
ignoreClasses(c -> c.equals(ROSLoader.class) || c.equals(MockROSManager.class));
1010
setDefault(JavaToMessageConverter.class, JavaToMessageConverter.BLOBS);
1111
}
1212
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package edu.wpi.grip.ui;
2+
3+
import javafx.fxml.FXML;
4+
import javafx.scene.control.Label;
5+
import javafx.scene.input.MouseEvent;
6+
7+
import javax.inject.Inject;
8+
9+
public class AboutDialogController {
10+
11+
@Inject
12+
private Main main;
13+
14+
@FXML
15+
private Label versionNumberLabel;
16+
17+
@FXML
18+
void mousePressedDocumentationButton(MouseEvent event) {
19+
main.getHostServices().showDocument("http://wpilib.screenstepslive.com/s/4485/m/50711");
20+
}
21+
22+
@FXML
23+
void mousePressedGithubButton(MouseEvent event) {
24+
main.getHostServices().showDocument("https://github.com/WPIRoboticsProjects/GRIP");
25+
}
26+
27+
@FXML
28+
void initialize() {
29+
versionNumberLabel.setText("Version " + edu.wpi.grip.core.Main.class.getPackage().getImplementationVersion());
30+
}
31+
}

ui/src/main/java/edu/wpi/grip/ui/MainWindowController.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import javafx.application.Platform;
1818
import javafx.fxml.FXML;
1919
import javafx.scene.Parent;
20+
import javafx.scene.Scene;
2021
import javafx.scene.control.ButtonType;
2122
import javafx.scene.control.Dialog;
2223
import javafx.scene.control.SplitPane;
@@ -26,6 +27,8 @@
2627
import javafx.scene.layout.Region;
2728
import javafx.stage.FileChooser;
2829
import javafx.stage.FileChooser.ExtensionFilter;
30+
import javafx.stage.Stage;
31+
import javafx.stage.StageStyle;
2932
import org.controlsfx.control.StatusBar;
3033

3134
import javax.inject.Inject;
@@ -49,6 +52,8 @@ public class MainWindowController {
4952
@FXML
5053
private Pane deployPane;
5154
@FXML
55+
private Pane aboutPane;
56+
@FXML
5257
private StatusBar statusBar;
5358
@Inject
5459
private EventBus eventBus;
@@ -65,6 +70,8 @@ public class MainWindowController {
6570
@Inject
6671
private Project project;
6772

73+
private Stage aboutDialogStage;
74+
6875
public void initialize() {
6976
pipelineView.prefHeightProperty().bind(bottomPane.heightProperty());
7077
statusBar.getLeftItems().add(startStoppableButtonFactory.create(pipelineRunner));
@@ -209,6 +216,21 @@ public void showProjectSettingsEditor() {
209216
});
210217
}
211218

219+
@FXML
220+
public void showProjectAboutDialog() throws IOException {
221+
if (aboutDialogStage == null) {
222+
aboutDialogStage = new Stage();
223+
aboutDialogStage.setScene(new Scene(aboutPane));
224+
aboutDialogStage.initStyle(StageStyle.UTILITY);
225+
aboutDialogStage.focusedProperty().addListener((observable, oldvalue, newvalue) -> {
226+
if (oldvalue) {
227+
aboutDialogStage.hide();
228+
}
229+
});
230+
}
231+
aboutDialogStage.show();
232+
}
233+
212234
@FXML
213235
public void quit() {
214236
if (showConfirmationDialogAndWait()) {

0 commit comments

Comments
 (0)