Add settingsprovider test
This commit is contained in:
@@ -19,13 +19,19 @@ public class SettingsProvider implements SettingsProviderI {
|
||||
|
||||
private EventBus eventBus;
|
||||
|
||||
private String SETTINGS_PATH =
|
||||
private String settingsPath =
|
||||
(System.getProperty("os.name").startsWith("Windows"))
|
||||
? System.getProperty("user.home") + "\\AppData\\Roaming\\/BNNsettings.dat"
|
||||
: System.getProperty("user.home") + System.getProperty("file.separator") + ".BNNsettings.dat";
|
||||
|
||||
private List<String> legalSettings =
|
||||
Arrays.asList("Java", "Markdown", "Monokai", "Solarized Light");
|
||||
|
||||
|
||||
// Only for testing purposes
|
||||
protected void setSettingsPath(String settingsPath) {
|
||||
this.settingsPath = settingsPath;
|
||||
}
|
||||
|
||||
|
||||
public SettingsProvider(EventBus eB) {
|
||||
@@ -41,7 +47,7 @@ public class SettingsProvider implements SettingsProviderI {
|
||||
@Override
|
||||
public void loadSettings() {
|
||||
List<String> settings = new ArrayList<>();
|
||||
try (Scanner sc = new Scanner(new File(SETTINGS_PATH))) {
|
||||
try (Scanner sc = new Scanner(new File(settingsPath))) {
|
||||
|
||||
while (sc.hasNextLine()) {
|
||||
var nextLine = sc.nextLine().trim();
|
||||
@@ -69,7 +75,7 @@ public class SettingsProvider implements SettingsProviderI {
|
||||
|
||||
@Override
|
||||
public void saveSettings() {
|
||||
try (PrintWriter writer = new PrintWriter(new File(SETTINGS_PATH))) {
|
||||
try (PrintWriter writer = new PrintWriter(new File(settingsPath))) {
|
||||
writer.println("- Settings:");
|
||||
writer.println("Programming Language = " + Model.getLanguage().getName());
|
||||
writer.println("Theme = " + Model.getTheme());
|
||||
|
||||
@@ -2,8 +2,14 @@ package app.settings;
|
||||
|
||||
public interface SettingsProviderI {
|
||||
|
||||
void loadSettings();
|
||||
/**
|
||||
* Load settings from disk, and fire events to update the program state
|
||||
*/
|
||||
void loadSettings();
|
||||
|
||||
void saveSettings();
|
||||
/**
|
||||
* Save the state from {@link app.model.Model Model} to disk.
|
||||
*/
|
||||
void saveSettings();
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user