Home | History | Annotate | Download | only in isc

Lines Matching refs:quota

30 #include <isc/quota.h>
38 isc_quota_t quota;
42 isc_quota_init(&quota, 100);
44 assert_int_equal(isc_quota_getmax(&quota), 100);
45 assert_int_equal(isc_quota_getsoft(&quota), 0);
47 isc_quota_max(&quota, 50);
48 isc_quota_soft(&quota, 30);
50 assert_int_equal(isc_quota_getmax(&quota), 50);
51 assert_int_equal(isc_quota_getsoft(&quota), 30);
53 assert_int_equal(isc_quota_getused(&quota), 0);
54 isc_quota_acquire(&quota);
55 assert_int_equal(isc_quota_getused(&quota), 1);
56 isc_quota_release(&quota);
57 assert_int_equal(isc_quota_getused(&quota), 0);
60 isc_quota_max(&quota, 0);
61 isc_quota_soft(&quota, 0);
63 isc_quota_destroy(&quota);
89 isc_quota_init(&quota, 100);
92 add_quota(&quota, ISC_R_SUCCESS, i + 1);
95 add_quota(&quota, ISC_R_QUOTA, 100);
97 assert_int_equal(isc_quota_getused(&quota), 100);
99 isc_quota_release(&quota);
101 add_quota(&quota, ISC_R_SUCCESS, 100);
102 add_quota(&quota, ISC_R_QUOTA, 100);
105 isc_quota_release(&quota);
106 assert_int_equal(isc_quota_getused(&quota), i - 1);
108 assert_int_equal(isc_quota_getused(&quota), 0);
109 isc_quota_destroy(&quota);
116 isc_quota_init(&quota, 100);
117 isc_quota_soft(&quota, 50);
120 add_quota(&quota, ISC_R_SUCCESS, i + 1);
123 add_quota(&quota, ISC_R_SOFTQUOTA, i + 1);
126 add_quota(&quota, ISC_R_QUOTA, 100);
129 isc_quota_release(&quota);
130 assert_int_equal(isc_quota_getused(&quota), i);
132 assert_int_equal(isc_quota_getused(&quota), 0);
133 isc_quota_destroy(&quota);
142 /* Callback is not called if we get the quota directly */
154 isc_quota_release(&quota);
171 isc_quota_init(&quota, 20);
172 isc_quota_soft(&quota, 10);
176 result = isc_quota_acquire_cb(&quota, &cbs[i], callback,
179 assert_int_equal(isc_quota_getused(&quota), i + 1);
183 result = isc_quota_acquire_cb(&quota, &cbs[i], callback,
186 assert_int_equal(isc_quota_getused(&quota), i + 1);
191 result = isc_quota_acquire_cb(&quota, &cbs[i], callback,
194 assert_int_equal(isc_quota_getused(&quota), 20);
199 isc_quota_release(&quota);
200 assert_int_equal(isc_quota_getused(&quota), 20);
204 isc_quota_release(&quota);
209 isc_quota_release(&quota);
213 isc_quota_release(&quota);
214 assert_int_equal(isc_quota_getused(&quota), 19 - i);
218 assert_int_equal(isc_quota_getused(&quota), 0);
219 isc_quota_destroy(&quota);
223 * Multithreaded quota callback test:
224 * - quota set to 100
251 isc_thread_create(quota_release, &quota, &g_threads[tnum]);
260 &quota, &qti->callbacks[i], quota_callback, qti);
264 isc_thread_create(quota_release, &quota,
275 isc_quota_init(&quota, 100);
296 /* Total quota gained must be 10 threads * 100 tries */
306 isc_quota_destroy(&quota);