Skip to content

Commit dd0ae11

Browse files
committed
WebClientOptions.Geolocation is serializable now
1 parent ed2d44b commit dd0ae11

File tree

2 files changed

+18
-1
lines changed

2 files changed

+18
-1
lines changed

src/main/java/org/htmlunit/WebClientOptions.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -848,7 +848,7 @@ public void setGeolocation(final Geolocation geolocation) {
848848
geolocation_ = geolocation;
849849
}
850850

851-
public static class Geolocation {
851+
public static class Geolocation implements Serializable {
852852
private final double accuracy_;
853853
private final double latitude_;
854854
private final double longitude_;

src/test/java/org/htmlunit/WebClientOptionsTest.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import javax.net.ssl.SSLContext;
1818

1919
import org.apache.commons.lang3.SerializationUtils;
20+
import org.htmlunit.WebClientOptions.Geolocation;
2021
import org.htmlunit.junit.BrowserRunner;
2122
import org.junit.Test;
2223
import org.junit.runner.RunWith;
@@ -48,6 +49,9 @@ public void serialization() throws Exception {
4849
assertEquals(original.isThrowExceptionOnScriptError(), deserialized.isThrowExceptionOnScriptError());
4950
assertEquals(original.isPopupBlockerEnabled(), deserialized.isPopupBlockerEnabled());
5051
assertEquals(original.isRedirectEnabled(), deserialized.isRedirectEnabled());
52+
53+
assertEquals(original.isGeolocationEnabled(), deserialized.isGeolocationEnabled());
54+
assertEquals(original.getGeolocation(), deserialized.getGeolocation());
5155
}
5256

5357
/**
@@ -65,6 +69,9 @@ public void serializationChanged() throws Exception {
6569
original.setPopupBlockerEnabled(true);
6670
original.setRedirectEnabled(false);
6771

72+
original.setGeolocationEnabled(true);
73+
original.setGeolocation(new WebClientOptions.Geolocation(1d, 2d, 3d, 4d, 5d, 6d, 7d));
74+
6875
final byte[] bytes = SerializationUtils.serialize(original);
6976
final WebClientOptions deserialized = (WebClientOptions) SerializationUtils.deserialize(bytes);
7077

@@ -77,6 +84,16 @@ public void serializationChanged() throws Exception {
7784
assertEquals(original.isThrowExceptionOnScriptError(), deserialized.isThrowExceptionOnScriptError());
7885
assertEquals(original.isPopupBlockerEnabled(), deserialized.isPopupBlockerEnabled());
7986
assertEquals(original.isRedirectEnabled(), deserialized.isRedirectEnabled());
87+
88+
assertEquals(original.isGeolocationEnabled(), deserialized.isGeolocationEnabled());
89+
assertEquals(original.getGeolocation().getAccuracy(), deserialized.getGeolocation().getAccuracy());
90+
assertEquals(original.getGeolocation().getLatitude(), deserialized.getGeolocation().getLatitude());
91+
assertEquals(original.getGeolocation().getLongitude(), deserialized.getGeolocation().getLongitude());
92+
assertEquals(original.getGeolocation().getAltitude(), deserialized.getGeolocation().getAltitude());
93+
assertEquals(original.getGeolocation().getAltitudeAccuracy(),
94+
deserialized.getGeolocation().getAltitudeAccuracy());
95+
assertEquals(original.getGeolocation().getHeading(), deserialized.getGeolocation().getHeading());
96+
assertEquals(original.getGeolocation().getSpeed(), deserialized.getGeolocation().getSpeed());
8097
}
8198

8299
/**

0 commit comments

Comments
 (0)