chromium/chrome/test/fuzzing/kombucha_in_process_fuzzer.proto

// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

syntax = "proto3";
package test.fuzzing.ui_fuzzing;

// TODO(xrosado) Actions are not repeated to avoid empty action cases
// Make actions be repeatable
message FuzzCase {
  Action action = 1;
}

message Action {
  optional Parallelism parallel_flag = 1;  // Decides if we use InParallel/AnyOf
  repeated Step steps = 2;
}

message Step {
  oneof step_choice {
    ClickAt click_at = 1;
    DragFromTo drag_from_to = 2;
    SendAccelerator send_accelerator = 3;
    ClickTab click_tab = 4;
    ClickTabGroupHeader click_tab_group_header = 5;
    SaveTabGroup save_tab_group = 6;
    AddNewTabGroup add_new_tab_group = 7;
  }

  // Handles DragMouseTo events whenever it generates an empty source
  message DragFromTo {
    uint32 source = 1;
    uint32 dest = 2;
  }

  message ClickAt {
    uint32 target = 1;
    bool right_click = 2;
  }

  message SendAccelerator {
    Accelerator target = 1;
  }

  message ClickTab {
    uint32 target = 1;
    bool right_click = 2;
  }

  message ClickTabGroupHeader {
    // Targets are indices of tab groups
    uint32 target = 1;
    bool right_click = 2;
  }

  message SaveTabGroup {
    uint32 target = 1;
    bool close_editor = 2;
  }

  message AddNewTabGroup {
    uint32 target = 1;
  }
}

enum Parallelism {
  IN_PARALLEL = 0;
  ANY_OF = 1;
}

enum Accelerator {
  IDC_UNKNOWN = 0;
  reserved 1 to 29999;

  IDC_BACK_ = 33000;
  IDC_FORWARD_ = 33001;
  IDC_RELOAD_ = 33002;
  IDC_HOME_ = 33003;
  IDC_OPEN_CURRENT_URL_ = 33004;
  IDC_STOP_ = 33006;
  IDC_RELOAD_BYPASSING_CACHE_ = 33007;
  IDC_RELOAD_CLEARING_CACHE_ = 33009;
  IDC_NEW_WINDOW_ = 34000;
  IDC_NEW_INCOGNITO_WINDOW_ = 34001;
  IDC_CLOSE_WINDOW_ = 34012;
  IDC_ALWAYS_ON_TOP_ = 34013;
  IDC_NEW_TAB_ = 34014;
  IDC_CLOSE_TAB_ = 34015;
  IDC_SELECT_NEXT_TAB_ = 34016;
  IDC_SELECT_PREVIOUS_TAB_ = 34017;
  IDC_SELECT_LAST_TAB_ = 34026;
  IDC_DUPLICATE_TAB_ = 34027;
  IDC_RESTORE_TAB_ = 34028;
  IDC_SHOW_AS_TAB_ = 34029;
  IDC_FULLSCREEN_ = 34030;
  IDC_EXIT_ = 34031;
  IDC_MOVE_TAB_NEXT_ = 34032;
  IDC_MOVE_TAB_PREVIOUS_ = 34033;
  IDC_SEARCH_ = 34035;
  IDC_WINDOW_MENU_ = 34045;
  IDC_MINIMIZE_WINDOW_ = 34046;
  IDC_MAXIMIZE_WINDOW_ = 34047;
  IDC_ALL_WINDOWS_FRONT_ = 34048;
  IDC_NAME_WINDOW_ = 34049;
  IDC_QRCODE_GENERATOR_ = 35021;
  IDC_OFFERS_AND_REWARDS_FOR_PAGE_ = 35026;
  IDC_SHOW_PAYMENT_METHODS_ = 35042;
  IDC_SHOW_PASSWORD_MANAGER_ = 35041;
  IDC_SHOW_ADDRESSES_ = 35043;
  IDC_WINDOW_PIN_TAB_ = 35013;
  IDC_BOOKMARK_THIS_TAB_ = 35000;
  IDC_BOOKMARK_ALL_TABS_ = 35001;
  IDC_BOOKMARK_BAR_OPEN_ALL_ = 51000;
  IDC_BOOKMARK_BAR_OPEN_ALL_NEW_TAB_GROUP_ = 51004;
  IDC_BOOKMARK_BAR_UNDO_ = 51008;
  IDC_BOOKMARK_BAR_REDO_ = 51009;
  IDC_BOOKMARK_BAR_ADD_NEW_BOOKMARK_ = 51010;
  IDC_BOOKMARK_BAR_ADD_TO_BOOKMARKS_BAR_ = 51019;
  IDC_BOOKMARK_BAR_REMOVE_FROM_BOOKMARKS_BAR_ = 51020;
  IDC_DEBUG_PRINT_VIEW_TREE_ = 51511;
  IDC_DEBUG_PRINT_VIEW_TREE_DETAILS_ = 52512;
}