// while ((opt = getopt_long(argc, argv, "l:", &long_opts[0], NULL)) != EOF) {
// switch (opt) {
// case 'l':
- ul_log_domain_arg2levels("forb_proto_inet=6");
// break;
// case 'h':
// /\*default:*\/
// }
// }
+ setenv("WVTEST_DIE_FAST", "", 1);
ret = WVFRSH(frsh_init());
- if (ret) exit(1);
/* Negotiate N contracts */
for (i=0; i<N; i++) {
ret = WVFRSH(frsh_contract_init(&contract[i]));
- if (ret) exit(1);
ret = WVFRSH(frsh_contract_set_resource_and_label(
&contract[i],
DUMMY_RESOURCE_TYPE, DUMMY_RESOURCE_ID,
NULL));
- if (ret) exit(1);
budget = fosa_msec_to_rel_time(b[i]);
period = fosa_msec_to_rel_time(100);
&period,
FRSH_WT_BOUNDED,
FRSH_CT_REGULAR));
- if (ret) exit(1);
ret = WVFRSH(frsh_contract_set_timing_reqs(&contract[i],
false, &deadline));
- if (ret) exit(1);
ret = WVFRSH(frsh_contract_negotiate(&contract[i], &vres[i]));
- if (ret) exit(1);
}
}
WVTEST_MAIN("renegotiation")
{
- for (i=0; i<2 /*N*/; i++) {
- // FIXME: There is a bug on the test - the 3rd renegotiation fails
+ for (i=0; i<2; i++) {
budget = fosa_msec_to_rel_time(2*b[i]);
period = fosa_msec_to_rel_time(110);
ret = WVFRSH(frsh_contract_set_basic_params(&contract[i],
&period,
FRSH_WT_BOUNDED,
FRSH_CT_REGULAR));
- if (ret) exit(1);
ret = WVFRSH(frsh_contract_renegotiate_sync(&contract[i], vres[i]));
- if (ret) exit(1);
}
+
+ budget = fosa_msec_to_rel_time(2*b[2]);
+ period = fosa_msec_to_rel_time(110);
+ ret = WVFRSH(frsh_contract_set_basic_params(&contract[2],
+ &budget,
+ &period,
+ FRSH_WT_BOUNDED,
+ FRSH_CT_REGULAR));
+
+ WVPASS(frsh_contract_renegotiate_sync(&contract[2], vres[2]) == FRSH_ERR_CONTRACT_REJECTED);
}
WVTEST_MAIN("cancelation")
/* Cancel N contracts */
for (i=0; i<N; i++) {
ret = WVFRSH(frsh_contract_cancel(vres[i]));
- if (ret) exit(1);
}
frsh_destroy();