private void GivenTheConfigReturnsError() { var response = new Responses.ErrorResponse <IInternalConfiguration>(new FakeError()); _configRepo .Setup(x => x.Get()).Returns(response); }
private void GivenTheConfigReturnsError() { var response = new Responses.ErrorResponse <IOcelotConfiguration>(new FakeError()); _provider .Setup(x => x.Get()).ReturnsAsync(response); }
public void should_return_error_when_cannot_get_config() { var expected = new Responses.ErrorResponse <FileConfiguration>(It.IsAny <Error>()); this.Given(x => x.GivenTheGetConfigurationReturns(expected)) .When(x => x.WhenIGetTheFileConfiguration()) .Then(x => x.TheTheGetFileConfigurationIsCalledCorrectly()) .And(x => x.ThenTheResponseIs <BadRequestObjectResult>()) .BDDfy(); }
public bool CheckLocation(NameValueCollection args, out Responses.ErrorResponse error, out double lat, out double lng) { error = new Responses.ErrorResponse("invalid location info"); lat = 0d; lng = 0d; String latitude = args["lat"] ?? ""; String longitude = args["lng"] ?? ""; String timestampStr = args["time"]; int timestamp; if (!int.TryParse(timestampStr, out timestamp)) { return false; } String locationHash = (args["hash"] ?? "").ToLower(); if (!Account.IsPasswordHashValid(locationHash)) { return false; } var bytes = new byte[latitude.Length + longitude.Length + timestampStr.Length + _sSalt.Length]; Array.Copy(_sSalt, 0, bytes, 0, 2); UnicodeEncoding.UTF8.GetBytes(latitude, 0, latitude.Length, bytes, 2); Array.Copy(_sSalt, 2, bytes, 2 + latitude.Length, 2); UnicodeEncoding.UTF8.GetBytes(longitude, 0, longitude.Length, bytes, 4 + latitude.Length); Array.Copy(_sSalt, 4, bytes, 4 + latitude.Length + longitude.Length, 1); UnicodeEncoding.UTF8.GetBytes(timestampStr, 0, timestampStr.Length, bytes, 5 + latitude.Length + longitude.Length); Array.Copy(_sSalt, 5, bytes, 5 + latitude.Length + longitude.Length + timestampStr.Length, 2); var md5 = new MD5CryptoServiceProvider(); var hash = String.Join("", md5.ComputeHash(bytes).Select(x => x.ToString("X2"))).ToLower(); if (hash != locationHash) { return false; } return double.TryParse(latitude, out lat) && double.TryParse(longitude, out lng); }
public static Responses.JsonResponse EXCEPCION(Responses.ErrorResponse pError) { return(new Responses.JsonResponse { Error = pError }); }
public bool CheckAuth(NameValueCollection args, out Account account, out Responses.ErrorResponse error, bool acceptSession = true, bool onlyValidated = true) { error = new Responses.ErrorResponse("auth error"); account = null; String sessionCode = args["session"]; String passwordHash = args["phash"]; String username = null; int userid = -1; if (args["uname"] != null) { username = args["uname"]; if (username.Length == 0) { error = new Responses.ErrorResponse("auth error: no username given"); return false; } if (!Account.IsUsernameValid(username)) { error = new Responses.ErrorResponse("auth error: invalid credentials"); return false; } } else if (args["uid"] != null) { if (!Int32.TryParse(args["uid"], out userid)) { error = new Responses.ErrorResponse("auth error: invalid userid"); return false; } } else { error = new Responses.ErrorResponse("auth error: no username or user id given"); return false; } if (acceptSession && sessionCode != null && sessionCode.Length > 0) { if (!AuthSession.IsCodeValid(sessionCode)) { error = new Responses.ErrorResponse("auth error: invalid session code"); return false; } } else if (passwordHash != null && passwordHash.Length > 0) { if (!Account.IsPasswordHashValid(passwordHash)) { error = new Responses.ErrorResponse("auth error: invalid credentials"); return false; } } else { if (acceptSession) error = new Responses.ErrorResponse("auth error: no password or session code given"); else error = new Responses.ErrorResponse("auth error: no password given"); return false; } if (username != null) { account = DatabaseManager.SelectFirst<Account>(x => x.Username == username); } else { account = DatabaseManager.SelectFirst<Account>(x => x.AccountID == userid); } if (account == null) { error = new Responses.ErrorResponse("auth error: incorrect credentials"); return false; } if (passwordHash != null && passwordHash.Length != 0) { if (!passwordHash.EqualsCharArray(account.PasswordHash)) { error = new Responses.ErrorResponse("auth error: incorrect credentials"); return false; } } else { AuthSession sess = AuthSession.Get(account); if (sess == null || !sessionCode.EqualsCharArray(sess.SessionCode)) { error = new Responses.ErrorResponse("auth error: incorrect session code"); return false; } if (sess.IsExpired) { error = new Responses.ErrorResponse("auth error: session expired"); return false; } sess.Refresh(); } if (onlyValidated && account.Rank < Rank.Verified) { error = new Responses.ErrorResponse("auth error: account not activated"); return false; } return true; }