В дополнение к ответу Мины. Когда вы объявляете активность как внутренний статический класс, тогда вы должны написать свою активность в манифест, как ...
<activity android:name=".app.FragmentLayoutSupport$DetailsActivity" />
здесь .app происходит от вашего имени пакета, это может быть .helpers.afdfa $ afda
Я только что проверил это.
'use strict'
function foo () {
return 'foo';
}
exports.foo = foo;
function bar () {
return exports.foo();
}
exports.bar = bar;
Объяснение
blockquote>, когда вы делаете
sinon.stub(myModule, 'foo').returns('foo2')
, затемsinon
заглушаетexported
объектfoo
объектаexported
а не фактическая функцияfoo
изнутри вашегоmyModule.js
... как вы должны знать,foo
доступен извне модуля. Поэтому, когда вы устанавливаетеexports.foo
, экспортируемый объектexports.foo
сохраняет reffoo
. и когда вы назоветеsinon.stub(myModule, 'foo').returns('foo2')
,sinon
закроетexports.foo
, а не фактическийfoo
Надеюсь, это имеет смысл!
exports
, так как он выполняет ту же работу, что иthis
, но это будет делать. Использованиеthis
в статическом контексте немного пошатнуло мой разум. – Simon 6 March 2016 в 23:54