| 627 | } |
| 628 | |
| 629 | func TestHandleAction_HoldKeyMissingText(t *testing.T) { |
| 630 | t.Parallel() |
| 631 | |
| 632 | logger := slogtest.Make(t, nil) |
| 633 | fake := &fakeDesktop{ |
| 634 | startCfg: agentdesktop.DisplayConfig{Width: 1920, Height: 1080}, |
| 635 | } |
| 636 | api := agentdesktop.NewAPI(logger, fake, nil) |
| 637 | defer api.Close() |
| 638 | |
| 639 | body := agentdesktop.DesktopAction{Action: "hold_key"} |
| 640 | b, err := json.Marshal(body) |
| 641 | require.NoError(t, err) |
| 642 | |
| 643 | rr := httptest.NewRecorder() |
| 644 | req := httptest.NewRequest(http.MethodPost, "/action", bytes.NewReader(b)) |
| 645 | req.Header.Set("Content-Type", "application/json") |
| 646 | |
| 647 | handler := api.Routes() |
| 648 | handler.ServeHTTP(rr, req) |
| 649 | |
| 650 | assert.Equal(t, http.StatusBadRequest, rr.Code) |
| 651 | |
| 652 | var resp codersdk.Response |
| 653 | err = json.NewDecoder(rr.Body).Decode(&resp) |
| 654 | require.NoError(t, err) |
| 655 | assert.Equal(t, "Missing \"text\" for hold_key action.", resp.Message) |
| 656 | } |
| 657 | |
| 658 | func TestHandleAction_ScrollDown(t *testing.T) { |
| 659 | t.Parallel() |