Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions app/build.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#Build Properties
#Sat Jul 19 09:27:24 EDT 2025
version_build=14
#Mon Jul 21 18:30:25 CEST 2025
version_build=18
version_major=3
version_minor=2
version_patch=1
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,6 @@ import com.vrem.wifianalyzer.R
enum class ThemeStyle(@param:StyleRes val theme: Int, @param:StyleRes val themeNoActionBar: Int, @param:ColorInt val colorGraphText: Int) {
DARK(R.style.ThemeDark, R.style.ThemeDarkNoActionBar, Color.WHITE),
LIGHT(R.style.ThemeLight, R.style.ThemeLightNoActionBar, Color.BLACK),
BLACK(R.style.ThemeBlack, R.style.ThemeBlackNoActionBar, Color.WHITE),
SYSTEM(R.style.ThemeSystem, R.style.ThemeSystemNoActionBar, Color.GRAY);
}
2 changes: 2 additions & 0 deletions app/src/main/res/values/arrays.xml
Original file line number Diff line number Diff line change
Expand Up @@ -100,11 +100,13 @@
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
</string-array>

<string-array name="theme_array">
<item>@string/theme_dark</item>
<item>@string/theme_light</item>
<item>@string/theme_black</item>
<item>@string/theme_system</item>
</string-array>

Expand Down
2 changes: 2 additions & 0 deletions app/src/main/res/values/colors.xml
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,6 @@
<color name="success">#4CAF50</color>
<!-- background -->
<color name="background">#616161</color>
<!-- black -->
<color name="black">#000000</color>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,7 @@
<string name="theme_default" translatable="false">"0"</string>
<string name="theme_dark">"Dark"</string>
<string name="theme_light">"Light"</string>
<string name="theme_black">"Black"</string>
<string name="theme_system">"System"</string>

<string name="wifi_off_on_exit_title">"Wi-Fi off on Exit"</string>
Expand Down
13 changes: 13 additions & 0 deletions app/src/main/res/values/styles.xml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,19 @@
<item name="windowNoTitle">true</item>
</style>

<style name="ThemeBlack" parent="Theme.AppCompat">
<item name="android:windowAnimationStyle">@style/WindowAnimationTransition</item>
<item name="android:actionMenuTextColor">@color/selected</item>
<item name="android:windowBackground">@color/black</item>
<item name="colorPrimary">@color/black</item>

</style>

<style name="ThemeBlackNoActionBar" parent="ThemeBlack">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>

<style name="ThemeSystem" parent="Theme.AppCompat.DayNight.DarkActionBar">
<item name="android:windowAnimationStyle">@style/WindowAnimationTransition</item>
<item name="android:actionMenuTextColor">@color/selected</item>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,19 @@ class SettingsTest {
}

@Test
fun themeStyle() {
fun themeStyleDark() {
// setup
doReturn(ThemeStyle.DARK.ordinal)
.whenever(repository).stringAsInteger(R.string.theme_key, ThemeStyle.DARK.ordinal)
// execute
val actual = fixture.themeStyle()
// validate
assertThat(actual).isEqualTo(ThemeStyle.DARK)
verify(repository).stringAsInteger(R.string.theme_key, ThemeStyle.DARK.ordinal)
}

@Test
fun themeStyleLight() {
// setup
doReturn(ThemeStyle.LIGHT.ordinal)
.whenever(repository).stringAsInteger(R.string.theme_key, ThemeStyle.DARK.ordinal)
Expand All @@ -170,6 +182,42 @@ class SettingsTest {
verify(repository).stringAsInteger(R.string.theme_key, ThemeStyle.DARK.ordinal)
}

@Test
fun themeStyleBlack() {
// setup
doReturn(ThemeStyle.BLACK.ordinal)
.whenever(repository).stringAsInteger(R.string.theme_key, ThemeStyle.DARK.ordinal)
// execute
val actual = fixture.themeStyle()
// validate
assertThat(actual).isEqualTo(ThemeStyle.BLACK)
verify(repository).stringAsInteger(R.string.theme_key, ThemeStyle.DARK.ordinal)
}

@Test
fun themeStyleSystem() {
// setup
doReturn(ThemeStyle.SYSTEM.ordinal)
.whenever(repository).stringAsInteger(R.string.theme_key, ThemeStyle.DARK.ordinal)
// execute
val actual = fixture.themeStyle()
// validate
assertThat(actual).isEqualTo(ThemeStyle.SYSTEM)
verify(repository).stringAsInteger(R.string.theme_key, ThemeStyle.DARK.ordinal)
}

@Test
fun themeStyleInvalid() {
// setup
doReturn(ThemeStyle.entries.size)
.whenever(repository).stringAsInteger(R.string.theme_key, ThemeStyle.DARK.ordinal)
// execute
val actual = fixture.themeStyle()
// validate
assertThat(actual).isEqualTo(ThemeStyle.DARK)
verify(repository).stringAsInteger(R.string.theme_key, ThemeStyle.DARK.ordinal)
}

@Test
fun channelGraphLegend() {
// setup
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,27 +25,30 @@ import org.junit.Test
class ThemeStyleTest {
@Test
fun themeStyle() {
assertThat(ThemeStyle.entries).hasSize(3)
assertThat(ThemeStyle.entries).hasSize(4)
}

@Test
fun theme() {
assertThat(ThemeStyle.LIGHT.theme).isEqualTo(R.style.ThemeLight)
assertThat(ThemeStyle.DARK.theme).isEqualTo(R.style.ThemeDark)
assertThat(ThemeStyle.BLACK.theme).isEqualTo(R.style.ThemeBlack)
assertThat(ThemeStyle.SYSTEM.theme).isEqualTo(R.style.ThemeSystem)
}

@Test
fun themeNoActionBar() {
assertThat(ThemeStyle.DARK.themeNoActionBar).isEqualTo(R.style.ThemeDarkNoActionBar)
assertThat(ThemeStyle.LIGHT.themeNoActionBar).isEqualTo(R.style.ThemeLightNoActionBar)
assertThat(ThemeStyle.BLACK.themeNoActionBar).isEqualTo(R.style.ThemeBlackNoActionBar)
assertThat(ThemeStyle.SYSTEM.themeNoActionBar).isEqualTo(R.style.ThemeSystemNoActionBar)
}

@Test
fun colorGraphText() {
assertThat(ThemeStyle.DARK.colorGraphText).isEqualTo(Color.WHITE)
assertThat(ThemeStyle.LIGHT.colorGraphText).isEqualTo(Color.BLACK)
assertThat(ThemeStyle.BLACK.colorGraphText).isEqualTo(Color.WHITE)
assertThat(ThemeStyle.SYSTEM.colorGraphText).isEqualTo(Color.GRAY)
}

Expand Down