| 442 | } |
| 443 | |
| 444 | func TestHandleAction_UnknownAction(t *testing.T) { |
| 445 | t.Parallel() |
| 446 | |
| 447 | logger := slogtest.Make(t, nil) |
| 448 | fake := &fakeDesktop{ |
| 449 | startCfg: agentdesktop.DisplayConfig{Width: 1920, Height: 1080}, |
| 450 | } |
| 451 | api := agentdesktop.NewAPI(logger, fake, nil) |
| 452 | defer api.Close() |
| 453 | |
| 454 | body := agentdesktop.DesktopAction{Action: "explode"} |
| 455 | b, err := json.Marshal(body) |
| 456 | require.NoError(t, err) |
| 457 | |
| 458 | rr := httptest.NewRecorder() |
| 459 | req := httptest.NewRequest(http.MethodPost, "/action", bytes.NewReader(b)) |
| 460 | req.Header.Set("Content-Type", "application/json") |
| 461 | |
| 462 | handler := api.Routes() |
| 463 | handler.ServeHTTP(rr, req) |
| 464 | |
| 465 | assert.Equal(t, http.StatusBadRequest, rr.Code) |
| 466 | } |
| 467 | |
| 468 | func TestHandleAction_KeyAction(t *testing.T) { |
| 469 | t.Parallel() |