小编Geo*_*tic的帖子

如何 EXPECT_CALL 方法的特定版本?

我有一个类,其中包含同一命名方法的两个不同版本:

MOCK_METHOD0(CmdData, char*());
MOCK_CONST_METHOD0(CmdData, const char*());
Run Code Online (Sandbox Code Playgroud)

如何为它们每个设置 EXPECT_CALL?

它似乎只设置了非常量版本的调用。

googlemock

3
推荐指数
1
解决办法
1014
查看次数

屏幕唤醒时没有调用onRestoreInstanceState?

我已经编写了所有需要的代码来保存我的Activity状态(一个带有EditText小部件的简单表单)并在电话轮换时恢复它并且效果很好.

我的问题是管理屏幕开/关更改:当关闭时,调用onSaveInstanceState并且一切顺利.在屏幕上,不调用onRestoreInstanceState,也不调用onCreate,仅调用onResume.

我错过了什么吗?

android state screen

2
推荐指数
1
解决办法
6311
查看次数

Kotlin仿制药继承

我有一个基类Base,两个特性让我们说Trait1和Trait2.

我想写一个包含所有这三件事的参数化类.

在scala我做:

class C[T <: Base with Trait1 with Trait2] { … }
Run Code Online (Sandbox Code Playgroud)

在kotlin我正在尝试:

class C<T : Base, Trait1, Trait2> { … }
Run Code Online (Sandbox Code Playgroud)

但它并不好,Trait1和Trait2是更多的类型参数.

有没有办法写这个?

scala kotlin

2
推荐指数
1
解决办法
594
查看次数

ActivityTestRule.getActivity在Before方法中返回null

我需要在每次测试之前清空用户的数据

// Kotlin code
fun getActivity() = activityRule.getActivity()

Before
fun setUp() {
    cleanUp(getActivity())
}
Run Code Online (Sandbox Code Playgroud)

我需要获取一个Context才能这样做,但在setUp中,activityRule.getActivity()返回null.

我也尝试过:

Before
fun setUp() {
    val i = Intent()
    i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)
    activityRule.lauchActivity(i)
    cleanUp(getActivity())
}
Run Code Online (Sandbox Code Playgroud)

我有一项活动,但cleanUp的工作时间只有一半(我相信一些竞争条件适用于此)

我想避免在After函数中cleanUp,以便在需要时手动查看我的应用程序状态.

无论如何在Before函数中获取上下文?

谢谢

testing android kotlin android-espresso

2
推荐指数
1
解决办法
2214
查看次数

Android Epresso:DatePicker单击确定添加一年而不是验证

在Google Espresso测试中,我正在尝试单击DatePickerDialog的"确定"按钮.

但不是验证我的输入,它只是添加一年而不关闭对话框.

似乎点击是在年份专栏的"+"按钮上完成的.这是一个Espresso错误还是我错过了什么?

这是我的Espresso代码(在Kotlin中):

onView(allOf(iz(instanceOf(javaClass<Button>())), withText("OK"),
            isDisplayed()) as Matcher<View>).perform(click())
Run Code Online (Sandbox Code Playgroud)

android datepicker android-espresso

2
推荐指数
3
解决办法
2858
查看次数

是否可以从测试中访问私有结构字段?

我目前正在学习 Rust(到目前为止 1 周),我想测试我的代码。

我有这个结构:

pub struct MyStruct {
  pub field1: i64,
  field2: i64
}

impl MyStruct {
  pub fn new(a: i64) -> MyStruct {
    MyStruct { field1: a, field2: 0 }
  }
}
Run Code Online (Sandbox Code Playgroud)

现在在另一个模块的测试中,我想创建一个MyStruct具有特定的field2,但它是私有的。

有没有办法在不创建特殊构造函数的情况下做到这一点MyStruct

unit-testing rust

2
推荐指数
1
解决办法
1467
查看次数

Kotlin Android,Spinner setSelection没有解决

我正在做 :

mySpinner.setSelection(myObj?.spinIdx)
Run Code Online (Sandbox Code Playgroud)

用:

var spinIdx: Int = 0
Run Code Online (Sandbox Code Playgroud)

并且编译器抱怨"在命题中使用setSelection(Int)可以调用以下函数".为什么?

mySpinner.setSelection(myObj?.spinIdx as Int)
Run Code Online (Sandbox Code Playgroud)

解决问题,但我不明白这里的编译器.

kotlin

1
推荐指数
1
解决办法
836
查看次数

在ICS中更改了Android datepicker年份字段

我在我的应用程序中使用DatePicker组件来选择日/月/年

现在我的手机已更新为ICS,我发现年份字段将替换为完整日历.有没有办法回到日/月/年的3列?

android datepicker android-4.0-ice-cream-sandwich

0
推荐指数
1
解决办法
403
查看次数