def Run(self): with test_lib.FakeTime(42): with aff4.FACTORY.Create( aff4.ROOT_URN.Add("users").Add(self.token.username), aff4_type="GRRUser", mode="w", token=self.token) as user_fd: user_fd.Set(user_fd.Schema.GUI_SETTINGS, aff4_users.GUISettings(canary_mode=True)) self.Check("GET", "/api/users/me/settings")
def testSetsSettingsForUserCorrespondingToToken(self): settings = aff4_users.GUISettings(mode="ADVANCED", canary_mode=True, docs_location="REMOTE") user = user_plugin.ApiGrrUser(settings=settings) self.handler.Handle(user, token=access_control.ACLToken(username="******")) # Check that settings for user "foo" were applied. fd = aff4.FACTORY.Open("aff4:/users/foo", token=self.token) self.assertEqual(fd.Get(fd.Schema.GUI_SETTINGS), settings)
def RenderAjax(self, request, response): """Ajax hanlder for this renderer.""" settings = forms.SemanticProtoFormRenderer( proto_obj=aff4_users.GUISettings(), prefix="settings").ParseArgs(request) flow.GRRFlow.StartFlow( flow_name="UpdateSettingsFlow", args=settings, token=request.token) response = self.RenderFromTemplate( self.ajax_template, response, unique=self.unique) return self.CallJavascript(response, "RenderAjax")
def testSetsSettingsForUserCorrespondingToToken(self): settings = aff4_users.GUISettings(mode="ADVANCED", canary_mode=True, docs_location="REMOTE") # Render the request - effectively applying the settings for user "foo". result = self.handler.Render( settings, token=access_control.ACLToken(username="******")) self.assertEqual(result["status"], "OK") # Check that settings for user "foo" were applied. fd = aff4.FACTORY.Open("aff4:/users/foo", token=self.token) self.assertEqual(fd.Get(fd.Schema.GUI_SETTINGS), settings)
def testRendersSettingsForUserCorrespondingToToken(self): with aff4.FACTORY.Create( aff4.ROOT_URN.Add("users").Add("foo"), aff4_type="GRRUser", mode="w", token=self.token) as user_fd: user_fd.Set(user_fd.Schema.GUI_SETTINGS, aff4_users.GUISettings(mode="ADVANCED", canary_mode=True, docs_location="REMOTE")) result = self.renderer.Render(None, token=access_control.ACLToken(username="******")) self.assertEqual(result["value"]["mode"]["value"], "ADVANCED") self.assertEqual(result["value"]["canary_mode"]["value"], True) self.assertEqual(result["value"]["docs_location"]["value"], "REMOTE")
def testRendersSettingsForUserCorrespondingToToken(self): with aff4.FACTORY.Create(aff4.ROOT_URN.Add("users").Add("foo"), aff4_type=aff4_users.GRRUser.__name__, mode="w", token=self.token) as user_fd: user_fd.Set( user_fd.Schema.GUI_SETTINGS, aff4_users.GUISettings(mode="ADVANCED", canary_mode=True, docs_location="REMOTE")) result = self.handler.Handle( None, token=access_control.ACLToken(username="******")) self.assertEqual(result.settings.mode, "ADVANCED") self.assertEqual(result.settings.canary_mode, True) self.assertEqual(result.settings.docs_location, "REMOTE")