From f5f4c655c5fd71efb96bcaac68dbc9189853a210 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Mon, 14 Dec 2020 13:52:47 +0100 Subject: [PATCH] ActionAlarm --- .../dependencyInjection/AutomationModule.kt | 1 + .../general/automation/AutomationPlugin.kt | 1 + .../general/automation/actions/ActionAlarm.kt | 72 +++++++++++++ app/src/main/res/raw/modern_alarm.mp3 | Bin 0 -> 84008 bytes app/src/main/res/values/strings.xml | 3 + .../automation/actions/ActionAlarmTest.kt | 97 ++++++++++++++++++ 6 files changed, 174 insertions(+) create mode 100644 app/src/main/java/info/nightscout/androidaps/plugins/general/automation/actions/ActionAlarm.kt create mode 100644 app/src/main/res/raw/modern_alarm.mp3 create mode 100644 app/src/test/java/info/nightscout/androidaps/plugins/general/automation/actions/ActionAlarmTest.kt diff --git a/app/src/main/java/info/nightscout/androidaps/dependencyInjection/AutomationModule.kt b/app/src/main/java/info/nightscout/androidaps/dependencyInjection/AutomationModule.kt index bf54732d93..04aacf5a84 100644 --- a/app/src/main/java/info/nightscout/androidaps/dependencyInjection/AutomationModule.kt +++ b/app/src/main/java/info/nightscout/androidaps/dependencyInjection/AutomationModule.kt @@ -39,6 +39,7 @@ abstract class AutomationModule { @ContributesAndroidInjector abstract fun actionLoopResumeInjector(): ActionLoopResume @ContributesAndroidInjector abstract fun actionLoopSuspendInjector(): ActionLoopSuspend @ContributesAndroidInjector abstract fun actionNotificationInjector(): ActionNotification + @ContributesAndroidInjector abstract fun actionAlarmInjector(): ActionAlarm @ContributesAndroidInjector abstract fun actionProfileSwitchInjector(): ActionProfileSwitch @ContributesAndroidInjector abstract fun actionProfileSwitchPercentInjector(): ActionProfileSwitchPercent @ContributesAndroidInjector abstract fun actionSendSMSInjector(): ActionSendSMS diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/general/automation/AutomationPlugin.kt b/app/src/main/java/info/nightscout/androidaps/plugins/general/automation/AutomationPlugin.kt index bd10b77e25..040f01a141 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/general/automation/AutomationPlugin.kt +++ b/app/src/main/java/info/nightscout/androidaps/plugins/general/automation/AutomationPlugin.kt @@ -239,6 +239,7 @@ class AutomationPlugin @Inject constructor( ActionStartTempTarget(injector), ActionStopTempTarget(injector), ActionNotification(injector), + ActionAlarm(injector), ActionProfileSwitchPercent(injector), ActionProfileSwitch(injector), ActionSendSMS(injector) diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/general/automation/actions/ActionAlarm.kt b/app/src/main/java/info/nightscout/androidaps/plugins/general/automation/actions/ActionAlarm.kt new file mode 100644 index 0000000000..1c26cdb8eb --- /dev/null +++ b/app/src/main/java/info/nightscout/androidaps/plugins/general/automation/actions/ActionAlarm.kt @@ -0,0 +1,72 @@ +package info.nightscout.androidaps.plugins.general.automation.actions + +import android.content.Context +import android.content.Intent +import android.widget.LinearLayout +import androidx.annotation.DrawableRes +import dagger.android.HasAndroidInjector +import info.nightscout.androidaps.R +import info.nightscout.androidaps.activities.ErrorHelperActivity +import info.nightscout.androidaps.activities.PreferencesActivity +import info.nightscout.androidaps.data.PumpEnactResult +import info.nightscout.androidaps.events.EventRefreshOverview +import info.nightscout.androidaps.plugins.bus.RxBusWrapper +import info.nightscout.androidaps.plugins.general.automation.elements.InputString +import info.nightscout.androidaps.plugins.general.automation.elements.LabelWithElement +import info.nightscout.androidaps.plugins.general.automation.elements.LayoutBuilder +import info.nightscout.androidaps.plugins.general.nsclient.NSUpload +import info.nightscout.androidaps.plugins.general.overview.events.EventNewNotification +import info.nightscout.androidaps.plugins.general.overview.notifications.NotificationUserMessage +import info.nightscout.androidaps.queue.Callback +import info.nightscout.androidaps.utils.JsonHelper +import info.nightscout.androidaps.utils.alertDialogs.WarningDialog +import info.nightscout.androidaps.utils.resources.ResourceHelper +import org.json.JSONObject +import javax.inject.Inject + +class ActionAlarm(injector: HasAndroidInjector) : Action(injector) { + + @Inject lateinit var resourceHelper: ResourceHelper + @Inject lateinit var rxBus: RxBusWrapper + @Inject lateinit var nsUpload: NSUpload + @Inject lateinit var context: Context + + var text = InputString(injector) + + override fun friendlyName(): Int = R.string.alarm + override fun shortDescription(): String = resourceHelper.gs(R.string.alarm_message, text.value) + @DrawableRes override fun icon(): Int = R.drawable.ic_access_alarm_24dp + + override fun doAction(callback: Callback) { + val i = Intent(context, ErrorHelperActivity::class.java) + i.putExtra("soundid", R.raw.modern_alarm) + i.putExtra("status", text.value) + i.putExtra("title", resourceHelper.gs(R.string.alarm)) + i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) + context.startActivity(i) + + callback.result(PumpEnactResult(injector).success(true).comment(R.string.ok))?.run() + } + + override fun toJSON(): String { + val data = JSONObject().put("text", text.value) + return JSONObject() + .put("type", this.javaClass.name) + .put("data", data) + .toString() + } + + override fun fromJSON(data: String): Action { + val o = JSONObject(data) + text.value = JsonHelper.safeGetString(o, "text", "") + return this + } + + override fun hasDialog(): Boolean = true + + override fun generateDialog(root: LinearLayout) { + LayoutBuilder() + .add(LabelWithElement(injector, resourceHelper.gs(R.string.alarm_short), "", text)) + .build(root) + } +} \ No newline at end of file diff --git a/app/src/main/res/raw/modern_alarm.mp3 b/app/src/main/res/raw/modern_alarm.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..6b9965ab26ee286609c3427f3a65837c85e01a37 GIT binary patch literal 84008 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

#lcNEn|eU9Cs| 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 Notification: %1$s + Alarm: %1$s Msg: + Alarm: Profile percentage Percent [%]: Start profile %1$d%% for %2$d min @@ -1411,5 +1413,6 @@ Filter Unable to create local profile. Profile is invalid. Don\'t kill my app? + Alarm diff --git a/app/src/test/java/info/nightscout/androidaps/plugins/general/automation/actions/ActionAlarmTest.kt b/app/src/test/java/info/nightscout/androidaps/plugins/general/automation/actions/ActionAlarmTest.kt new file mode 100644 index 0000000000..aceee54a25 --- /dev/null +++ b/app/src/test/java/info/nightscout/androidaps/plugins/general/automation/actions/ActionAlarmTest.kt @@ -0,0 +1,97 @@ +package info.nightscout.androidaps.plugins.general.automation.actions + +import android.content.Context +import dagger.android.AndroidInjector +import dagger.android.HasAndroidInjector +import info.nightscout.androidaps.R +import info.nightscout.androidaps.TestBase +import info.nightscout.androidaps.data.PumpEnactResult +import info.nightscout.androidaps.plugins.bus.RxBusWrapper +import info.nightscout.androidaps.plugins.general.automation.elements.InputString +import info.nightscout.androidaps.plugins.general.nsclient.NSUpload +import info.nightscout.androidaps.queue.Callback +import info.nightscout.androidaps.utils.resources.ResourceHelper +import org.junit.Assert +import org.junit.Before +import org.junit.Test +import org.junit.runner.RunWith +import org.mockito.ArgumentMatchers +import org.mockito.Mock +import org.mockito.Mockito +import org.mockito.Mockito.`when` +import org.powermock.api.mockito.PowerMockito +import org.powermock.core.classloader.annotations.PrepareForTest +import org.powermock.modules.junit4.PowerMockRunner + +@RunWith(PowerMockRunner::class) +@PrepareForTest(NSUpload::class, RxBusWrapper::class) +class ActionAlarmTest : TestBase() { + + @Mock lateinit var resourceHelper: ResourceHelper + @Mock lateinit var rxBus: RxBusWrapper + @Mock lateinit var nsUpload: NSUpload + @Mock lateinit var context: Context + + private lateinit var sut: ActionAlarm + var injector: HasAndroidInjector = HasAndroidInjector { + AndroidInjector { + if (it is ActionAlarm) { + it.resourceHelper = resourceHelper + it.rxBus = rxBus + it.nsUpload = nsUpload + it.context = context + } + if (it is PumpEnactResult) { + it.aapsLogger = aapsLogger + it.resourceHelper = resourceHelper + } + } + } + + @Before + fun setup() { + PowerMockito.mockStatic(NSUpload::class.java) + `when`(resourceHelper.gs(R.string.ok)).thenReturn("OK") + `when`(resourceHelper.gs(R.string.alarm)).thenReturn("Alarm") + `when`(resourceHelper.gs(ArgumentMatchers.eq(R.string.alarm_message), ArgumentMatchers.anyString())).thenReturn("Alarm: %s") + + sut = ActionAlarm(injector) + } + + @Test fun friendlyNameTest() { + Assert.assertEquals(R.string.alarm, sut.friendlyName()) + } + + @Test fun shortDescriptionTest() { + sut.text = InputString(injector, "Asd") + Assert.assertEquals("Alarm: %s", sut.shortDescription()) + } + + @Test fun iconTest() { + Assert.assertEquals(R.drawable.ic_access_alarm_24dp, sut.icon()) + } + + @Test fun doActionTest() { + sut.doAction(object : Callback() { + override fun run() { + Assert.assertTrue(result.success) + } + }) + PowerMockito.verifyStatic(NSUpload::class.java, Mockito.times(1)) + } + + @Test fun hasDialogTest() { + Assert.assertTrue(sut.hasDialog()) + } + + @Test fun toJSONTest() { + sut.text = InputString(injector, "Asd") + Assert.assertEquals("{\"data\":{\"text\":\"Asd\"},\"type\":\"info.nightscout.androidaps.plugins.general.automation.actions.ActionAlarm\"}", sut.toJSON()) + } + + @Test fun fromJSONTest() { + sut.text = InputString(injector, "Asd") + sut.fromJSON("{\"text\":\"Asd\"}") + Assert.assertEquals("Asd", sut.text.value) + } +} \ No newline at end of file