ray/test/test_functions.py

55 lines
1.1 KiB
Python
Raw Normal View History

import halo
import numpy as np
# Test simple functionality
2016-06-03 18:41:45 -07:00
@halo.remote([str], [str])
def print_string(string):
print "called print_string with", string
f = open("asdfasdf.txt", "w")
f.write("successfully called print_string with argument {}.".format(string))
return string
2016-06-03 18:41:45 -07:00
@halo.remote([int, int], [int, int])
def handle_int(a, b):
return a + 1, b + 1
# Test aliasing
2016-06-03 18:41:45 -07:00
@halo.remote([], [np.ndarray])
def test_alias_f():
return np.ones([3, 4, 5])
2016-06-03 18:41:45 -07:00
@halo.remote([], [np.ndarray])
def test_alias_g():
return test_alias_f()
2016-06-03 18:41:45 -07:00
@halo.remote([], [np.ndarray])
def test_alias_h():
return test_alias_g()
2016-05-22 10:05:14 -07:00
# Test timing
2016-06-03 18:41:45 -07:00
@halo.remote([], [])
2016-05-22 10:05:14 -07:00
def empty_function():
return ()
2016-06-03 18:41:45 -07:00
@halo.remote([], [int])
2016-05-22 10:05:14 -07:00
def trivial_function():
return 1
2016-06-03 00:10:17 -07:00
# Test keyword arguments
2016-06-03 18:41:45 -07:00
@halo.remote([int, str], [str])
2016-06-03 00:10:17 -07:00
def keyword_fct1(a, b="hello"):
return "{} {}".format(a, b)
2016-06-03 18:41:45 -07:00
@halo.remote([str, str], [str])
2016-06-03 00:10:17 -07:00
def keyword_fct2(a="hello", b="world"):
return "{} {}".format(a, b)
2016-06-03 18:41:45 -07:00
@halo.remote([int, int, str, str], [str])
2016-06-03 00:10:17 -07:00
def keyword_fct3(a, b, c="hello", d="world"):
return "{} {} {} {}".format(a, b, c, d)