private ApiKeyManagement Resolve(Mock <IDatabaseContext> fakeContext, int currentUser) { var person = new Person { Id = currentUser, }; var defaultGroup = new AccountGroup { Id = 1 }; var join = person.AddToGroup(defaultGroup, 1); join.PermissionLevel = PermissionLevel.Admin; //defaults to this fakeContext.Setup(x => x.List <Person>()).Returns(new[] { person }.AsQueryable()); var result = new ApiKeyManagement(fakeContext.Object, currentUser, 1); return(result); }
public ActionResult Create() { ViewBag.Message = "API Key Create"; ApiKeyManagement request = new ApiKeyManagement(ApiKey); request.PrepareCreateRequest(); return(SendRequest(request)); }
public ActionResult Select() { ViewBag.Message = "API Key Query"; ApiKeyManagement request = new ApiKeyManagement(ApiKey) { ExternalClientID = ExternalClientID }; request.PrepareSelectRequest(); return(SendRequest(request)); }
public void CreateKey_NormalUser_Fails() { Mock <IDatabaseContext> fakeContext = new Mock <IDatabaseContext>(); var person = new Person { Id = 1, }; var accountGroup = new AccountGroup { Id = 1, }; var join = person.AddToGroup(accountGroup, 2); join.PermissionLevel = PermissionLevel.Normal; // the really important bit fakeContext.Setup(x => x.List <Person>()).Returns(new[] { person }.AsQueryable()); var mng = new ApiKeyManagement(fakeContext.Object, 1, 1); mng.CreateKey("Test"); }
private ActionResult SendRequest(ApiKeyManagement request, string sharedKey) { string response; bool success = request.SendRequest(sharedKey, out response); SuccessModel model = new SuccessModel(); dynamic result = JsonConvert.DeserializeObject(response); if (success) { model.UnencryptedData = JsonConvert.SerializeObject(result, Formatting.Indented); } else { TempData.Add("error", JsonConvert.SerializeObject(result, Formatting.Indented)); } return(View(model)); }
public ActionResult Update() { ViewBag.Message = "API Key Update (set last key to INACTIVE)"; ApiKeyManagement request = new ApiKeyManagement(ApiKey) { ExternalClientID = ExternalClientID }; request.PrepareSelectRequest(); string response; if (request.SendRequest(SharedKey, out response)) { dynamic data = JsonConvert.DeserializeObject(response); if (data != null && data.apiKeys != null && data.apiKeys.Count > 1) { int index = data.apiKeys.Count - 1; string apiKey = data.apiKeys[index].key; request.ApiKeyToUpdate = apiKey; request.Status = VisaHelper.Options.ApiKeyStatus.INACTIVE; request.PrepareUpdateRequest(); return(SendRequest(request)); } else { TempData.Add("error", "Not enough keys to update, you must have at least 2 keys."); } } else { TempData.Add("error", string.Format("Could not query keys:\r\n{0}", response)); } return(View()); }
private ActionResult SendRequest(ApiKeyManagement request) { return(SendRequest(request, SharedKey)); }