Skip to content

Commit 1d23e2f

Browse files
committed
Refactor DriverSettings, removed redundant classes
1 parent b7d8ba2 commit 1d23e2f

File tree

6 files changed

+9
-60
lines changed

6 files changed

+9
-60
lines changed

src/main/java/aquality/appium/mobile/configuration/ApplicationProfile.java

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
package aquality.appium.mobile.configuration;
22

33
import aquality.appium.mobile.application.PlatformName;
4-
import aquality.appium.mobile.configuration.driversettings.AndroidSettings;
5-
import aquality.appium.mobile.configuration.driversettings.IDriverSettings;
6-
import aquality.appium.mobile.configuration.driversettings.IOSSettings;
74
import aquality.selenium.core.utilities.ISettingsFile;
85
import com.google.inject.Inject;
96
import org.openqa.selenium.InvalidArgumentException;
@@ -32,18 +29,7 @@ public boolean isRemote() {
3229

3330
@Override
3431
public IDriverSettings getDriverSettings() {
35-
IDriverSettings driverSettings;
36-
switch (getPlatformName()) {
37-
case ANDROID:
38-
driverSettings = new AndroidSettings(settingsFile);
39-
break;
40-
case IOS:
41-
driverSettings = new IOSSettings(settingsFile);
42-
break;
43-
default:
44-
throw new IllegalArgumentException("There are no assigned behaviour for retrieving driver driversettings for platform " + getPlatformName());
45-
}
46-
return driverSettings;
32+
return new DriverSettings(settingsFile, getPlatformName());
4733
}
4834

4935
@Override
Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
package aquality.appium.mobile.configuration.driversettings;
1+
package aquality.appium.mobile.configuration;
22

33
import aquality.appium.mobile.application.AqualityServices;
4+
import aquality.appium.mobile.application.PlatformName;
45
import aquality.selenium.core.localization.ILocalizationManager;
56
import aquality.selenium.core.utilities.ISettingsFile;
67
import org.openqa.selenium.Capabilities;
@@ -10,14 +11,16 @@
1011
import java.io.IOException;
1112
import java.util.Map;
1213

13-
abstract class DriverSettings implements IDriverSettings {
14+
public class DriverSettings implements IDriverSettings {
1415

1516
private static final String APPLICATION_PATH_KEY = "applicationPath";
1617
private static final String APP_CAPABILITY_KEY = "app";
1718
private final ISettingsFile settingsFile;
19+
private final PlatformName platformName;
1820

19-
DriverSettings(ISettingsFile settingsFile) {
21+
public DriverSettings(ISettingsFile settingsFile, PlatformName platformName) {
2022
this.settingsFile = settingsFile;
23+
this.platformName = platformName;
2124
}
2225

2326
@Override
@@ -60,6 +63,6 @@ private String getDriverCapabilitiesJsonPath(){
6063
}
6164

6265
private String getDriverSettingsPath(){
63-
return String.format("/driverSettings/%1$s", getPlatformName().toString().toLowerCase());
66+
return String.format("/driverSettings/%1$s", platformName.toString().toLowerCase());
6467
}
6568
}

src/main/java/aquality/appium/mobile/configuration/IApplicationProfile.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package aquality.appium.mobile.configuration;
22

33
import aquality.appium.mobile.application.PlatformName;
4-
import aquality.appium.mobile.configuration.driversettings.IDriverSettings;
54

65
import java.net.URL;
76

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
package aquality.appium.mobile.configuration.driversettings;
1+
package aquality.appium.mobile.configuration;
22

3-
import aquality.appium.mobile.application.PlatformName;
43
import org.openqa.selenium.Capabilities;
54

65
/**
@@ -14,12 +13,6 @@ public interface IDriverSettings {
1413
*/
1514
Capabilities getCapabilities();
1615

17-
/**
18-
* Get desired platform name.
19-
* @return Platform name.
20-
*/
21-
PlatformName getPlatformName();
22-
2316
/**
2417
* Provides a path to the application.
2518
* @return path to application.

src/main/java/aquality/appium/mobile/configuration/driversettings/AndroidSettings.java

Lines changed: 0 additions & 16 deletions
This file was deleted.

src/main/java/aquality/appium/mobile/configuration/driversettings/IOSSettings.java

Lines changed: 0 additions & 16 deletions
This file was deleted.

0 commit comments

Comments
 (0)