नकली सेटअप वापसी खाली सूची

वोट
-1
public interface ISearchService
{
        Task<IEnumerable<ReferenceInfo>> SearchReferenceInfos(string keyword, string user);
}

जब एक इकाई परीक्षण बनाने के लिए, मैं Moq द्वारा इंटरफ़ेस नकली करने की कोशिश की

var mockSearchService = new Mock<ISearchService>();
mockSearchService.Setup(x => x.SearchReferenceInfos(It.IsAny<string>(), It.IsAny<string>()))
                 .ReturnsAsync( 
                    new List<ReferenceInfo>() { new ReferenceInfo() { //set properties } }
                    }.AsEnumerable());

और यह मेरे मॉडल में इंजेक्षन

var listReference = new ListReferencesViewModel(mockSearchService.Object);

फिर, अपने मॉडल में, मैं इस सेवा को कॉल

public class ListReferencesViewModel
{
   public ListReferencesViewModel(ISearchService searchService)
   {
       _searchService = searchService;
   }

   public async Task Method()
   {
       var task = _searchService.SearchReferenceInfos(xx, xx);                                      
       RefTrouve = task.ConfigureAwait(false).GetAwaiter().GetResult()?.ToArray();
   }

समस्या: RefTrouveहमेशा एक खाली है List। मुझे लगता है कि मैं सही रास्ते पर नहीं थे।

मैं पहले से ही के साथ की कोशिश की Returnभी, लेकिन यह खाली सूची भी देता है

19/09/2018 को 13:25
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


1 जवाब

वोट
0

ठीक है, आप अपने के बाद से नीचे करने के लिए बुला विधि बदलना चाहिए SearchReferenceInfosरिटर्नTask<T>

public async Task Method()
{
    var data = await _searchService.SearchReferenceInfos("xx", "xx");
}

इसके अलावा क्यों सेटअप परिवर्तन नहीं होने के लिए

mockSearchService.Setup(x => x.SearchReferenceInfos(It.IsAny<string>(), It.IsAny<string>()))
                 .Returns(Task.FromResult(new List<ReferenceInfo>() 
                                       { new ReferenceInfo() { //set properties } }));
19/09/2018 को 13:33
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more