def generate_examples(*args, **kwargs): kwargs.update({ "num_examples": kwargs.get("num_examples", 10), "timeout": kwargs.get("timeout", 10), "min_bound": kwargs.get("min_bound", 0), "max_bound": kwargs.get("max_bound", 10), "min_variance": kwargs.get("min_variance", 0.0), "maxv": kwargs.get("maxv", 10), "max_io_len": kwargs.get("max_io_len", 10), }) language = get_extended_dsl(kwargs["max_bound"]) return generate_interesting(language, *args, **kwargs)
def generate_examples(*args, **kwargs): """ Run IO generation with defaults set by CLI arguments. """ cli_args = kwargs.pop("cli_args") kwargs.update( { "num_examples": kwargs.get("num_examples", cli_args.num_examples), "timeout": kwargs.get("timeout", cli_args.timeout), "min_bound": kwargs.get("min_bound", cli_args.min_bound), "max_bound": kwargs.get("max_bound", cli_args.max_bound), "min_variance": kwargs.get("min_variance", cli_args.min_variance), "maxv": kwargs.get("maxv", cli_args.maxv), "max_io_len": kwargs.get("max_io_len", cli_args.max_io_len), } ) language = kwargs.get("language", cli_args.language(kwargs)) return generate_interesting(language, *args, **kwargs)
def test_linq_sum_top_index_sorted(self): max_bound = 512 min_bound = None language, _ = get_linq_dsl(max_bound=max_bound, min_bound=min_bound) source = "a <- int | b <- [int] | c <- SORT b | d <- TAKE a c | e <- SUM d" d = generate_interesting( language, source, num_examples=10, timeout=10, min_bound=min_bound, max_bound=max_bound, min_variance=3.5, maxv=10, max_io_len=10, ) program = d["program"] verify_types(d["io_pairs"], sig=([int, [int]], int)) test_io(program, ((2, [3, 5, 4, 7, 5]), 7)) self.assertEqual(program.bounds, [(0, 10), (-50, 51)])