@@ -2132,10 +2132,14 @@ test_expect_success 'job-list parses flux-restart events' '
21322132# jobspec-update event testing
21332133#
21342134
2135+ # N.B. "defaultqueue" will habe jobs "submitted" to it, but updates
2136+ # make it appear that jobs were not submitted to it. "nosubmitqueue"
2137+ # will never have jobs submitted to it.
21352138test_expect_success ' configure update queues' '
21362139 flux config load <<-EOT &&
21372140 [queues.defaultqueue]
21382141 [queues.updatequeue]
2142+ [queues.nosubmitqueue]
21392143 EOT
21402144 flux queue start --all
21412145'
@@ -2173,9 +2177,15 @@ test_expect_success 'job-list returns expected jobspec changes' '
21732177 flux job list -s inactive | grep $(cat update1.id) | jq -e ".duration == 1000.0"
21742178'
21752179
2180+ #
2181+ # "nosubmitqueue" never has job submitted to it, make sure stats
2182+ # string is non-empty and filled with zeros.
2183+ #
21762184test_expect_success ' job stats lists jobs in correct state in each queue' '
21772185 defaultq=`flux job stats | jq ".queues[] | select( .name == \"defaultqueue\" )"` &&
21782186 updateq=`flux job stats | jq ".queues[] | select( .name == \"updatequeue\" )"` &&
2187+ nosubmitq=`flux job stats | jq ".queues[] | select( .name == \"nosubmitqueue\" )"` &&
2188+ test -n "$nosubmitq" &&
21792189 echo $defaultq | jq -e ".job_states.depend == 0" &&
21802190 echo $defaultq | jq -e ".job_states.priority == 0" &&
21812191 echo $defaultq | jq -e ".job_states.sched == 0" &&
@@ -2199,7 +2209,19 @@ test_expect_success 'job stats lists jobs in correct state in each queue' '
21992209 echo $updateq | jq -e ".failed == 0" &&
22002210 echo $updateq | jq -e ".canceled == 0" &&
22012211 echo $updateq | jq -e ".timeout == 0" &&
2202- echo $updateq | jq -e ".inactive_purged == 0"
2212+ echo $updateq | jq -e ".inactive_purged == 0" &&
2213+ echo $nosubmitq | jq -e ".job_states.depend == 0" &&
2214+ echo $nosubmitq | jq -e ".job_states.priority == 0" &&
2215+ echo $nosubmitq | jq -e ".job_states.sched == 0" &&
2216+ echo $nosubmitq | jq -e ".job_states.run == 0" &&
2217+ echo $nosubmitq | jq -e ".job_states.cleanup == 0" &&
2218+ echo $nosubmitq | jq -e ".job_states.inactive == 0" &&
2219+ echo $nosubmitq | jq -e ".job_states.total == 0" &&
2220+ echo $nosubmitq | jq -e ".successful == 0" &&
2221+ echo $nosubmitq | jq -e ".failed == 0" &&
2222+ echo $nosubmitq | jq -e ".canceled == 0" &&
2223+ echo $nosubmitq | jq -e ".timeout == 0" &&
2224+ echo $nosubmitq | jq -e ".inactive_purged == 0"
22032225'
22042226
22052227test_expect_success ' reload the job-list module' '
@@ -2215,12 +2237,26 @@ test_expect_success 'job-list returns expected jobspec changes after reload' '
22152237
22162238#
22172239# After reload, job-list will not have ever seen any jobs submitted to
2218- # "defaultqueue" therefore the stats object is empty.
2240+ # "defaultqueue", need to check that stats string is non-empty and all
2241+ # stats are 0.
22192242#
22202243test_expect_success ' job stats in each queue correct after reload' '
22212244 defaultq=`flux job stats | jq ".queues[] | select( .name == \"defaultqueue\" )"` &&
22222245 updateq=`flux job stats | jq ".queues[] | select( .name == \"updatequeue\" )"` &&
2223- test -z "$defaultq" &&
2246+ test -n "$defaultq" &&
2247+ test -n "$nosubmitq" &&
2248+ echo $defaultq | jq -e ".job_states.depend == 0" &&
2249+ echo $defaultq | jq -e ".job_states.priority == 0" &&
2250+ echo $defaultq | jq -e ".job_states.sched == 0" &&
2251+ echo $defaultq | jq -e ".job_states.run == 0" &&
2252+ echo $defaultq | jq -e ".job_states.cleanup == 0" &&
2253+ echo $defaultq | jq -e ".job_states.inactive == 0" &&
2254+ echo $defaultq | jq -e ".job_states.total == 0" &&
2255+ echo $defaultq | jq -e ".successful == 0" &&
2256+ echo $defaultq | jq -e ".failed == 0" &&
2257+ echo $defaultq | jq -e ".canceled == 0" &&
2258+ echo $defaultq | jq -e ".timeout == 0" &&
2259+ echo $defaultq | jq -e ".inactive_purged == 0" &&
22242260 echo $updateq | jq -e ".job_states.depend == 0" &&
22252261 echo $updateq | jq -e ".job_states.priority == 0" &&
22262262 echo $updateq | jq -e ".job_states.sched == 0" &&
@@ -2232,7 +2268,19 @@ test_expect_success 'job stats in each queue correct after reload' '
22322268 echo $updateq | jq -e ".failed == 0" &&
22332269 echo $updateq | jq -e ".canceled == 0" &&
22342270 echo $updateq | jq -e ".timeout == 0" &&
2235- echo $updateq | jq -e ".inactive_purged == 0"
2271+ echo $updateq | jq -e ".inactive_purged == 0" &&
2272+ echo $nosubmitq | jq -e ".job_states.depend == 0" &&
2273+ echo $nosubmitq | jq -e ".job_states.priority == 0" &&
2274+ echo $nosubmitq | jq -e ".job_states.sched == 0" &&
2275+ echo $nosubmitq | jq -e ".job_states.run == 0" &&
2276+ echo $nosubmitq | jq -e ".job_states.cleanup == 0" &&
2277+ echo $nosubmitq | jq -e ".job_states.inactive == 0" &&
2278+ echo $nosubmitq | jq -e ".job_states.total == 0" &&
2279+ echo $nosubmitq | jq -e ".successful == 0" &&
2280+ echo $nosubmitq | jq -e ".failed == 0" &&
2281+ echo $nosubmitq | jq -e ".canceled == 0" &&
2282+ echo $nosubmitq | jq -e ".timeout == 0" &&
2283+ echo $nosubmitq | jq -e ".inactive_purged == 0"
22362284'
22372285
22382286test_expect_success ' remove jobtap plugins and remove queue config' '
0 commit comments