Esempio n. 1
0
  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")
Esempio n. 2
0
  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)
Esempio n. 3
0
  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")
Esempio n. 4
0
    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)
Esempio n. 5
0
  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")
Esempio n. 6
0
    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")