У вас ошибка, потому что вы не настроили маршруты, даже если использовали здесь RouterTestingModule
. Сконфигурируйте ваш раздел imports
спецификации следующим образом, но я не думаю, что вызов функции logout
в onInit
является правильной реализацией.
imports: [
RouterTestingModule.withRoutes([
{ path: 'logout', component: LogoutComponent }
]),
HttpClientTestingModule
]
Скажи мне, если это работает, и мы выясним оттуда. Я думаю, что даже если это решит вашу проблему, это вряд ли протестирует ваш тестовый пример.
Да, принятие Вас добавило двойные угловые скобки сознательно, и Вы действительно имели в виду:
public void myMethod(string astring, int? anint)
anint
будет теперь иметь a HasValue
свойство.
Зависит от того, чего Вы хотите достигнуть. Если Вы хотите смочь отбросить anint
параметр, необходимо создать перегрузку:
public void myMethod(string astring, int anint)
{
}
public void myMethod(string astring)
{
myMethod(astring, 0); // or some other default value for anint
}
Можно теперь сделать:
myMethod("boo"); // equivalent to myMethod("boo", 0);
myMethod("boo", 12);
Если Вы хотите передать nullable интервал, ну, в общем, см. другие ответы.;)
В C# 2.0 можно сделать;
public void myMethod(string astring, int? anint)
{
//some code in which I may have an int to work with
//or I may not...
}
И назовите метод как
myMethod("Hello", 3);
myMethod("Hello", null);