Test Failing could not determine why?? please help

48 views
Skip to first unread message

Bharat gogoi

unread,
Aug 12, 2015, 6:46:41 AM8/12/15
to Rhino.Mocks
The interfaces:- 

 public interface IHttp
    {
        Task<HttpResult> GetAsync(string url, string userAgent = null, string cookie = null);
        Task<HttpResult> PostAsync(string uri, Dictionary<string, string> formData, string userAgent = null, string cookie = null);
        List<MetaRefreshElement> GetMetaRefreshElements(List<string> list);
        bool StatusIsSuccess(iPassGISHttpStatusCode code);
        bool StatusIsRedirect(iPassGISHttpStatusCode code);
        bool StatusIsSuccessOrRedirect(iPassGISHttpStatusCode code);
        Task<HttpResult> GetOrPostAsync(iPassHttpMethodType method, string url, Dictionary<string, string> formData, string userAgent, string cookie = null);
    }

The called function :-

 public async Task<bool> AmIOnAsync()
        {
            try
            {
                
                string cookie = "";
                var httpResult = await _http.GetAsync(_url, _userAgent, cookie);

                if (_http.StatusIsSuccess(httpResult.StatusCode))
                {
                    
                    if (httpResult.Message.Contains(_amIONUrlEntry.ResponseSubstring))
                    {
                       
                        return true;
                    }
                }
              
            }
            catch (Exception exp)
            {
               
            }
            return false;
        }

The test function with stubbed method:-

 
    [TestFixture]
    public class AmIOnTest
    {
        private  MockRepository  mock = null;
        private AmIOnHelper AmIOnObject=null;
        private HttpResult _httpResult = null;
        private  AmIONUrlEntryType _amIONUrlEntry = null;
        private IHttp _http;
        string _url = "";
        string _userAgent = "";
        string cookie = "";
        [SetUp]
        public void setup()
        {
            _httpResult = new HttpResult(); 
            mock = new MockRepository();
            _http = mock.Stub<IHttp>();
            AmIOnObject = new AmIOnHelper(_http);
            _amIONUrlEntry = AmIONUrlEntryType.Default;
            _url = _amIONUrlEntry.Url;
            _userAgent = _amIONUrlEntry.UserAgent;
           


        }
        
        [Test]
        public async Task AmIOnSuccessReturnTrue()
        {
                    
                
                _httpResult.StatusCode = iPassGISHttpStatusCode.OK;
                _httpResult.Message = GisConsts.ResponseSubString;
                _http.Expect(x => x.GetAsync(_url, _userAgent, cookie)).Return(new Task<HttpResult>(()=>_httpResult));
                _http.Expect(x =>x.StatusIsSuccess(_httpResult.StatusCode)).Return(true);
           
                 bool result = await AmIOnObject.AmIOnAsync();
                  Assert.IsTrue(result, "AmIOn should Have succeed");
      }

     [TearDown]
        public void teardown()
        {
            _http = null;
            AmIOnObject = null;
            _httpResult = null;
        }




Reply all
Reply to author
Forward
0 new messages