Skip to content

Commit

Permalink
Allow installing mods and maps without a download size (FAForever#2638)
Browse files Browse the repository at this point in the history
  • Loading branch information
1-alex98 authored and Chris Haggan committed Apr 15, 2022
1 parent 1d088cf commit 5c90aa7
Show file tree
Hide file tree
Showing 5 changed files with 22 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -210,8 +210,8 @@ public void setMapVersion(MapVersionBean mapVersion) {
installButton.setText(i18n.get("mapVault.installButtonFormat", Bytes.formatSize(mapFileSize, i18n.getUserSpecificLocale())));
installButton.setDisable(false);
} else {
installButton.setText(i18n.get("notAvailable"));
installButton.setDisable(true);
installButton.setText(i18n.get("mapVault.install"));
installButton.setDisable(false);
}
}));

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -143,12 +143,12 @@ public void setModVersion(ModVersionBean modVersion) {
.thenAccept(modFileSize -> JavaFxUtil.runLater(() -> {
if (modFileSize > -1) {
String size = Bytes.formatSize(modFileSize, i18n.getUserSpecificLocale());
installButton.setText(i18n.get("modVault.installButtonFormat", size));
installButton.setText(i18n.get("modVault.install", size));
installButton.setDisable(false);
sizeLabel.setText(size);
} else {
installButton.setText(i18n.get("notAvailable"));
installButton.setDisable(true);
installButton.setText(i18n.get("modVault.install"));
installButton.setDisable(false);
sizeLabel.setText(i18n.get("notAvailable"));
}
}));
Expand Down
3 changes: 2 additions & 1 deletion src/main/resources/i18n/messages.properties
Original file line number Diff line number Diff line change
Expand Up @@ -291,6 +291,7 @@ vault.more=More…
modVault.recommended=M&M Team Top Picks
modVault.newestMods=Most recent
modVault.installButtonFormat = Install ({0})
modVault.install = Install
modVault.uninstall = Uninstall
modVault.installationFailed = Mod ''{0}'' could not be installed\: {1}
modVault.couldNotDeleteMod = Mod ''{0}'' could not be deleted\: {1}
Expand Down Expand Up @@ -333,6 +334,7 @@ mapVault.mostLikedMaps = Most liked
mapVault.newestMaps = Most recent
mapVault.mostPlayed = Most played
mapVault.installButtonFormat = Install ({0})
mapVault.install = Install
mapVault.uninstall = Uninstall
mod.description = Description
mod.comments = Comments
Expand Down Expand Up @@ -911,7 +913,6 @@ settings.general.disallowDiscordJoins = Disallow Joining via Discord
settings.general.disallowDiscordJoins.description = Do not allow other players to join your game via Discord Rich Presence.
settings.general.advancedIceLog = Write ICE Log File
settings.general.advancedIceLog.description = Write information about the ICE adapter into an additional log file.
mapVault.install = Install
chat.userContext.report = Report player
userInfo.ratingHistory.allTime = All Time
userInfo.ratingHistory.lastYear = Last Year
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.springframework.context.ApplicationContext;
import org.testfx.util.WaitForAsyncUtils;

import java.time.OffsetDateTime;
Expand Down Expand Up @@ -336,13 +335,13 @@ public void testSetOfficialMap() {
@Test
public void testSetMapNoSize() {
when(mapService.getFileSize(testMap)).thenReturn(CompletableFuture.completedFuture(-1));
when(i18n.get("notAvailable")).thenReturn("notAvailable");
when(i18n.get("mapVault.install")).thenReturn("install");

instance.setMapVersion(testMap);
WaitForAsyncUtils.waitForFxEvents();

assertTrue(instance.installButton.isDisabled());
assertEquals("notAvailable", instance.installButton.getText());
assertFalse(instance.installButton.isDisabled());
assertEquals("install", instance.installButton.getText());
}

@Test
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,18 @@ public void testOnUninstallButtonClicked() {
verify(modService).uninstallMod(modVersion);
}

@Test
public void testSetModNoSize() {
when(modService.getFileSize(modVersion)).thenReturn(CompletableFuture.completedFuture(-1));
when(i18n.get("modVault.install")).thenReturn("install");

instance.setModVersion(modVersion);
WaitForAsyncUtils.waitForFxEvents();

assertFalse(instance.installButton.isDisabled());
assertEquals("install", instance.installButton.getText());
}

@Test
public void testOnUninstallButtonClickedThrowsException() {
modVersion.setMod(ModBeanBuilder.create().defaultValues().get());
Expand Down

0 comments on commit 5c90aa7

Please sign in to comment.