Example #1
0
def border_radius():
    num = Random.range(1, 4)
    values = [length_percentage() for _ in range(num)]
    if Random.bool():
        values.append("/")
        num = Random.range(1, 4)
        values.extend([length_percentage() for _ in range(num)])
    return cat(values)
Example #2
0
def arc_curve():
    cmd = Random.choice(["A", "a"])
    rx = Random.integer()
    ry = Random.integer()
    _angle = Random.integer()
    large_arc_flag = Random.range(0, 1)
    sweep_flag = Random.range(0, 1)
    dx = Random.integer()
    dy = Random.integer()
    return "{} {} {} {} {} {} {},{}".format(cmd, rx, ry, _angle,
                                            large_arc_flag, sweep_flag, dx, dy)
Example #3
0
 def generate_attributes(self, context):
     avail_attr_count = get_attribute_count(self.name)
     if avail_attr_count >= 20:
         total_count = TreeConfig.max_attribute_count
     elif avail_attr_count >= 10:
         total_count = Random.range(5, avail_attr_count)
     elif avail_attr_count >= 1:
         total_count = Random.range(1, avail_attr_count)
     else:
         total_count = 0
     for _ in range(total_count):
         self.append_attribute(context)
Example #4
0
    def generate_css_rules(self, context):
        for _ in range(CSSConfig.max_css_count):
            self.append_css_style_rule(context)

        for rule in self.css_style_rules:
            for _ in range(
                    Random.range(0, CSSConfig.max_css_selector_count - 1)):
                rule.append_selector(context)
            for _ in range(CSSConfig.max_css_decl_count - 1):
                rule.append_decl(context)

        for rule in self.css_keyframes_rules:
            for _ in range(Random.range(1, CSSConfig.max_css_keyframe_count)):
                rule.append_keyframe_rule(context)
Example #5
0
def list_size():
    if Random.bool():
        return Random.range(1, 5)
    else:
        # Special sizes that may trigger realloc
        # See ./animations/crash-when-animation-is-running-while-getting-value.html
        return Random.choice([7, 8, 9, 15, 16, 17, 31, 32, 33, 63, 64, 65])
Example #6
0
 def generate_one(self):
     document = Document(Random.range(TreeConfig.min_element_count, TreeConfig.max_element_count))
     document.generate_nodes()
     document.generate_attributes()
     document.generate_css_rules()
     document.generate_js_functions()
     return document
Example #7
0
def polygon():
    values = []
    if Random.bool():
        values.append(fill_rule())
    num = Random.range(2, 5)
    for _ in range(num):
        values.append("{} {}".format(length_percentage(), length_percentage()))
    return "polygon({})".format(seq(values))
Example #8
0
def tab_index():
    c = Random.selector(3)
    if c == 0:
        return "-1"
    elif c == 1:
        return str(Random.range(0, 5))
    else:
        return Random.integer()
Example #9
0
def coords():
    c = Random.selector(3)
    if c == 0:
        n = 4
    elif c == 1:
        n = 3
    else:
        n = Random.range(3, 5) * 2
    return seq([Random.integer() for _ in range(n)])
Example #10
0
def font_feature_settings():
    def single():
        values = [
            "'{}'".format(
                Random.choice([
                    "smcp", "c2sc", "zero", "hist", "liga", "tnum", "frac",
                    "swsh", "ss07", "dlig", "vert", "hwid", "twid", "qwid",
                    "kern", "onum"
                ]))
        ]
        if Random.bool():
            if Random.bool():
                values.append(Random.choice(["on", "off"]))
            else:
                values.append(Random.integer())
        return cat(values)

    num = Random.range(1, 2)
    return seq([single() for _ in range(num)])
Example #11
0
 def generate(self, _):
     num = Random.range(1, 2)
     self.value = cat([Random.number() for _ in range(num)])
Example #12
0
 def generate(self, _):
     num = Random.range(1, 2)
     self.value = cat([dv.length_percentage() for _ in range(num)])
Example #13
0
 def generate(self, _):
     num = Random.range(1, 5)
     self.value = cat([dv.length() for _ in range(num)])
Example #14
0
 def generate(self, _):
     num = Random.range(1, 4)
     self.value = cat([Random.float01() for _ in range(num)])
Example #15
0
def clock_in_ms():
    return str(Random.range(0, 3) * 100)
Example #16
0
 def generate(self, _):
     self.value = "H{}".format(Random.range(1, 6))
Example #17
0
def translate():
    num = Random.range(1, 2)
    value = seq([length_percentage() for _ in range(num)])
    return "translate({})".format(value)
Example #18
0
 def generate(self, _):
     self.value = Random.range(0, 16)
Example #19
0
def percentage():
    if Random.bool():
        return Random.choice(["0%", "100%"])
    else:
        return "{}%".format(Random.range(0, 100))
Example #20
0
def inset():
    num = Random.range(1, 4)
    values = [length_percentage() for _ in range(num)]
    if Random.bool():
        values.append("round {}".format(border_radius()))
    return "inset({})".format(cat(values))
Example #21
0
def scale():
    num = Random.range(1, 2)
    value = seq([Random.number() for _ in range(num)])
    return "scale({})".format(value)
Example #22
0
 def generate(self, _):
     num = Random.range(1, 2)
     self.value = cat([svg_transform() for _ in range(num)])
Example #23
0
 def generate(self, _):
     order = Random.range(0, 2)
     self.value = cat([Random.integer() for _ in range(order**2)])
Example #24
0
def index():
    if Random.selector(5) == 0:
        return Random.integer()
    else:
        return str(Random.range(0, 8))
Example #25
0
    def generate(self, _):
        def single():
            return "{}x{}".format(Random.integer(), Random.integer())

        num = Random.range(1, 2)
        self.value = cat([single() for _ in range(num)])
Example #26
0
 def generate(self, _):
     self.value = str(Random.range(0, 2))
Example #27
0
 def generate(self, _):
     self.value = Random.range(self.low, self.high)
Example #28
0
def skew():
    num = Random.range(1, 2)
    value = seq([angle() for _ in range(num)])
    return "skew({})".format(value)