]> rtime.felk.cvut.cz Git - frescor/frsh.git/blob - frsh_api/tests/dummy_spare_capacity.c
test: Convert spare capacity test to wvtest
[frescor/frsh.git] / frsh_api / tests / dummy_spare_capacity.c
1 #include <frsh.h>
2 #include <error.h>
3 #include <signal.h>
4 #include <getopt.h>
5 #include <ul_logreg.h>
6 #include <res_dummy.h>
7 #include <semaphore.h>
8 #include <wvtest.h>
9
10 /* static struct option long_opts[] = { */
11 /*     { "loglevel", 1, 0, 'l' }, */
12 /*     { 0, 0, 0, 0} */
13 /* }; */
14
15 /* static void */
16 /* usage(void) */
17 /* { */
18 /*      printf("usage: cpu_spare_capacity [ options ]\n"); */
19 /*      printf("  -l, --loglevel <number>|<domain>=<number>,...\n"); */
20 /* } */
21
22
23 #define MSEC(x) { x/1000, (x%1000) * 1000000 }
24 frsh_utilization_set_t utilization_set = {
25         .size = 2,
26         .utilizations = {
27                 { .budget = MSEC(20),  .period = MSEC(100),  .deadline = MSEC(100) },
28                 { .budget = MSEC(50),  .period = MSEC(100),  .deadline = MSEC(100) },
29         },
30 };
31
32 WVTEST_MAIN("spare capacity")
33 {
34         frsh_vres_id_t vres;
35         frsh_contract_t contract;
36         frsh_rel_time_t zero = fosa_msec_to_rel_time(0);
37         int ret;
38 /*      char opt; */
39
40 /*      while ((opt = getopt_long(argc, argv, "l:", &long_opts[0], NULL)) != EOF) { */
41 /*              switch (opt) { */
42 /*                      case 'l': */
43 /*                              ul_log_domain_arg2levels(optarg); */
44 /*                              break; */
45 /*                      case 'h': */
46 /*                      /\*default:*\/ */
47 /*                              usage(); */
48 /*                              exit(opt == 'h' ? 0 : 1); */
49 /*              } */
50 /*      } */
51
52         setenv("WVTEST_DIE_FAST", "", 1);
53         WVFRSH(frsh_init());
54         
55         /* Contract negotiation for CPU */
56         ret = WVFRSH(frsh_contract_init(&contract));
57                 
58         ret = WVFRSH(frsh_contract_set_basic_params(&contract,
59                                              &utilization_set.utilizations[0].budget,
60                                              &utilization_set.utilizations[0].period,
61                                              FRSH_WT_BOUNDED,
62                                                     FRSH_CT_REGULAR));
63
64         ret = WVFRSH(frsh_contract_set_resource_and_label(&contract ,
65                                                    DUMMY_RESOURCE_TYPE, DUMMY_RESOURCE_ID,
66                                                           "spare cap test"));
67
68         ret = WVFRSH(frsh_contract_set_reclamation_params(&contract,
69                                                    &zero,
70                                                    &utilization_set.utilizations[utilization_set.size-1].budget,
71                                                    &utilization_set.utilizations[utilization_set.size-1].period,
72                                                    FRSH_GR_DISCRETE,
73                                                    &utilization_set,
74                                                    0,
75                                                           0));
76
77         ret = WVFRSH(frsh_contract_negotiate(&contract, &vres));
78
79         ret = WVFRSH(frsh_contract_cancel(vres));
80         frsh_destroy();
81 }
82