Вам нужно использовать SingleLiveEvent для этого случая.
class SingleLiveEvent<T> : MutableLiveData<T>() {
private val pending = AtomicBoolean(false)
@MainThread
override fun observe(owner: LifecycleOwner, observer: Observer<T>) {
if (hasActiveObservers()) {
Log.w(TAG, "Multiple observers registered but only one will be notified of changes.")
}
// Observe the internal MutableLiveData
super.observe(owner, Observer<T> { t ->
if (pending.compareAndSet(true, false)) {
observer.onChanged(t)
}
})
}
@MainThread
override fun setValue(t: T?) {
pending.set(true)
super.setValue(t)
}
/**
* Used for cases where T is Void, to make calls cleaner.
*/
@MainThread
fun call() {
value = null
}
companion object {
private const val TAG = "SingleLiveEvent"
}
}
А внутри класса viewmodel создать объект, подобный:
val snackbarMessage = SingleLiveEvent<Int>()
Selenium не имеет IDE для Internet Explorer (любой версии). Я тоже не видел ничего в разработке. Вы можете проверить их доски / сайт на предмет обновлений, но я их основной целью является FireFox для среды IDE.
Selenium может запускать тесты в Internet Explorer (включая IE6) с помощью ] SeleniumRC . Вы можете записывать тесты с помощью IDE в FireFox (или писать тесты на на любом языке, который они поддерживают ), а затем использовать SeleniumRC для запуска IE и выполнения тестов.
Для IDE Internet Explorer, аналогичных тем, что дает Selenium. FireFox, проверьте WatiN