Exemplo n.º 1
0
 def __init__(self,
              starting_elements,
              total_operations,
              browser,
              seed,
              canvas_size,
              file_type='html'):
     self._starting_elements = int(starting_elements)
     self._total_operations = int(total_operations)
     self._browser = browser
     seed = int(seed)
     #  self._html_fuzzer = HtmlFuzzer(self._starting_elements, 3, seed)
     self._html_fuzzer = Html5Fuzzer(int(seed), self._starting_elements, 10,
                                     5, file_type)
     self._css_fuzzer = CssFuzzer(seed)
     self._canvas_fuzzer = CanvasFuzzer(int(canvas_size))
     if seed == 0:
         random.seed()
     else:
         random.seed(seed)
     self._file_type = file_type
     self._function_count = 0
     self._operations_count = 0
     self._js_elements = {}
     """:type dict(JsElement)"""
     self._occurring_events = {}
     for event in DomObjectTypes.DOM_EVENTS:
         self._occurring_events[event] = 0
     self._html_page = None
     self._calls_in_startup = []
     # arrays dictionary layout: {'array_id': [JsObject, .... JsObject], ...}
     self._arrays = {}
Exemplo n.º 2
0
 def __init__(self, seed, starting_elements, html_depth, html_max_attr, canvas_size, js_block_size, function_count, file_type, media_folder="NONE"):
     self._logger = logging.getLogger(__name__)
     self._html_fuzzer = Html5Fuzzer(int(seed), int(starting_elements), int(html_depth), int(html_max_attr), file_type)
     self._canvas_fuzzer = CanvasFuzzer(int(canvas_size))
     self._css_fuzzer = CssFuzzer(int(seed))
     random.seed(int(seed)) if int(seed) != 0 else random.seed()
     self._size = int(js_block_size)
     self._function_count = int(function_count)
     self._file_type = file_type
     self._js_objects = {}
     self._media_folder = media_folder
     self.__init_js_object_dict()
     self._js_default_functions = []
     self._js_event_listener = []
     self._js_array_functions = []
     max_funcs = min((self._size / 10), 20)
     for i in range(max_funcs):
         self._js_array_functions.append("array_func_" + str(i))
         self._js_event_listener.append("event_handler_" + str(i))
     self._html_page = HtmlPage()