list_1=range(0,100)
list_2=range(0,100,5)
final_list=[]
for i in list_1:
for j in list_2:
if i==j:
final_list.append(i)
print(set(final_list))
, вам следует игнорировать этот ответ. Теперь это возможно, как видно из других ответов. [/G0] [g1] Невозможно изменить [f2] в браузере без перезагрузки страницы. URL-адрес представляет собой последнюю загруженную страницу. Если вы измените его ([f3]), он перезагрузит страницу. [/G1] [g2] Одной из очевидных причин является то, что вы пишете сайт на [f4], который выглядит как страница входа в банк. Затем вы изменяете строку URL браузера на [f5]. Пользователь будет совершенно не в курсе, что он действительно смотрит на [f6]. [/G2] Причина, по которой вы получаете ошибку нулевой ссылки, заключается в том, что IPrincipal.Identity
имеет значение NULL; он еще не установлен в вашем mocked IPrincipal
. Вызов .Name
null Identity
приводит к вашему исключению.
Как указал Карлтон, ответ состоит в том, чтобы высмеять IIdentity
также и настроить его так, чтобы он возвращал "ju" для его свойства Name
. Затем вы можете указать IPrincipal.Identity
вернуть фиктивный IIdentity
.
Вот расширение вашего кода для этого (с использованием Rhino Mocks вместо заглушек):
public void BeforeTest()
{
mocks = new MockRepository();
IPrincipal mockPrincipal = mocks.CreateMock<IPrincipal>();
IIdentity mockIdentity = mocks.CreateMock<IIdentity>();
ApplicationContext.User = mockPrincipal;
using (mocks.Record())
{
Expect.Call(mockPrincipal.IsInRole(Roles.ROLE_MAN_PERSON)).Return(true);
Expect.Call(mockIdentity.Name).Return("ju");
Expect.Call(mockPrincipal.Identity).Return(mockIdentity);
}
}
Вот код, который я использую для возврата проверочного пользователя (использующий Тупики):
[SetUp]
public void Setup()
{
var identity = MockRepository.GenerateStub<IIdentity>();
identity.Stub(p => p.Name).Return("TestUser").Repeat.Any();
var principal = MockRepository.GenerateStub<IPrincipal>();
principal.Stub(p => p.Identity).Return(identity).Repeat.Any();
Thread.CurrentPrincipal = principal;
}
У меня есть linq в другом коде, таким образом, я использую тип var для переменных; просто замените корректными типами (IPrincipal, IIdentity) в случае необходимости.