2009-05-19 1 views
0

Использование Джош Flanagans StructureMap Automocking overview, я стараюсь мою руку на него, но может получить следующий код, чтобы вернуть объект категории Я назначенную:Функция затушил с StructureMap Automocking не возвращает значение

[Test] 
    public void Service_Should_Return_Category_From_ID() 
    { 
     // Arrange 
     var categoryToTest = new Category() 
      { 
       ID = 1, 
       Name = "Department 1", 
       Description = "Department 1 description" 
      }; 

      var mocks = new RhinoAutoMocker<CatalogueService>(); 
     mocks.Get<ICatalogueService>().Stub(c => c.GetCategory(1)).Return(categoryToTest); 

     // Act 
     var categoryResult = mocks.ClassUnderTest.GetCategory(1); 

     // Assert 
     Assert.IsNotNull(categoryResult); 
     Assert.AreEqual(categoryToTest.ID, categoryResult.ID); 
    } 

Что я Я делаю неправильно?

+0

Что именно вы здесь тестируете, что работает заглушка и насмешливый каркас? Мне кажется, что вы просто вызываете тот самый метод, который вы пропустили, и проверяя, что он возвращает ту же категорию, которую вы только что сказали, что он должен вернуться. Более правильным тестом было бы тестирование некоторой логики между ними, которая должна получить категорию и проверить, работает ли эта логика. Или ... что мне не хватает? Потому что я уверен, что используемые вами фреймворки имеют многочисленные модульные тесты, чтобы убедиться, что они действительно работают, поэтому вам не нужно дублировать это самостоятельно. –

ответ

0

Я добавлял возвращаемое значение к интерфейсу тестируемого класса, а не к вложенному интерфейсу.

Смежные вопросы