def test_safe_post(self):
        with patch("requests.post") as m:
            m.return_value = MagicMock()
            m.return_value.text = "{}"
            assert safe_post("test") == {}

            m.side_effect = foo
            assert safe_post("test") == {}
Пример #2
0
def classify1(host, cookies=None, proxies=None):
    dataset = make_classification()
    competition = CompetitionSpec(
        title="Classify this dataset",
        type=CompetitionType.CLASSIFY,
        expiration=datetime.now() + timedelta(minutes=1),
        prize=1.0,
        dataset=pandas.DataFrame(dataset[0]),
        metric=CompetitionMetric.LOGLOSS,
        answer=pandas.DataFrame(dataset[1]),
    )
    resp = safe_post(
        construct_path(host, "api/v1/competition"),
        data=ujson.dumps({"spec": competition.to_dict()}),
        cookies=cookies,
        proxies=proxies,
    )
    return resp
Пример #3
0
def predictCorporateBonds(host, cookies=None, proxies=None):
    competition = CompetitionSpec(
        title="Predict corporate bond volume",
        type=CompetitionType.PREDICT,
        expiration=datetime.now() + timedelta(minutes=1),
        prize=1.0,
        dataset="http://bonds.paine.nyc",
        dataset_type=DatasetFormat.JSON,
        metric=CompetitionMetric.ABSDIFF,
        dataset_key="Name",
        targets={"ABC Corp": ["Price"]},
    )
    resp = safe_post(
        construct_path(host, "api/v1/competition"),
        data=ujson.dumps({"spec": competition.to_dict()}),
        cookies=cookies,
        proxies=proxies,
    )
    return resp
Пример #4
0
def predict2(host, cookies=None, proxies=None):
    dataset = cfdg.lines()
    competition = CompetitionSpec(
        title="Predict future value",
        type=CompetitionType.PREDICT,
        expiration=datetime.now() + timedelta(minutes=1),
        prize=1.0,
        dataset=dataset.iloc[:-1],
        metric=CompetitionMetric.ABSDIFF,
        answer=dataset.iloc[-1:],
        targets=dataset.columns,
        when=datetime.utcfromtimestamp(
            dataset[-1:].index.values[0].astype(datetime) / 1000000000),
    )
    resp = safe_post(
        construct_path(host, "api/v1/competition"),
        data=ujson.dumps({"spec": competition.to_dict()}),
        cookies=cookies,
        proxies=proxies,
    )
    return resp
Пример #5
0
def predictCitibike(host, cookies=None, proxies=None):
    exp = datetime.now() + timedelta(minutes=2)
    competition = CompetitionSpec(
        title="Predict citibike volume",
        type=CompetitionType.PREDICT,
        when=exp,
        prize=1.0,
        dataset="https://feeds.citibikenyc.com/stations/stations.json",
        dataset_type=DatasetFormat.JSON,
        dataset_key="id",
        dataset_kwargs={"record_column": "stationBeanList"},
        metric=CompetitionMetric.ABSDIFF,
        targets=["availableBikes", "availableDocks"],
        expiration=exp,
    )
    resp = safe_post(
        construct_path(host, "api/v1/competition"),
        data=ujson.dumps({"spec": competition.to_dict()}),
        cookies=cookies,
        proxies=proxies,
    )
    return resp