Skip to main content
Glama

Laravel 12 Docs MCP Server

by brianirish
coverage.xml234 kB
<?xml version="1.0" ?> <coverage version="7.9.2" timestamp="1753840172034" lines-valid="5523" lines-covered="4814" line-rate="0.8716" branches-valid="1004" branches-covered="627" branch-rate="0.6245" complexity="0"> <!-- Generated by coverage.py: https://coverage.readthedocs.io/en/7.9.2 --> <!-- Based on https://raw.githubusercontent.com/cobertura/web/master/htdocs/xml/coverage-04.dtd --> <sources> <source>/Users/brianirish/Basement/laravel-mcp-companion</source> </sources> <packages> <package name="." line-rate="0.73" branch-rate="0.5966" complexity="0"> <classes> <class name="docs_updater.py" filename="docs_updater.py" complexity="0" line-rate="0.7545" branch-rate="0.5957"> <methods/> <lines> <line number="9" hits="1"/> <line number="10" hits="1"/> <line number="11" hits="1"/> <line number="12" hits="1"/> <line number="13" hits="1"/> <line number="14" hits="1"/> <line number="15" hits="1"/> <line number="16" hits="1"/> <line number="17" hits="1"/> <line number="18" hits="1"/> <line number="19" hits="1"/> <line number="20" hits="1"/> <line number="21" hits="1"/> <line number="22" hits="1"/> <line number="23" hits="1"/> <line number="24" hits="1"/> <line number="27" hits="1"/> <line number="31" hits="1"/> <line number="34" hits="1"/> <line number="35" hits="1"/> <line number="36" hits="1"/> <line number="38" hits="1"/> <line number="44" hits="1"/> <line number="46" hits="1"/> <line number="48" hits="1"/> <line number="49" hits="1"/> <line number="57" hits="1"/> <line number="58" hits="1"/> <line number="61" hits="1"/> <line number="62" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="63" hits="1"/> <line number="64" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="65" hits="1"/> <line number="66" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="67" hits="1"/> <line number="70" hits="1"/> <line number="72" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="73" hits="1"/> <line number="74" hits="1"/> <line number="76" hits="1"/> <line number="77" hits="1"/> <line number="79" hits="1"/> <line number="80" hits="1"/> <line number="81" hits="1"/> <line number="84" hits="1"/> <line number="86" hits="1"/> <line number="89" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="90" hits="1"/> <line number="91" hits="1"/> <line number="93" hits="1"/> <line number="94" hits="1"/> <line number="95" hits="1"/> <line number="97" hits="1"/> <line number="99" hits="1"/> <line number="100" hits="1"/> <line number="101" hits="1"/> <line number="102" hits="1"/> <line number="104" hits="1"/> <line number="107" hits="1"/> <line number="115" hits="1"/> <line number="116" hits="1"/> <line number="119" hits="1"/> <line number="120" hits="1"/> <line number="122" hits="1"/> <line number="133" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="134" hits="1"/> <line number="135" hits="1"/> <line number="137" hits="1"/> <line number="138" hits="1"/> <line number="140" hits="1"/> <line number="141" hits="1"/> <line number="143" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="144" hits="1"/> <line number="145" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="146"/> <line number="146" hits="0"/> <line number="147" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="148"/> <line number="148" hits="0"/> <line number="149" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="150"/> <line number="150" hits="0"/> <line number="152" hits="1"/> <line number="154" hits="1"/> <line number="155" hits="1"/> <line number="157" hits="0"/> <line number="158" hits="0"/> <line number="159" hits="0"/> <line number="161" hits="1"/> <line number="172" hits="1"/> <line number="175" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="176" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="177" hits="1"/> <line number="180" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="181" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="182" hits="1"/> <line number="184" hits="1"/> <line number="186" hits="1"/> <line number="188" hits="1"/> <line number="189" hits="1"/> <line number="191" hits="1"/> <line number="193" hits="1"/> <line number="194" hits="1"/> <line number="197" hits="1"/> <line number="199" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="201" hits="1"/> <line number="204" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="205"/> <line number="205" hits="0"/> <line number="208" hits="1"/> <line number="209" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="199"/> <line number="210" hits="1"/> <line number="213" hits="1"/> <line number="214" hits="1"/> <line number="216" hits="1"/> <line number="217" hits="1"/> <line number="219" hits="1"/> <line number="221" hits="1"/> <line number="223" hits="1"/> <line number="224" hits="1"/> <line number="226" hits="1"/> <line number="228" hits="1"/> <line number="231" hits="1"/> <line number="232" hits="1"/> <line number="235" hits="1"/> <line number="236" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="241"/> <line number="237" hits="1"/> <line number="238" hits="1"/> <line number="239" hits="1"/> <line number="241" hits="0"/> <line number="244" hits="1"/> <line number="245" hits="1"/> <line number="248" hits="1"/> <line number="250" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="252" hits="1"/> <line number="253" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="250"/> <line number="254" hits="1"/> <line number="255" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="250"/> <line number="256" hits="1"/> <line number="258" hits="1"/> <line number="259" hits="1"/> <line number="261" hits="0"/> <line number="262" hits="0"/> <line number="264" hits="1"/> <line number="266" hits="1"/> <line number="268" hits="1"/> <line number="269" hits="1"/> <line number="271" hits="1"/> <line number="273" hits="1"/> <line number="274" hits="1"/> <line number="278" hits="1"/> <line number="284" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="285" hits="1"/> <line number="286" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="287" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="290"/> <line number="288" hits="1"/> <line number="290" hits="0"/> <line number="293" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="286"/> <line number="298" hits="1"/> <line number="299" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="286"/> <line number="300" hits="1"/> <line number="303" hits="1"/> <line number="304" hits="1"/> <line number="305" hits="1"/> <line number="307" hits="0"/> <line number="308" hits="0"/> <line number="310" hits="1"/> <line number="312" hits="1"/> <line number="314" hits="1"/> <line number="315" hits="1"/> <line number="317" hits="1"/> <line number="319" hits="1"/> <line number="320" hits="1"/> <line number="323" hits="1"/> <line number="325" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="327" hits="1"/> <line number="328" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="325"/> <line number="330" hits="1"/> <line number="331" hits="1"/> <line number="332" hits="1"/> <line number="333" hits="1"/> <line number="336" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="339"/> <line number="337" hits="1"/> <line number="339" hits="0"/> <line number="341" hits="0"/> <line number="342" hits="0"/> <line number="343" hits="0"/> <line number="345" hits="1"/> <line number="346" hits="1"/> <line number="348" hits="0"/> <line number="349" hits="0"/> <line number="351" hits="1"/> <line number="353" hits="1"/> <line number="356" hits="1"/> <line number="362" hits="1"/> <line number="367" hits="1"/> <line number="370" hits="1"/> <line number="373" hits="1"/> <line number="376" hits="1"/> <line number="378" hits="1"/> <line number="389" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="392"/> <line number="390" hits="1"/> <line number="392" hits="1"/> <line number="394" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="435"/> <line number="395" hits="1"/> <line number="397" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="398" hits="1"/> <line number="400" hits="1"/> <line number="401" hits="1"/> <line number="402" hits="1"/> <line number="404" hits="1"/> <line number="405" hits="1"/> <line number="406" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="408" hits="1"/> <line number="409" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="411" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="416"/> <line number="412" hits="1"/> <line number="413" hits="1"/> <line number="414" hits="1"/> <line number="416" hits="0"/> <line number="417" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="423"/> <line number="419" hits="1"/> <line number="420" hits="1"/> <line number="421" hits="1"/> <line number="423" hits="0"/> <line number="425" hits="1"/> <line number="426" hits="1"/> <line number="427" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="428" hits="1"/> <line number="429" hits="1"/> <line number="430" hits="1"/> <line number="432" hits="1"/> <line number="435" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="436,438"/> <line number="436" hits="0"/> <line number="438" hits="0"/> <line number="441" hits="1"/> <line number="444" hits="1"/> <line number="453" hits="1"/> <line number="454" hits="1"/> <line number="455" hits="1"/> <line number="456" hits="1"/> <line number="457" hits="1"/> <line number="460" hits="1"/> <line number="463" hits="1"/> <line number="576" hits="1"/> <line number="578" hits="1"/> <line number="579" hits="1"/> <line number="580" hits="1"/> <line number="582" hits="1"/> <line number="584" hits="1"/> <line number="586" hits="1"/> <line number="588" hits="1"/> <line number="590" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="591" hits="1"/> <line number="593" hits="1"/> <line number="594" hits="1"/> <line number="595" hits="1"/> <line number="597" hits="1"/> <line number="598" hits="1"/> <line number="599" hits="1"/> <line number="600" hits="1"/> <line number="601" hits="1"/> <line number="603" hits="1"/> <line number="605" hits="1"/> <line number="606" hits="1"/> <line number="608" hits="1"/> <line number="609" hits="1"/> <line number="610" hits="1"/> <line number="611" hits="1"/> <line number="612" hits="1"/> <line number="614" hits="1"/> <line number="624" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="625" hits="1"/> <line number="626" hits="1"/> <line number="629" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="630"/> <line number="630" hits="0"/> <line number="631" hits="0"/> <line number="633" hits="1"/> <line number="634" hits="1"/> <line number="636" hits="1"/> <line number="638" hits="1"/> <line number="639" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="641"/> <line number="640" hits="1"/> <line number="641" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="642,644"/> <line number="642" hits="0"/> <line number="644" hits="0"/> <line number="645" hits="0"/> <line number="646" hits="0"/> <line number="647" hits="0"/> <line number="648" hits="0"/> <line number="650" hits="1"/> <line number="652" hits="1"/> <line number="655" hits="1"/> <line number="656" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="657" hits="1"/> <line number="658" hits="1"/> <line number="659" hits="1"/> <line number="660" hits="0"/> <line number="661" hits="0"/> <line number="664" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="665"/> <line number="665" hits="0"/> <line number="666" hits="0"/> <line number="668" hits="1"/> <line number="669" hits="1"/> <line number="671" hits="1"/> <line number="676" hits="1"/> <line number="678" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="680" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="681"/> <line number="681" hits="0"/> <line number="682" hits="0"/> <line number="684" hits="1"/> <line number="685" hits="1"/> <line number="688" hits="1"/> <line number="690" hits="1"/> <line number="691" hits="1"/> <line number="692" hits="1"/> <line number="693" hits="1"/> <line number="697" hits="1"/> <line number="699" hits="1"/> <line number="700" hits="1"/> <line number="702" hits="1"/> <line number="703" hits="1"/> <line number="705" hits="1"/> <line number="706" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="709"/> <line number="707" hits="1"/> <line number="709" hits="0"/> <line number="710" hits="1"/> <line number="711" hits="0"/> <line number="712" hits="0"/> <line number="713" hits="0"/> <line number="715" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="717" hits="1"/> <line number="727" hits="1"/> <line number="728" hits="1"/> <line number="729" hits="1"/> <line number="731" hits="1"/> <line number="733" hits="1"/> <line number="735" hits="1"/> <line number="737" hits="1"/> <line number="738" hits="1"/> <line number="739" hits="1"/> <line number="741" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="742" hits="1"/> <line number="744" hits="1"/> <line number="745" hits="1"/> <line number="746" hits="1"/> <line number="747" hits="1"/> <line number="748" hits="1"/> <line number="749" hits="1"/> <line number="750" hits="1"/> <line number="751" hits="1"/> <line number="752" hits="1"/> <line number="753" hits="1"/> <line number="755" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="756" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="757" hits="1"/> <line number="758" hits="1"/> <line number="759" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="760" hits="1"/> <line number="761" hits="1"/> <line number="762" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="776"/> <line number="763" hits="1"/> <line number="764" hits="1"/> <line number="765" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="766" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="767" hits="1"/> <line number="768" hits="1"/> <line number="769" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="770" hits="1"/> <line number="771" hits="1"/> <line number="772" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="776"/> <line number="773" hits="1"/> <line number="774" hits="1"/> <line number="776" hits="1"/> <line number="778" hits="1"/> <line number="779" hits="1"/> <line number="782" hits="1"/> <line number="789" hits="1"/> <line number="791" hits="1"/> <line number="792" hits="1"/> <line number="794" hits="1"/> <line number="796" hits="1"/> <line number="797" hits="1"/> <line number="800" hits="1"/> <line number="802" hits="1"/> <line number="803" hits="1"/> <line number="804" hits="1"/> <line number="805" hits="1"/> <line number="807" hits="1"/> <line number="808" hits="1"/> <line number="810" hits="1"/> <line number="811" hits="1"/> <line number="814" hits="1"/> <line number="815" hits="1"/> <line number="818" hits="1"/> <line number="820" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="821"/> <line number="821" hits="0"/> <line number="823" hits="1"/> <line number="826" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="828"/> <line number="827" hits="1"/> <line number="828" hits="1"/> <line number="831" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="832" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="835"/> <line number="833" hits="1"/> <line number="835" hits="0"/> <line number="838" hits="1"/> <line number="844" hits="1"/> <line number="846" hits="1"/> <line number="847" hits="1"/> <line number="849" hits="0"/> <line number="850" hits="0"/> <line number="851" hits="0"/> <line number="853" hits="1"/> <line number="859" hits="1"/> <line number="860" hits="1"/> <line number="861" hits="1"/> <line number="863" hits="1"/> <line number="865" hits="1"/> <line number="866" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="867" hits="1"/> <line number="870" hits="1"/> <line number="871" hits="1"/> <line number="872" hits="1"/> <line number="873" hits="1"/> <line number="874" hits="1"/> <line number="875" hits="0"/> <line number="876" hits="0"/> <line number="877" hits="0"/> <line number="878" hits="0"/> <line number="880" hits="1"/> <line number="882" hits="1"/> <line number="887" hits="1"/> <line number="888" hits="1"/> <line number="889" hits="0"/> <line number="890" hits="0"/> <line number="892" hits="0"/> <line number="893" hits="0"/> <line number="896" hits="1"/> <line number="899" hits="1"/> <line number="908" hits="1"/> <line number="909" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="910" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="911" hits="1"/> <line number="912" hits="1"/> <line number="915" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="916" hits="1"/> <line number="917" hits="1"/> <line number="920" hits="1"/> <line number="923" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="924"/> <line number="924" hits="0"/> <line number="926" hits="1"/> <line number="928" hits="1"/> <line number="941" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="942" hits="1"/> <line number="945" hits="1"/> <line number="953" hits="1"/> <line number="964" hits="1"/> <line number="967" hits="1"/> <line number="970" hits="1"/> <line number="971" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="976"/> <line number="972" hits="1"/> <line number="973" hits="1"/> <line number="976" hits="1"/> <line number="977" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="978" hits="1"/> <line number="979" hits="1"/> <line number="982" hits="1"/> <line number="987" hits="1"/> <line number="988" hits="1"/> <line number="991" hits="1"/> <line number="992" hits="1"/> <line number="993" hits="1"/> <line number="996" hits="1"/> <line number="1002" hits="1"/> <line number="1003" hits="1"/> <line number="1006" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1007" hits="1"/> <line number="1008" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1009" hits="1"/> <line number="1012" hits="1"/> <line number="1013" hits="1"/> <line number="1015" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1016" hits="1"/> <line number="1018" hits="1"/> <line number="1020" hits="1"/> <line number="1024" hits="1"/> <line number="1025" hits="1"/> <line number="1026" hits="1"/> <line number="1027" hits="0"/> <line number="1028" hits="0"/> <line number="1030" hits="0"/> <line number="1033" hits="1"/> <line number="1036" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1037"/> <line number="1037" hits="0"/> <line number="1040" hits="1"/> <line number="1043" hits="1"/> <line number="1056" hits="1"/> <line number="1063" hits="1"/> <line number="1064" hits="1"/> <line number="1067" hits="1"/> <line number="1068" hits="1"/> <line number="1069" hits="1"/> <line number="1072" hits="1"/> <line number="1074" hits="1"/> <line number="1076" hits="1"/> <line number="1086" hits="1"/> <line number="1088" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1089" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1092"/> <line number="1090" hits="1"/> <line number="1092" hits="0"/> <line number="1093" hits="0"/> <line number="1095" hits="1"/> <line number="1097" hits="1"/> <line number="1099" hits="1"/> <line number="1101" hits="1"/> <line number="1103" hits="1"/> <line number="1105" hits="1"/> <line number="1120" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1123"/> <line number="1121" hits="1"/> <line number="1123" hits="1"/> <line number="1124" hits="1"/> <line number="1126" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1170"/> <line number="1127" hits="1"/> <line number="1128" hits="1"/> <line number="1129" hits="1"/> <line number="1130" hits="1"/> <line number="1131" hits="1"/> <line number="1132" hits="1"/> <line number="1133" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1136"/> <line number="1135" hits="1"/> <line number="1136" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1138,1141"/> <line number="1138" hits="0"/> <line number="1139" hits="0"/> <line number="1140" hits="0"/> <line number="1141" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1143,1151"/> <line number="1143" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1144,1148"/> <line number="1144" hits="0"/> <line number="1145" hits="0"/> <line number="1146" hits="0"/> <line number="1148" hits="0"/> <line number="1151" hits="0"/> <line number="1152" hits="0"/> <line number="1153" hits="0"/> <line number="1154" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1155,1159"/> <line number="1155" hits="0"/> <line number="1156" hits="0"/> <line number="1157" hits="0"/> <line number="1159" hits="0"/> <line number="1160" hits="0"/> <line number="1161" hits="0"/> <line number="1162" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1163,1167"/> <line number="1163" hits="0"/> <line number="1164" hits="0"/> <line number="1165" hits="0"/> <line number="1167" hits="0"/> <line number="1170" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1171,1173"/> <line number="1171" hits="0"/> <line number="1173" hits="0"/> <line number="1175" hits="1"/> <line number="1178" hits="1"/> <line number="1186" hits="1"/> <line number="1187" hits="1"/> <line number="1188" hits="1"/> <line number="1189" hits="1"/> <line number="1192" hits="1"/> <line number="1193" hits="1"/> <line number="1196" hits="1"/> <line number="1197" hits="1"/> <line number="1198" hits="1"/> <line number="1200" hits="1"/> <line number="1202" hits="1"/> <line number="1204" hits="1"/> <line number="1206" hits="1"/> <line number="1207" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1259"/> <line number="1208" hits="1"/> <line number="1209" hits="1"/> <line number="1217" hits="1"/> <line number="1218" hits="1"/> <line number="1219" hits="1"/> <line number="1225" hits="1"/> <line number="1226" hits="1"/> <line number="1227" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1228" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1234"/> <line number="1229" hits="1"/> <line number="1230" hits="1"/> <line number="1231" hits="1"/> <line number="1232" hits="1"/> <line number="1234" hits="0"/> <line number="1235" hits="0"/> <line number="1236" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1240"/> <line number="1237" hits="1"/> <line number="1238" hits="1"/> <line number="1240" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1241,1246"/> <line number="1241" hits="0"/> <line number="1242" hits="0"/> <line number="1243" hits="0"/> <line number="1244" hits="0"/> <line number="1246" hits="0"/> <line number="1247" hits="0"/> <line number="1248" hits="1"/> <line number="1249" hits="1"/> <line number="1250" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1251" hits="1"/> <line number="1252" hits="1"/> <line number="1253" hits="1"/> <line number="1255" hits="1"/> <line number="1256" hits="1"/> <line number="1259" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1260,1262"/> <line number="1260" hits="0"/> <line number="1262" hits="0"/> <line number="1264" hits="1"/> <line number="1266" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1267" hits="1"/> <line number="1269" hits="1"/> <line number="1270" hits="1"/> <line number="1271" hits="1"/> <line number="1272" hits="1"/> <line number="1273" hits="1"/> <line number="1274" hits="1"/> <line number="1276" hits="1"/> <line number="1278" hits="1"/> <line number="1279" hits="1"/> <line number="1280" hits="1"/> <line number="1281" hits="0"/> <line number="1282" hits="0"/> <line number="1284" hits="1"/> <line number="1291" hits="1"/> <line number="1294" hits="1"/> <line number="1296" hits="1"/> <line number="1298" hits="1"/> <line number="1299" hits="1"/> <line number="1300" hits="1"/> <line number="1303" hits="1"/> <line number="1306" hits="1"/> <line number="1308" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1328"/> <line number="1309" hits="1"/> <line number="1310" hits="1"/> <line number="1315" hits="1"/> <line number="1316" hits="1"/> <line number="1317" hits="1"/> <line number="1318" hits="1"/> <line number="1319" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1320" hits="1"/> <line number="1321" hits="1"/> <line number="1322" hits="1"/> <line number="1324" hits="1"/> <line number="1325" hits="1"/> <line number="1328" hits="1"/> <line number="1329" hits="1"/> <line number="1330" hits="1"/> <line number="1333" hits="1"/> <line number="1335" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1336"/> <line number="1336" hits="0"/> <line number="1338" hits="1"/> <line number="1339" hits="1"/> <line number="1342" hits="1"/> <line number="1343" hits="1"/> <line number="1344" hits="1"/> <line number="1345" hits="1"/> <line number="1347" hits="1"/> <line number="1349" hits="1"/> <line number="1351" hits="1"/> <line number="1354" hits="1"/> <line number="1357" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1358" hits="1"/> <line number="1359" hits="1"/> <line number="1362" hits="1"/> <line number="1363" hits="1"/> <line number="1364" hits="1"/> <line number="1365" hits="1"/> <line number="1366" hits="1"/> <line number="1368" hits="1"/> <line number="1378" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1379" hits="1"/> <line number="1381" hits="1"/> <line number="1383" hits="1"/> <line number="1386" hits="1"/> <line number="1389" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1390" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1391" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1392"/> <line number="1392" hits="0"/> <line number="1394" hits="1"/> <line number="1397" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1398" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1399" hits="1"/> <line number="1401" hits="1"/> <line number="1404" hits="1"/> <line number="1412" hits="1"/> <line number="1414" hits="1"/> <line number="1415" hits="1"/> <line number="1417" hits="1"/> <line number="1418" hits="1"/> <line number="1419" hits="1"/> <line number="1420" hits="1"/> <line number="1421" hits="1"/> <line number="1424" hits="1"/> <line number="1427" hits="1"/> <line number="1436" hits="1"/> <line number="1437" hits="1"/> <line number="1438" hits="1"/> <line number="1439" hits="1"/> <line number="1440" hits="1"/> <line number="1443" hits="1"/> <line number="1570" hits="1"/> <line number="1572" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1573" hits="1"/> <line number="1575" hits="1"/> <line number="1576" hits="1"/> <line number="1577" hits="1"/> <line number="1579" hits="1"/> <line number="1581" hits="1"/> <line number="1582" hits="1"/> <line number="1584" hits="1"/> <line number="1586" hits="1"/> <line number="1588" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1589" hits="1"/> <line number="1591" hits="1"/> <line number="1592" hits="1"/> <line number="1593" hits="1"/> <line number="1595" hits="1"/> <line number="1596" hits="1"/> <line number="1598" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1599" hits="1"/> <line number="1600" hits="1"/> <line number="1602" hits="1"/> <line number="1603" hits="0"/> <line number="1604" hits="0"/> <line number="1605" hits="0"/> <line number="1607" hits="1"/> <line number="1618" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1619" hits="1"/> <line number="1620" hits="1"/> <line number="1623" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1624" hits="1"/> <line number="1625" hits="1"/> <line number="1627" hits="1"/> <line number="1628" hits="1"/> <line number="1630" hits="1"/> <line number="1631" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1632"/> <line number="1632" hits="0"/> <line number="1633" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1634" hits="1"/> <line number="1635" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1637"/> <line number="1636" hits="1"/> <line number="1637" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1638,1639"/> <line number="1638" hits="0"/> <line number="1639" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1640,1641"/> <line number="1640" hits="0"/> <line number="1641" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1642,1644"/> <line number="1642" hits="0"/> <line number="1644" hits="0"/> <line number="1645" hits="0"/> <line number="1646" hits="0"/> <line number="1647" hits="0"/> <line number="1648" hits="0"/> <line number="1650" hits="1"/> <line number="1652" hits="1"/> <line number="1653" hits="1"/> <line number="1655" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1656" hits="1"/> <line number="1657" hits="1"/> <line number="1658" hits="1"/> <line number="1660" hits="1"/> <line number="1661" hits="1"/> <line number="1663" hits="1"/> <line number="1664" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1665" hits="1"/> <line number="1666" hits="1"/> <line number="1668" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1670" hits="1"/> <line number="1671" hits="1"/> <line number="1673" hits="1"/> <line number="1674" hits="1"/> <line number="1676" hits="1"/> <line number="1678" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1680" hits="1"/> <line number="1688" hits="1"/> <line number="1689" hits="1"/> <line number="1691" hits="1"/> <line number="1692" hits="1"/> <line number="1694" hits="1"/> <line number="1695" hits="1"/> <line number="1697" hits="0"/> <line number="1698" hits="0"/> <line number="1700" hits="1"/> <line number="1702" hits="1"/> <line number="1704" hits="1"/> <line number="1705" hits="1"/> <line number="1706" hits="1"/> <line number="1708" hits="1"/> <line number="1709" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1710" hits="1"/> <line number="1711" hits="1"/> <line number="1712" hits="1"/> <line number="1714" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1715" hits="1"/> <line number="1716" hits="1"/> <line number="1718" hits="1"/> <line number="1719" hits="1"/> <line number="1721" hits="1"/> <line number="1722" hits="0"/> <line number="1723" hits="0"/> <line number="1725" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1744"/> <line number="1727" hits="1"/> <line number="1735" hits="1"/> <line number="1736" hits="1"/> <line number="1738" hits="1"/> <line number="1739" hits="1"/> <line number="1741" hits="1"/> <line number="1742" hits="1"/> <line number="1744" hits="0"/> <line number="1746" hits="1"/> <line number="1748" hits="1"/> <line number="1749" hits="1"/> <line number="1750" hits="1"/> <line number="1751" hits="1"/> <line number="1752" hits="1"/> <line number="1754" hits="1"/> <line number="1755" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1756" hits="1"/> <line number="1758" hits="1"/> <line number="1759" hits="1"/> <line number="1761" hits="1"/> <line number="1763" hits="1"/> <line number="1768" hits="1"/> <line number="1769" hits="1"/> <line number="1772" hits="1"/> <line number="1774" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1786"/> <line number="1775" hits="1"/> <line number="1776" hits="1"/> <line number="1778" hits="1"/> <line number="1779" hits="1"/> <line number="1780" hits="1"/> <line number="1781" hits="1"/> <line number="1783" hits="1"/> <line number="1784" hits="1"/> <line number="1786" hits="0"/> <line number="1788" hits="0"/> <line number="1789" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1790,1792"/> <line number="1790" hits="0"/> <line number="1792" hits="0"/> <line number="1793" hits="0"/> <line number="1794" hits="0"/> <line number="1796" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1818"/> <line number="1798" hits="1"/> <line number="1809" hits="1"/> <line number="1810" hits="1"/> <line number="1812" hits="1"/> <line number="1813" hits="1"/> <line number="1815" hits="1"/> <line number="1816" hits="1"/> <line number="1818" hits="0"/> <line number="1820" hits="1"/> <line number="1831" hits="1"/> <line number="1832" hits="1"/> <line number="1835" hits="1"/> <line number="1838" hits="1"/> <line number="1841" hits="1"/> <line number="1844" hits="1"/> <line number="1847" hits="1"/> <line number="1852" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1853" hits="1"/> <line number="1854" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1855" hits="1"/> <line number="1856" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1854"/> <line number="1857" hits="1"/> <line number="1860" hits="1"/> <line number="1865" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1866" hits="1"/> <line number="1867" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1868" hits="1"/> <line number="1869" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1867"/> <line number="1870" hits="1"/> <line number="1873" hits="1"/> <line number="1879" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1880" hits="1"/> <line number="1881" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1882" hits="1"/> <line number="1883" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1881"/> <line number="1884" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1885"/> <line number="1885" hits="0"/> <line number="1887" hits="1"/> <line number="1890" hits="1"/> <line number="1891" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1892"/> <line number="1892" hits="0"/> <line number="1893" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1891,1894"/> <line number="1894" hits="0"/> <line number="1897" hits="1"/> <line number="1903" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1904" hits="1"/> <line number="1905" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1906" hits="1"/> <line number="1907" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1905"/> <line number="1908" hits="1"/> <line number="1911" hits="1"/> <line number="1916" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1917" hits="1"/> <line number="1918" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1919"/> <line number="1919" hits="0"/> <line number="1920" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1918,1921"/> <line number="1921" hits="0"/> <line number="1925" hits="1"/> <line number="1926" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1928" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1932"/> <line number="1932" hits="0"/> <line number="1933" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1926,1935"/> <line number="1935" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1926,1936"/> <line number="1936" hits="0"/> <line number="1938" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1952"/> <line number="1940" hits="1"/> <line number="1941" hits="1"/> <line number="1942" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1943" hits="1"/> <line number="1944" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1946" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1942"/> <line number="1947" hits="1"/> <line number="1948" hits="1"/> <line number="1950" hits="1"/> <line number="1952" hits="0"/> <line number="1953" hits="0"/> <line number="1955" hits="0"/> <line number="1956" hits="0"/> <line number="1957" hits="0"/> <line number="1959" hits="1"/> <line number="1961" hits="1"/> <line number="1964" hits="1"/> <line number="1967" hits="1"/> <line number="1970" hits="1"/> <line number="1973" hits="1"/> <line number="1974" hits="1"/> <line number="1976" hits="1"/> <line number="1978" hits="1"/> <line number="1980" hits="1"/> <line number="1981" hits="1"/> <line number="1982" hits="1"/> <line number="1983" hits="1"/> <line number="1985" hits="1"/> <line number="1986" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1987" hits="1"/> <line number="1988" hits="1"/> <line number="1989" hits="1"/> <line number="1991" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1992" hits="1"/> <line number="1993" hits="1"/> <line number="1995" hits="1"/> <line number="1996" hits="1"/> <line number="1998" hits="1"/> <line number="1999" hits="0"/> <line number="2000" hits="0"/> <line number="2002" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2004" hits="1"/> <line number="2013" hits="1"/> <line number="2014" hits="1"/> <line number="2016" hits="1"/> <line number="2017" hits="1"/> <line number="2019" hits="1"/> <line number="2020" hits="1"/> <line number="2022" hits="1"/> <line number="2024" hits="1"/> <line number="2026" hits="1"/> <line number="2027" hits="1"/> <line number="2028" hits="1"/> <line number="2030" hits="1"/> <line number="2031" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2032" hits="1"/> <line number="2033" hits="1"/> <line number="2034" hits="1"/> <line number="2036" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2031"/> <line number="2037" hits="1"/> <line number="2038" hits="1"/> <line number="2040" hits="1"/> <line number="2041" hits="1"/> <line number="2043" hits="1"/> <line number="2044" hits="0"/> <line number="2045" hits="0"/> <line number="2047" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2066"/> <line number="2049" hits="1"/> <line number="2057" hits="1"/> <line number="2058" hits="1"/> <line number="2060" hits="1"/> <line number="2061" hits="1"/> <line number="2063" hits="1"/> <line number="2064" hits="1"/> <line number="2066" hits="0"/> <line number="2068" hits="1"/> <line number="2070" hits="1"/> <line number="2071" hits="1"/> <line number="2072" hits="1"/> <line number="2073" hits="1"/> <line number="2075" hits="1"/> <line number="2077" hits="1"/> <line number="2079" hits="1"/> <line number="2081" hits="1"/> <line number="2086" hits="1"/> <line number="2087" hits="1"/> <line number="2090" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2131"/> <line number="2092" hits="1"/> <line number="2093" hits="1"/> <line number="2094" hits="1"/> <line number="2097" hits="1"/> <line number="2098" hits="1"/> <line number="2100" hits="1"/> <line number="2101" hits="1"/> <line number="2104" hits="1"/> <line number="2114" hits="1"/> <line number="2115" hits="1"/> <line number="2117" hits="1"/> <line number="2118" hits="1"/> <line number="2120" hits="1"/> <line number="2121" hits="1"/> <line number="2123" hits="1"/> <line number="2124" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2127"/> <line number="2125" hits="1"/> <line number="2127" hits="0"/> <line number="2128" hits="0"/> <line number="2129" hits="0"/> <line number="2131" hits="1"/> <line number="2133" hits="1"/> <line number="2135" hits="1"/> <line number="2137" hits="1"/> <line number="2138" hits="1"/> <line number="2140" hits="1"/> <line number="2148" hits="1"/> <line number="2149" hits="1"/> <line number="2150" hits="1"/> <line number="2153" hits="1"/> <line number="2156" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2157" hits="1"/> <line number="2161" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2164" hits="1"/> <line number="2167" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2169"/> <line number="2169" hits="0"/> <line number="2170" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2172,2184"/> <line number="2172" hits="0"/> <line number="2173" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2175,2180"/> <line number="2175" hits="0"/> <line number="2176" hits="0"/> <line number="2177" hits="0"/> <line number="2178" hits="0"/> <line number="2180" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2181,2183"/> <line number="2181" hits="0"/> <line number="2183" hits="0"/> <line number="2184" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2167,2185"/> <line number="2185" hits="0"/> <line number="2188" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2189"/> <line number="2189" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2188,2190"/> <line number="2190" hits="0"/> <line number="2191" hits="0"/> <line number="2193" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2188,2195"/> <line number="2195" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2188,2196"/> <line number="2196" hits="0"/> <line number="2197" hits="0"/> <line number="2198" hits="0"/> <line number="2201" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2202"/> <line number="2202" hits="0"/> <line number="2205" hits="1"/> <line number="2208" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2210"/> <line number="2210" hits="0"/> <line number="2211" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2212,2221"/> <line number="2212" hits="0"/> <line number="2213" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2215" hits="1"/> <line number="2216" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2218" hits="1"/> <line number="2221" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2222" hits="1"/> <line number="2228" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2229" hits="1"/> <line number="2230" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2231" hits="1"/> <line number="2232" hits="1"/> <line number="2234" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2235" hits="1"/> <line number="2236" hits="1"/> <line number="2239" hits="1"/> <line number="2242" hits="1"/> <line number="2245" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2246" hits="1"/> <line number="2248" hits="1"/> <line number="2249" hits="1"/> <line number="2252" hits="1"/> <line number="2253" hits="1"/> <line number="2255" hits="1"/> <line number="2257" hits="1"/> <line number="2258" hits="1"/> <line number="2259" hits="1"/> <line number="2261" hits="1"/> <line number="2264" hits="1"/> <line number="2267" hits="1"/> <line number="2270" hits="1"/> <line number="2272" hits="1"/> <line number="2274" hits="1"/> <line number="2276" hits="1"/> <line number="2278" hits="1"/> <line number="2288" hits="1"/> <line number="2290" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2291" hits="1"/> <line number="2292" hits="1"/> <line number="2295" hits="1"/> <line number="2296" hits="1"/> <line number="2297" hits="1"/> <line number="2299" hits="1"/> <line number="2302" hits="1"/> <line number="2305" hits="1"/> <line number="2313" hits="1"/> <line number="2314" hits="1"/> <line number="2317" hits="1"/> <line number="2320" hits="1"/> <line number="2323" hits="1"/> <line number="2325" hits="1"/> <line number="2327" hits="1"/> <line number="2328" hits="1"/> <line number="2330" hits="1"/> <line number="2341" hits="1"/> <line number="2343" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2344" hits="1"/> <line number="2345" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2346" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2347" hits="1"/> <line number="2349" hits="1"/> <line number="2350" hits="1"/> <line number="2351" hits="1"/> <line number="2353" hits="1"/> <line number="2355" hits="1"/> <line number="2366" hits="0"/> <line number="2368" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2369,2378"/> <line number="2369" hits="0"/> <line number="2370" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2371,2376"/> <line number="2371" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2372,2374"/> <line number="2372" hits="0"/> <line number="2374" hits="0"/> <line number="2375" hits="0"/> <line number="2376" hits="0"/> <line number="2378" hits="0"/> <line number="2380" hits="1"/> <line number="2392" hits="0"/> <line number="2394" hits="0"/> <line number="2400" hits="0"/> <line number="2402" hits="0"/> <line number="2405" hits="0"/> <line number="2408" hits="0"/> <line number="2411" hits="0"/> <line number="2412" hits="0"/> <line number="2413" hits="0"/> <line number="2415" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2416,2419"/> <line number="2416" hits="0"/> <line number="2417" hits="0"/> <line number="2419" hits="0"/> <line number="2420" hits="0"/> <line number="2422" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2423,2426"/> <line number="2423" hits="0"/> <line number="2424" hits="0"/> <line number="2426" hits="0"/> <line number="2427" hits="0"/> <line number="2429" hits="0"/> <line number="2431" hits="0"/> <line number="2432" hits="0"/> <line number="2434" hits="0"/> <line number="2436" hits="1"/> <line number="2438" hits="1"/> <line number="2445" hits="1"/> <line number="2446" hits="1"/> <line number="2447" hits="1"/> <line number="2453" hits="1"/> <line number="2454" hits="1"/> <line number="2457" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2458" hits="1"/> <line number="2459" hits="1"/> <line number="2460" hits="1"/> <line number="2461" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2462"/> <line number="2462" hits="0"/> <line number="2465" hits="1"/> <line number="2466" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2467" hits="1"/> <line number="2468" hits="1"/> <line number="2469" hits="1"/> <line number="2470" hits="0"/> <line number="2471" hits="0"/> <line number="2473" hits="1"/> <line number="2475" hits="1"/> <line number="2482" hits="1"/> <line number="2483" hits="1"/> <line number="2486" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2487"/> <line number="2487" hits="0"/> <line number="2488" hits="0"/> <line number="2489" hits="0"/> <line number="2492" hits="0"/> <line number="2493" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2494,2500"/> <line number="2494" hits="0"/> <line number="2495" hits="0"/> <line number="2496" hits="0"/> <line number="2497" hits="0"/> <line number="2498" hits="0"/> <line number="2500" hits="0"/> <line number="2503" hits="0"/> <line number="2504" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2505,2507"/> <line number="2505" hits="0"/> <line number="2507" hits="0"/> <line number="2509" hits="0"/> <line number="2518" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2486,2519"/> <line number="2519" hits="0"/> <line number="2520" hits="0"/> <line number="2521" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2486,2522"/> <line number="2522" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2486,2523"/> <line number="2523" hits="0"/> <line number="2524" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2522,2525"/> <line number="2525" hits="0"/> <line number="2526" hits="0"/> <line number="2527" hits="0"/> <line number="2528" hits="0"/> <line number="2532" hits="0"/> <line number="2533" hits="0"/> <line number="2535" hits="0"/> <line number="2536" hits="0"/> <line number="2538" hits="1"/> <line number="2540" hits="1"/> <line number="2551" hits="0"/> <line number="2558" hits="0"/> <line number="2559" hits="0"/> <line number="2560" hits="0"/> <line number="2561" hits="0"/> <line number="2562" hits="0"/> <line number="2565" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2566,2576"/> <line number="2566" hits="0"/> <line number="2567" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2568,2576"/> <line number="2568" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2569,2576"/> <line number="2569" hits="0"/> <line number="2570" hits="0"/> <line number="2571" hits="0"/> <line number="2572" hits="0"/> <line number="2573" hits="0"/> <line number="2576" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2577,2586"/> <line number="2577" hits="0"/> <line number="2578" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2579,2586"/> <line number="2579" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2580,2586"/> <line number="2580" hits="0"/> <line number="2581" hits="0"/> <line number="2582" hits="0"/> <line number="2583" hits="0"/> <line number="2584" hits="0"/> <line number="2586" hits="0"/> <line number="2588" hits="1"/> <line number="2590" hits="1"/> <line number="2593" hits="1"/> <line number="2599" hits="1"/> <line number="2605" hits="1"/> <line number="2610" hits="1"/> <line number="2615" hits="1"/> <line number="2620" hits="1"/> <line number="2625" hits="1"/> <line number="2630" hits="1"/> <line number="2635" hits="1"/> <line number="2640" hits="1"/> <line number="2646" hits="1"/> <line number="2652" hits="1"/> <line number="2657" hits="1"/> <line number="2662" hits="1"/> <line number="2667" hits="1"/> <line number="2675" hits="1"/> <line number="2677" hits="1"/> <line number="2684" hits="0"/> <line number="2685" hits="0"/> <line number="2687" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2688,2692"/> <line number="2688" hits="0"/> <line number="2689" hits="0"/> <line number="2690" hits="0"/> <line number="2692" hits="0"/> <line number="2693" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2694,2696"/> <line number="2694" hits="0"/> <line number="2696" hits="0"/> <line number="2697" hits="0"/> <line number="2698" hits="0"/> <line number="2699" hits="0"/> <line number="2700" hits="0"/> <line number="2702" hits="1"/> <line number="2705" hits="1"/> <line number="2707" hits="1"/> <line number="2708" hits="1"/> <line number="2709" hits="1"/> <line number="2710" hits="1"/> <line number="2711" hits="1"/> <line number="2712" hits="1"/> <line number="2713" hits="1"/> <line number="2715" hits="1"/> <line number="2718" hits="1"/> <line number="2719" hits="1"/> <line number="2722" hits="1"/> <line number="2724" hits="1"/> <line number="2727" hits="1"/> <line number="2730" hits="1"/> <line number="2731" hits="1"/> <line number="2734" hits="1"/> <line number="2736" hits="1"/> <line number="2738" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2739" hits="1"/> <line number="2740" hits="1"/> <line number="2741" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2742" hits="1"/> <line number="2743" hits="1"/> <line number="2744" hits="1"/> <line number="2747" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2748"/> <line number="2748" hits="0"/> <line number="2749" hits="0"/> <line number="2750" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2751,2757"/> <line number="2751" hits="0"/> <line number="2752" hits="0"/> <line number="2754" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2750,2755"/> <line number="2755" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2750,2756"/> <line number="2756" hits="0"/> <line number="2757" hits="0"/> <line number="2760" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2761" hits="1"/> <line number="2762" hits="1"/> <line number="2763" hits="1"/> <line number="2764" hits="1"/> <line number="2765" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2766"/> <line number="2766" hits="0"/> <line number="2768" hits="1"/> <line number="2769" hits="1"/> <line number="2770" hits="1"/> <line number="2772" hits="1"/> <line number="2773" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2774" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2775"/> <line number="2775" hits="0"/> <line number="2777" hits="1"/> <line number="2778" hits="1"/> <line number="2779" hits="1"/> <line number="2780" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2784"/> <line number="2781" hits="1"/> <line number="2784" hits="1"/> <line number="2785" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2773"/> <line number="2786" hits="1"/> <line number="2787" hits="1"/> <line number="2788" hits="1"/> <line number="2789" hits="1"/> <line number="2790" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2791,2797"/> <line number="2791" hits="0"/> <line number="2792" hits="0"/> <line number="2793" hits="0"/> <line number="2794" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2773,2795"/> <line number="2795" hits="0"/> <line number="2797" hits="0"/> <line number="2798" hits="1"/> <line number="2799" hits="1"/> <line number="2801" hits="1"/> <line number="2802" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2803"/> <line number="2803" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2804,2806"/> <line number="2804" hits="0"/> <line number="2806" hits="0"/> <line number="2807" hits="0"/> <line number="2808" hits="0"/> <line number="2811" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2802,2812"/> <line number="2812" hits="0"/> <line number="2813" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2802,2814"/> <line number="2814" hits="0"/> <line number="2816" hits="1"/> <line number="2819" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2820"/> <line number="2820" hits="0"/> <line number="2821" hits="0"/> <line number="2824" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2825"/> <line number="2825" hits="0"/> <line number="2826" hits="0"/> <line number="2827" hits="0"/> <line number="2828" hits="0"/> <line number="2829" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2830,2831"/> <line number="2830" hits="0"/> <line number="2831" hits="0"/> <line number="2832" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2833,2836"/> <line number="2833" hits="0"/> <line number="2836" hits="0"/> <line number="2837" hits="0"/> <line number="2840" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2841"/> <line number="2841" hits="0"/> <line number="2844" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="2845" hits="1"/> <line number="2846" hits="1"/> <line number="2849" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2851"/> <line number="2851" hits="0"/> <line number="2853" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2854,2861"/> <line number="2854" hits="0"/> <line number="2855" hits="0"/> <line number="2856" hits="0"/> <line number="2858" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="2853,2859"/> <line number="2859" hits="0"/> <line number="2861" hits="0"/> <line number="2865" hits="1"/> <line number="2867" hits="1"/> <line number="2868" hits="1"/> <line number="2869" hits="1"/> <line number="2870" hits="1"/> <line number="2871" hits="1"/> <line number="2872" hits="1"/> <line number="2873" hits="1"/> <line number="2875" hits="1"/> <line number="2878" hits="1"/> <line number="2879" hits="1"/> <line number="2881" hits="0"/> <line number="2882" hits="0"/> <line number="2883" hits="0"/> <line number="2885" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="2886"/> <line number="2886" hits="0"/> </lines> </class> <class name="laravel_mcp_companion.py" filename="laravel_mcp_companion.py" complexity="0" line-rate="0.6657" branch-rate="0.5656"> <methods/> <lines> <line number="10" hits="1"/> <line number="11" hits="1"/> <line number="12" hits="1"/> <line number="13" hits="1"/> <line number="14" hits="1"/> <line number="15" hits="1"/> <line number="16" hits="1"/> <line number="17" hits="1"/> <line number="18" hits="1"/> <line number="19" hits="1"/> <line number="20" hits="1"/> <line number="23" hits="1"/> <line number="24" hits="1"/> <line number="27" hits="1"/> <line number="37" hits="1"/> <line number="41" hits="1"/> <line number="44" hits="1"/> <line number="47" hits="1"/> <line number="48" hits="1"/> <line number="49" hits="1"/> <line number="53" hits="1"/> <line number="350" hits="1"/> <line number="375" hits="1"/> <line number="504" hits="1"/> <line number="506" hits="1"/> <line number="509" hits="1"/> <line number="515" hits="1"/> <line number="521" hits="1"/> <line number="528" hits="1"/> <line number="534" hits="1"/> <line number="540" hits="1"/> <line number="547" hits="1"/> <line number="553" hits="1"/> <line number="558" hits="1"/> <line number="564" hits="1"/> <line number="566" hits="1"/> <line number="568" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="569" hits="1"/> <line number="572" hits="1"/> <line number="575" hits="1"/> <line number="577" hits="1"/> <line number="579" hits="1"/> <line number="581" hits="1"/> <line number="583" hits="1"/> <line number="584" hits="1"/> <line number="594" hits="1"/> <line number="595" hits="1"/> <line number="596" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="597" hits="1"/> <line number="600" hits="1"/> <line number="601" hits="1"/> <line number="603" hits="1"/> <line number="604" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="605"/> <line number="605" hits="0"/> <line number="608" hits="1"/> <line number="609" hits="1"/> <line number="612" hits="1"/> <line number="614" hits="1"/> <line number="615" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="616"/> <line number="616" hits="0"/> <line number="619" hits="1"/> <line number="622" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="624"/> <line number="624" hits="0"/> <line number="625" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="626,628"/> <line number="626" hits="0"/> <line number="628" hits="1"/> <line number="629" hits="1"/> <line number="630" hits="1"/> <line number="631" hits="1"/> <line number="633" hits="1"/> <line number="635" hits="1"/> <line number="636" hits="1"/> <line number="637" hits="1"/> <line number="639" hits="1"/> <line number="641" hits="1"/> <line number="642" hits="1"/> <line number="643" hits="1"/> <line number="644" hits="1"/> <line number="645" hits="1"/> <line number="646" hits="1"/> <line number="647" hits="1"/> <line number="649" hits="1"/> <line number="658" hits="1"/> <line number="661" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="662" hits="1"/> <line number="663" hits="1"/> <line number="664" hits="1"/> <line number="667" hits="1"/> <line number="669" hits="1"/> <line number="671" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="679"/> <line number="673" hits="1"/> <line number="674" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="690"/> <line number="676" hits="1"/> <line number="679" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="680,688"/> <line number="680" hits="0"/> <line number="681" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="682,684"/> <line number="682" hits="0"/> <line number="684" hits="0"/> <line number="685" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="679,686"/> <line number="686" hits="0"/> <line number="688" hits="0"/> <line number="690" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="691" hits="1"/> <line number="693" hits="1"/> <line number="694" hits="1"/> <line number="695" hits="1"/> <line number="696" hits="0"/> <line number="697" hits="0"/> <line number="698" hits="0"/> <line number="700" hits="1"/> <line number="711" hits="1"/> <line number="712" hits="1"/> <line number="713" hits="1"/> <line number="716" hits="1"/> <line number="717" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="718" hits="1"/> <line number="721" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="722" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="723" hits="1"/> <line number="726" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="727" hits="1"/> <line number="728" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="729" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="730" hits="1"/> <line number="733" hits="1"/> <line number="734" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="735" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="736" hits="1"/> <line number="738" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="739" hits="1"/> <line number="742" hits="1"/> <line number="743" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="744" hits="1"/> <line number="745" hits="1"/> <line number="746" hits="1"/> <line number="747" hits="1"/> <line number="749" hits="1"/> <line number="751" hits="1"/> <line number="753" hits="1"/> <line number="754" hits="1"/> <line number="761" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="762" hits="1"/> <line number="763" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="764" hits="1"/> <line number="765" hits="1"/> <line number="768" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="769" hits="1"/> <line number="770" hits="1"/> <line number="771" hits="1"/> <line number="774" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="775" hits="1"/> <line number="776" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="777" hits="1"/> <line number="778" hits="1"/> <line number="781" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="782" hits="1"/> <line number="783" hits="1"/> <line number="785" hits="1"/> <line number="789" hits="1"/> <line number="791" hits="1"/> <line number="792" hits="1"/> <line number="793" hits="1"/> <line number="795" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="797" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="798" hits="1"/> <line number="799" hits="1"/> <line number="802" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="803"/> <line number="803" hits="0"/> <line number="805" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="806" hits="1"/> <line number="808" hits="1"/> <line number="809" hits="1"/> <line number="811" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="812" hits="1"/> <line number="813" hits="1"/> <line number="814" hits="1"/> <line number="816" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="811"/> <line number="817" hits="1"/> <line number="818" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="819" hits="1"/> <line number="820" hits="1"/> <line number="822" hits="1"/> <line number="825" hits="1"/> <line number="827" hits="1"/> <line number="830" hits="1"/> <line number="833" hits="1"/> <line number="834" hits="1"/> <line number="835" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="836" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="837" hits="1"/> <line number="838" hits="1"/> <line number="839" hits="1"/> <line number="841" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="842" hits="1"/> <line number="845" hits="1"/> <line number="846" hits="1"/> <line number="847" hits="1"/> <line number="850" hits="1"/> <line number="852" hits="1"/> <line number="853" hits="1"/> <line number="854" hits="1"/> <line number="856" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="857" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="858" hits="1"/> <line number="860" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="862" hits="1"/> <line number="863" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="864" hits="1"/> <line number="866" hits="1"/> <line number="869" hits="1"/> <line number="870" hits="1"/> <line number="872" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="873" hits="1"/> <line number="874" hits="1"/> <line number="875" hits="1"/> <line number="877" hits="1"/> <line number="880" hits="1"/> <line number="882" hits="1"/> <line number="885" hits="1"/> <line number="888" hits="1"/> <line number="889" hits="1"/> <line number="891" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="892" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="893" hits="1"/> <line number="894" hits="1"/> <line number="895" hits="1"/> <line number="897" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="898" hits="1"/> <line number="901" hits="1"/> <line number="903" hits="1"/> <line number="905" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="906" hits="1"/> <line number="907" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="908" hits="1"/> <line number="909" hits="1"/> <line number="910" hits="1"/> <line number="912" hits="1"/> <line number="913" hits="1"/> <line number="914" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="915" hits="1"/> <line number="916" hits="1"/> <line number="917" hits="1"/> <line number="919" hits="1"/> <line number="922" hits="1"/> <line number="925" hits="1"/> <line number="928" hits="1"/> <line number="931" hits="1"/> <line number="934" hits="1"/> <line number="943" hits="1"/> <line number="946" hits="1"/> <line number="956" hits="1"/> <line number="959" hits="1"/> <line number="960" hits="1"/> <line number="963" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="964" hits="1"/> <line number="965" hits="1"/> <line number="968" hits="1"/> <line number="969" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="970" hits="1"/> <line number="975" hits="1"/> <line number="978" hits="1"/> <line number="990" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="991" hits="1"/> <line number="992" hits="1"/> <line number="993" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="994" hits="1"/> <line number="996" hits="1"/> <line number="997" hits="1"/> <line number="998" hits="1"/> <line number="1001" hits="1"/> <line number="1006" hits="1"/> <line number="1008" hits="1"/> <line number="1009" hits="1"/> <line number="1010" hits="1"/> <line number="1011" hits="1"/> <line number="1014" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1015" hits="1"/> <line number="1016" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1018" hits="1"/> <line number="1019" hits="1"/> <line number="1020" hits="1"/> <line number="1022" hits="1"/> <line number="1030" hits="1"/> <line number="1031" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1032" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1033" hits="1"/> <line number="1034" hits="1"/> <line number="1035" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1036" hits="1"/> <line number="1037" hits="1"/> <line number="1038" hits="1"/> <line number="1040" hits="1"/> <line number="1047" hits="1"/> <line number="1050" hits="1"/> <line number="1063" hits="1"/> <line number="1069" hits="1"/> <line number="1072" hits="1"/> <line number="1075" hits="1"/> <line number="1077" hits="0"/> <line number="1078" hits="0"/> <line number="1081" hits="0"/> <line number="1084" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1085,1087"/> <line number="1085" hits="0"/> <line number="1087" hits="0"/> <line number="1090" hits="0"/> <line number="1091" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1092,1095"/> <line number="1092" hits="0"/> <line number="1093" hits="0"/> <line number="1095" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1096,1099"/> <line number="1096" hits="0"/> <line number="1097" hits="0"/> <line number="1099" hits="0"/> <line number="1100" hits="0"/> <line number="1101" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1102,1103"/> <line number="1102" hits="0"/> <line number="1103" hits="0"/> <line number="1104" hits="0"/> <line number="1105" hits="0"/> <line number="1106" hits="0"/> <line number="1108" hits="1"/> <line number="1110" hits="0"/> <line number="1112" hits="0"/> <line number="1114" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1115,1119"/> <line number="1115" hits="0"/> <line number="1116" hits="0"/> <line number="1119" hits="0"/> <line number="1122" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1123,1125"/> <line number="1123" hits="0"/> <line number="1125" hits="0"/> <line number="1128" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1129,1131"/> <line number="1129" hits="0"/> <line number="1131" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1133,1144"/> <line number="1133" hits="0"/> <line number="1134" hits="0"/> <line number="1135" hits="0"/> <line number="1136" hits="0"/> <line number="1137" hits="0"/> <line number="1139" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1140,1142"/> <line number="1140" hits="0"/> <line number="1142" hits="0"/> <line number="1144" hits="0"/> <line number="1145" hits="0"/> <line number="1146" hits="0"/> <line number="1147" hits="0"/> <line number="1148" hits="0"/> <line number="1149" hits="0"/> <line number="1150" hits="0"/> <line number="1153" hits="1"/> <line number="1154" hits="1"/> <line number="1155" hits="1"/> <line number="1156" hits="1"/> <line number="1160" hits="1"/> <line number="1162" hits="1"/> <line number="1165" hits="1"/> <line number="1168" hits="1"/> <line number="1178" hits="1"/> <line number="1179" hits="1"/> <line number="1185" hits="1"/> <line number="1188" hits="1"/> <line number="1189" hits="1"/> <line number="1197" hits="1"/> <line number="1198" hits="1"/> <line number="1200" hits="1"/> <line number="1201" hits="1"/> <line number="1209" hits="0"/> <line number="1212" hits="0"/> <line number="1214" hits="0"/> <line number="1215" hits="0"/> <line number="1218" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1219,1222"/> <line number="1219" hits="0"/> <line number="1222" hits="0"/> <line number="1224" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1226,1237"/> <line number="1226" hits="0"/> <line number="1227" hits="0"/> <line number="1229" hits="0"/> <line number="1230" hits="0"/> <line number="1237" hits="0"/> <line number="1238" hits="0"/> <line number="1239" hits="0"/> <line number="1240" hits="0"/> <line number="1242" hits="1"/> <line number="1243" hits="1"/> <line number="1249" hits="1"/> <line number="1251" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1252" hits="1"/> <line number="1254" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1255"/> <line number="1255" hits="0"/> <line number="1257" hits="1"/> <line number="1267" hits="1"/> <line number="1269" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1270" hits="1"/> <line number="1271" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1272" hits="1"/> <line number="1273" hits="1"/> <line number="1274" hits="1"/> <line number="1275" hits="1"/> <line number="1276" hits="1"/> <line number="1278" hits="1"/> <line number="1279" hits="1"/> <line number="1280" hits="1"/> <line number="1282" hits="1"/> <line number="1285" hits="1"/> <line number="1286" hits="1"/> <line number="1296" hits="1"/> <line number="1299" hits="1"/> <line number="1301" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1302"/> <line number="1302" hits="0"/> <line number="1305" hits="1"/> <line number="1307" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1308" hits="1"/> <line number="1309" hits="1"/> <line number="1312" hits="1"/> <line number="1313" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1314" hits="1"/> <line number="1317" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1322"/> <line number="1318" hits="1"/> <line number="1319" hits="1"/> <line number="1322" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1307"/> <line number="1323" hits="1"/> <line number="1324" hits="1"/> <line number="1326" hits="1"/> <line number="1328" hits="1"/> <line number="1329" hits="1"/> <line number="1339" hits="1"/> <line number="1342" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1343"/> <line number="1343" hits="0"/> <line number="1345" hits="1"/> <line number="1346" hits="1"/> <line number="1349" hits="1"/> <line number="1351" hits="1"/> <line number="1352" hits="1"/> <line number="1362" hits="1"/> <line number="1365" hits="1"/> <line number="1366" hits="1"/> <line number="1368" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1369" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1370" hits="1"/> <line number="1371" hits="1"/> <line number="1372" hits="1"/> <line number="1374" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1375"/> <line number="1375" hits="0"/> <line number="1378" hits="1"/> <line number="1380" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1381" hits="1"/> <line number="1382" hits="1"/> <line number="1385" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1390"/> <line number="1386" hits="1"/> <line number="1387" hits="1"/> <line number="1390" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1380"/> <line number="1391" hits="1"/> <line number="1392" hits="1"/> <line number="1394" hits="1"/> <line number="1396" hits="1"/> <line number="1397" hits="1"/> <line number="1407" hits="1"/> <line number="1410" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1411"/> <line number="1411" hits="0"/> <line number="1414" hits="1"/> <line number="1416" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1417"/> <line number="1417" hits="0"/> <line number="1420" hits="1"/> <line number="1421" hits="1"/> <line number="1423" hits="1"/> <line number="1425" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1426" hits="1"/> <line number="1427" hits="1"/> <line number="1429" hits="1"/> <line number="1431" hits="1"/> <line number="1432" hits="1"/> <line number="1443" hits="0"/> <line number="1445" hits="1"/> <line number="1446" hits="1"/> <line number="1464" hits="0"/> <line number="1465" hits="0"/> <line number="1467" hits="1"/> <line number="1468" hits="1"/> <line number="1479" hits="0"/> <line number="1481" hits="1"/> <line number="1482" hits="1"/> <line number="1493" hits="0"/> <line number="1496" hits="1"/> <line number="1497" hits="1"/> <line number="1508" hits="0"/> <line number="1510" hits="0"/> <line number="1511" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1513,1520"/> <line number="1513" hits="0"/> <line number="1514" hits="0"/> <line number="1515" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1516,1518"/> <line number="1516" hits="0"/> <line number="1518" hits="0"/> <line number="1520" hits="0"/> <line number="1523" hits="0"/> <line number="1524" hits="0"/> <line number="1526" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1527,1530"/> <line number="1527" hits="0"/> <line number="1528" hits="0"/> <line number="1530" hits="0"/> <line number="1531" hits="0"/> <line number="1532" hits="0"/> <line number="1534" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1535,1537"/> <line number="1535" hits="0"/> <line number="1537" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1538,1541"/> <line number="1538" hits="0"/> <line number="1539" hits="0"/> <line number="1541" hits="0"/> <line number="1542" hits="0"/> <line number="1543" hits="0"/> <line number="1544" hits="0"/> <line number="1546" hits="1"/> <line number="1547" hits="1"/> <line number="1554" hits="1"/> <line number="1556" hits="1"/> <line number="1557" hits="1"/> <line number="1558" hits="1"/> <line number="1560" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="1561" hits="1"/> <line number="1562" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1560"/> <line number="1563" hits="1"/> <line number="1564" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1567"/> <line number="1565" hits="1"/> <line number="1567" hits="1"/> <line number="1568" hits="1"/> <line number="1569" hits="1"/> <line number="1571" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1573"/> <line number="1572" hits="1"/> <line number="1573" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1574,1577"/> <line number="1574" hits="0"/> <line number="1577" hits="1"/> <line number="1578" hits="1"/> <line number="1579" hits="1"/> <line number="1581" hits="1"/> <line number="1582" hits="0"/> <line number="1583" hits="0"/> <line number="1584" hits="0"/> <line number="1586" hits="1"/> <line number="1587" hits="1"/> <line number="1598" hits="1"/> <line number="1600" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1603"/> <line number="1601" hits="1"/> <line number="1603" hits="0"/> <line number="1604" hits="0"/> <line number="1606" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1607,1610"/> <line number="1607" hits="0"/> <line number="1610" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1611,1617"/> <line number="1611" hits="0"/> <line number="1612" hits="0"/> <line number="1613" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1614,1615"/> <line number="1614" hits="0"/> <line number="1615" hits="0"/> <line number="1617" hits="0"/> <line number="1619" hits="0"/> <line number="1620" hits="0"/> <line number="1622" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1623,1645"/> <line number="1623" hits="0"/> <line number="1624" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1625,1627"/> <line number="1625" hits="0"/> <line number="1627" hits="0"/> <line number="1628" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1629,1639"/> <line number="1629" hits="0"/> <line number="1630" hits="0"/> <line number="1631" hits="0"/> <line number="1632" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1628,1633"/> <line number="1633" hits="0"/> <line number="1634" hits="0"/> <line number="1635" hits="0"/> <line number="1636" hits="0"/> <line number="1637" hits="0"/> <line number="1639" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1622,1640"/> <line number="1640" hits="0"/> <line number="1641" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1642,1643"/> <line number="1642" hits="0"/> <line number="1643" hits="0"/> <line number="1645" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1646,1648"/> <line number="1646" hits="0"/> <line number="1648" hits="0"/> <line number="1649" hits="0"/> <line number="1650" hits="0"/> <line number="1651" hits="0"/> <line number="1653" hits="1"/> <line number="1654" hits="1"/> <line number="1664" hits="0"/> <line number="1666" hits="0"/> <line number="1667" hits="0"/> <line number="1669" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1670,1673"/> <line number="1670" hits="0"/> <line number="1671" hits="0"/> <line number="1673" hits="0"/> <line number="1674" hits="0"/> <line number="1675" hits="0"/> <line number="1678" hits="0"/> <line number="1679" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1680,1681"/> <line number="1680" hits="0"/> <line number="1681" hits="0"/> <line number="1683" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1684,1687"/> <line number="1684" hits="0"/> <line number="1685" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1686,1692"/> <line number="1686" hits="0"/> <line number="1687" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1688,1692"/> <line number="1688" hits="0"/> <line number="1689" hits="0"/> <line number="1692" hits="0"/> <line number="1693" hits="0"/> <line number="1696" hits="0"/> <line number="1697" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1698,1715"/> <line number="1698" hits="0"/> <line number="1699" hits="0"/> <line number="1700" hits="0"/> <line number="1702" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1703,1707"/> <line number="1703" hits="0"/> <line number="1704" hits="0"/> <line number="1705" hits="0"/> <line number="1707" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1708,1710"/> <line number="1708" hits="0"/> <line number="1710" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1711,1715"/> <line number="1711" hits="0"/> <line number="1712" hits="0"/> <line number="1713" hits="0"/> <line number="1715" hits="0"/> <line number="1716" hits="0"/> <line number="1718" hits="0"/> <line number="1719" hits="0"/> <line number="1720" hits="0"/> <line number="1721" hits="0"/> <line number="1725" hits="1"/> <line number="1727" hits="1"/> <line number="1730" hits="1"/> <line number="1733" hits="1"/> <line number="1736" hits="1"/> <line number="1739" hits="1"/> <line number="1740" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="exit,1741"/> <line number="1741" hits="0"/> <line number="1742" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="1740,1743"/> <line number="1743" hits="0"/> <line number="1744" hits="0"/> <line number="1745" hits="0"/> <line number="1746" hits="0"/> <line number="1749" hits="1"/> <line number="1752" hits="1"/> <line number="1753" hits="1"/> <line number="1754" hits="1"/> <line number="1757" hits="1"/> <line number="1760" hits="1"/> <line number="1761" hits="0"/> <line number="1764" hits="0"/> <line number="1767" hits="0"/> <line number="1769" hits="0"/> <line number="1770" hits="0"/> <line number="1771" hits="0"/> <line number="1773" hits="0"/> <line number="1776" hits="1"/> <line number="1779" hits="1"/> <line number="1780" hits="1"/> <line number="1781" hits="1"/> <line number="1782" hits="1"/> <line number="1783" hits="1"/> <line number="1784" hits="1"/> <line number="1786" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="1787"/> <line number="1787" hits="0"/> </lines> </class> <class name="mcp_tools.py" filename="mcp_tools.py" complexity="0" line-rate="0.7315" branch-rate="0.6375"> <methods/> <lines> <line number="9" hits="1"/> <line number="10" hits="1"/> <line number="11" hits="1"/> <line number="12" hits="1"/> <line number="13" hits="1"/> <line number="14" hits="1"/> <line number="15" hits="1"/> <line number="17" hits="1"/> <line number="19" hits="1"/> <line number="22" hits="1"/> <line number="25" hits="1"/> <line number="26" hits="1"/> <line number="27" hits="1"/> <line number="30" hits="1"/> <line number="32" hits="1"/> <line number="33" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="34" hits="1"/> <line number="35" hits="1"/> <line number="37" hits="1"/> <line number="38" hits="1"/> <line number="39" hits="1"/> <line number="42" hits="1"/> <line number="43" hits="1"/> <line number="45" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="47" hits="1"/> <line number="48" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="49" hits="1"/> <line number="51" hits="1"/> <line number="52" hits="1"/> <line number="53" hits="1"/> <line number="54" hits="1"/> <line number="55" hits="1"/> <line number="58" hits="1"/> <line number="60" hits="0"/> <line number="62" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="64,67"/> <line number="64" hits="0"/> <line number="67" hits="0"/> <line number="70" hits="1"/> <line number="72" hits="1"/> <line number="74" hits="1"/> <line number="75" hits="1"/> <line number="78" hits="1"/> <line number="79" hits="0"/> <line number="80" hits="0"/> <line number="83" hits="1"/> <line number="86" hits="1"/> <line number="88" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="92"/> <line number="90" hits="1"/> <line number="92" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="99"/> <line number="93" hits="1"/> <line number="94" hits="1"/> <line number="95" hits="1"/> <line number="96" hits="0"/> <line number="97" hits="0"/> <line number="99" hits="0"/> <line number="102" hits="1"/> <line number="109" hits="1"/> <line number="110" hits="1"/> <line number="112" hits="1"/> <line number="113" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="115" hits="1"/> <line number="116" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="117" hits="1"/> <line number="120" hits="1"/> <line number="121" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="122" hits="1"/> <line number="123" hits="1"/> <line number="124" hits="1"/> <line number="125" hits="1"/> <line number="128" hits="1"/> <line number="129" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="134"/> <line number="130" hits="1"/> <line number="131" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="132" hits="1"/> <line number="134" hits="0"/> <line number="137" hits="1"/> <line number="138" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="139" hits="1"/> <line number="140" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="141" hits="1"/> <line number="143" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="144"/> <line number="144" hits="0"/> <line number="146" hits="1"/> <line number="147" hits="1"/> <line number="149" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="150" hits="1"/> <line number="151" hits="1"/> <line number="153" hits="1"/> <line number="154" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="158"/> <line number="155" hits="1"/> <line number="156" hits="1"/> <line number="158" hits="1"/> <line number="159" hits="1"/> <line number="160" hits="1"/> <line number="162" hits="1"/> <line number="163" hits="0"/> <line number="164" hits="0"/> <line number="165" hits="0"/> <line number="168" hits="1"/> <line number="176" hits="1"/> <line number="179" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="181"/> <line number="181" hits="0"/> <line number="182" hits="0"/> <line number="185" hits="1"/> <line number="186" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="187" hits="1"/> <line number="190" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="191" hits="1"/> <line number="193" hits="1"/> <line number="196" hits="1"/> <line number="197" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="198" hits="1"/> <line number="199" hits="1"/> <line number="201" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="202" hits="1"/> <line number="203" hits="1"/> <line number="205" hits="1"/> <line number="206" hits="1"/> <line number="207" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="208" hits="1"/> <line number="209" hits="1"/> <line number="210" hits="0"/> <line number="211" hits="0"/> <line number="212" hits="0"/> <line number="215" hits="1"/> <line number="225" hits="1"/> <line number="227" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="228" hits="1"/> <line number="231" hits="1"/> <line number="232" hits="1"/> <line number="233" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="234"/> <line number="234" hits="0"/> <line number="235" hits="0"/> <line number="237" hits="1"/> <line number="238" hits="1"/> <line number="239" hits="1"/> <line number="241" hits="1"/> <line number="243" hits="1"/> <line number="245" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="246" hits="1"/> <line number="247" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="248" hits="1"/> <line number="250" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="251" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="252" hits="1"/> <line number="254" hits="1"/> <line number="255" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="250"/> <line number="256" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="257" hits="1"/> <line number="258" hits="1"/> <line number="261" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="262" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="263"/> <line number="263" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="262,264"/> <line number="264" hits="0"/> <line number="265" hits="0"/> <line number="267" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="268,278"/> <line number="268" hits="0"/> <line number="269" hits="0"/> <line number="270" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="267,271"/> <line number="271" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="267,272"/> <line number="272" hits="0"/> <line number="273" hits="0"/> <line number="274" hits="0"/> <line number="275" hits="0"/> <line number="276" hits="0"/> <line number="278" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="262,279"/> <line number="279" hits="0"/> <line number="282" hits="1"/> <line number="284" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="285" hits="1"/> <line number="286" hits="1"/> <line number="288" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="294"/> <line number="289" hits="1"/> <line number="290" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="291" hits="1"/> <line number="292" hits="1"/> <line number="294" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="295"/> <line number="295" hits="0"/> <line number="296" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="297,299"/> <line number="297" hits="0"/> <line number="299" hits="1"/> <line number="301" hits="1"/> <line number="302" hits="1"/> <line number="305" hits="1"/> <line number="306" hits="1"/> <line number="308" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="310" hits="1"/> <line number="311" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="312" hits="1"/> <line number="314" hits="1"/> <line number="315" hits="0"/> <line number="316" hits="0"/> <line number="317" hits="0"/> <line number="320" hits="1"/> <line number="333" hits="1"/> <line number="335" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="336"/> <line number="336" hits="0"/> <line number="338" hits="1"/> <line number="339" hits="1"/> <line number="341" hits="1"/> <line number="343" hits="1"/> <line number="345" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="346" hits="1"/> <line number="347" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="348"/> <line number="348" hits="0"/> <line number="350" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="351" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="350"/> <line number="352" hits="1"/> <line number="354" hits="1"/> <line number="355" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="350"/> <line number="356" hits="1"/> <line number="357" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="350"/> <line number="358" hits="1"/> <line number="360" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="361" hits="1"/> <line number="362" hits="1"/> <line number="365" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="366" hits="1"/> <line number="367" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="368" hits="1"/> <line number="370" hits="1"/> <line number="372" hits="1"/> <line number="374" hits="1"/> <line number="376" hits="1"/> <line number="379" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="380"/> <line number="380" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="381,411"/> <line number="381" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="380,382"/> <line number="382" hits="0"/> <line number="384" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="380,385"/> <line number="385" hits="0"/> <line number="386" hits="0"/> <line number="387" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="384,388"/> <line number="388" hits="0"/> <line number="389" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="384,390"/> <line number="390" hits="0"/> <line number="392" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="393,406"/> <line number="393" hits="0"/> <line number="394" hits="0"/> <line number="396" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="397,398"/> <line number="397" hits="0"/> <line number="398" hits="0" branch="true" condition-coverage="0% (0/2)" missing-branches="399,401"/> <line number="399" hits="0"/> <line number="401" hits="0"/> <line number="402" hits="0"/> <line number="404" hits="0"/> <line number="406" hits="0"/> <line number="407" hits="0"/> <line number="408" hits="0"/> <line number="409" hits="0"/> <line number="411" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="414"/> <line number="412" hits="1"/> <line number="414" hits="0"/> <line number="415" hits="0"/> <line number="417" hits="0"/> <line number="418" hits="0"/> <line number="419" hits="0"/> <line number="422" hits="1"/> <line number="430" hits="1"/> <line number="433" hits="1"/> <line number="435" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="436"/> <line number="436" hits="0"/> <line number="438" hits="1"/> <line number="439" hits="1"/> <line number="440" hits="1"/> <line number="442" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="444" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="446" hits="1"/> <line number="447" hits="1"/> <line number="448" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="442"/> <line number="449" hits="1"/> <line number="450" hits="1"/> <line number="452" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="455"/> <line number="453" hits="1"/> <line number="455" hits="0"/> <line number="457" hits="1"/> <line number="458" hits="0"/> <line number="459" hits="0"/> <line number="460" hits="0"/> <line number="463" hits="1"/> <line number="471" hits="1"/> <line number="473" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="474"/> <line number="474" hits="0"/> <line number="477" hits="1"/> <line number="488" hits="1"/> <line number="489" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="490"/> <line number="490" hits="0"/> <line number="491" hits="0"/> <line number="493" hits="1"/> <line number="494" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="495"/> <line number="495" hits="0"/> <line number="497" hits="1"/> <line number="499" hits="1"/> <line number="500" hits="1"/> <line number="502" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="503" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="502"/> <line number="504" hits="1"/> <line number="506" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="507" hits="1"/> <line number="509" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="535"/> <line number="510" hits="1"/> <line number="511" hits="1"/> <line number="513" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="515" hits="1"/> <line number="516" hits="1"/> <line number="518" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="531"/> <line number="520" hits="1"/> <line number="521" hits="1"/> <line number="523" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="529"/> <line number="524" hits="1"/> <line number="525" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="526" hits="1"/> <line number="527" hits="1"/> <line number="529" hits="1"/> <line number="531" hits="0"/> <line number="533" hits="1"/> <line number="535" hits="0"/> <line number="537" hits="0"/> <line number="538" hits="0"/> <line number="539" hits="0"/> <line number="542" hits="1"/> <line number="544" hits="1"/> <line number="545" hits="1"/> <line number="546" hits="1"/> <line number="547" hits="1"/> </lines> </class> <class name="shutdown_handler.py" filename="shutdown_handler.py" complexity="0" line-rate="0.9688" branch-rate="0.8333"> <methods/> <lines> <line number="1" hits="1"/> <line number="2" hits="1"/> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="6" hits="1"/> <line number="11" hits="1"/> <line number="13" hits="1"/> <line number="14" hits="1"/> <line number="15" hits="1"/> <line number="18" hits="1"/> <line number="19" hits="1"/> <line number="22" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="23"/> <line number="23" hits="0"/> <line number="25" hits="1"/> <line number="34" hits="1"/> <line number="36" hits="1"/> <line number="44" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="46" hits="1"/> <line number="47" hits="1"/> <line number="49" hits="1"/> <line number="50" hits="1"/> <line number="52" hits="1"/> <line number="53" hits="1"/> <line number="56" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="57" hits="1"/> <line number="58" hits="1"/> <line number="59" hits="1"/> <line number="60" hits="1"/> <line number="61" hits="1"/> <line number="63" hits="1"/> <line number="64" hits="1"/> <line number="67" hits="1"/> </lines> </class> </classes> </package> <package name="tests" line-rate="0.9344" branch-rate="0.625" complexity="0"> <classes> <class name="__init__.py" filename="tests/__init__.py" complexity="0" line-rate="1" branch-rate="1"> <methods/> <lines/> </class> <class name="conftest.py" filename="tests/conftest.py" complexity="0" line-rate="0.8246" branch-rate="0.625"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="5" hits="1"/> <line number="6" hits="1"/> <line number="7" hits="1"/> <line number="8" hits="1"/> <line number="11" hits="1"/> <line number="12" hits="1"/> <line number="13" hits="1"/> <line number="16" hits="1"/> <line number="17" hits="1"/> <line number="18" hits="1"/> <line number="19" hits="1"/> <line number="20" hits="1"/> <line number="21" hits="1"/> <line number="24" hits="1"/> <line number="25" hits="1"/> <line number="27" hits="1"/> <line number="28" hits="1"/> <line number="31" hits="1"/> <line number="32" hits="1"/> <line number="34" hits="1"/> <line number="35" hits="1"/> <line number="38" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="39" hits="1"/> <line number="40" hits="1"/> <line number="43" hits="1"/> <line number="44" hits="1"/> <line number="45" hits="1"/> <line number="48" hits="1"/> <line number="49" hits="1"/> <line number="51" hits="1"/> <line number="60" hits="1"/> <line number="62" hits="1"/> <line number="65" hits="1"/> <line number="66" hits="1"/> <line number="68" hits="1"/> <line number="69" hits="1"/> <line number="72" hits="1"/> <line number="74" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="75" hits="1"/> <line number="76" hits="1"/> <line number="79" hits="1"/> <line number="80" hits="1"/> <line number="83" hits="1"/> <line number="92" hits="1"/> <line number="94" hits="1"/> <line number="97" hits="1"/> <line number="98" hits="1"/> <line number="100" hits="1"/> <line number="126" hits="1"/> <line number="127" hits="1"/> <line number="129" hits="0"/> <line number="131" hits="0"/> <line number="132" hits="0"/> <line number="142" hits="0"/> <line number="143" hits="0"/> <line number="145" hits="0"/> <line number="146" hits="0"/> <line number="149" hits="1"/> <line number="150" hits="1"/> <line number="152" hits="0"/> <line number="154" hits="0"/> <line number="155" hits="0"/> <line number="156" hits="0"/> <line number="157" hits="0"/> <line number="159" hits="0"/> <line number="160" hits="0"/> <line number="163" hits="1"/> <line number="164" hits="1"/> <line number="166" hits="0"/> <line number="167" hits="0"/> <line number="168" hits="0"/> <line number="169" hits="0"/> <line number="172" hits="1"/> <line number="173" hits="1"/> <line number="175" hits="1"/> <line number="178" hits="1"/> <line number="179" hits="1"/> <line number="181" hits="1"/> <line number="184" hits="1"/> <line number="185" hits="1"/> <line number="187" hits="1"/> <line number="190" hits="1"/> <line number="191" hits="1"/> <line number="193" hits="0"/> <line number="196" hits="1"/> <line number="197" hits="1"/> <line number="199" hits="0"/> <line number="202" hits="1"/> <line number="203" hits="1"/> <line number="206" hits="1"/> <line number="209" hits="1"/> <line number="212" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="214"/> <line number="213" hits="1"/> <line number="214" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="218"/> <line number="215" hits="1"/> <line number="218" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="221"/> <line number="219" hits="1"/> <line number="221" hits="1"/> <line number="224" hits="1"/> <line number="226" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="228"/> <line number="227" hits="1"/> <line number="228" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="231"/> <line number="229" hits="1"/> <line number="231" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="exit"/> <line number="232" hits="1"/> <line number="235" hits="1"/> <line number="236" hits="1"/> <line number="238" hits="1"/> <line number="266" hits="1"/> <line number="267" hits="1"/> <line number="269" hits="1"/> <line number="271" hits="1"/> </lines> </class> <class name="test_community_packages.py" filename="tests/test_community_packages.py" complexity="0" line-rate="1" branch-rate="1"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="5" hits="1"/> <line number="6" hits="1"/> <line number="7" hits="1"/> <line number="8" hits="1"/> <line number="9" hits="1"/> <line number="12" hits="1"/> <line number="14" hits="1"/> <line number="17" hits="1"/> <line number="20" hits="1"/> <line number="21" hits="1"/> <line number="23" hits="1"/> <line number="24" hits="1"/> <line number="26" hits="1"/> <line number="27" hits="1"/> <line number="29" hits="1"/> <line number="31" hits="1"/> <line number="33" hits="1"/> <line number="34" hits="1"/> <line number="35" hits="1"/> <line number="36" hits="1"/> <line number="38" hits="1"/> <line number="40" hits="1"/> <line number="41" hits="1"/> <line number="42" hits="1"/> <line number="43" hits="1"/> <line number="44" hits="1"/> <line number="45" hits="1"/> <line number="46" hits="1"/> <line number="47" hits="1"/> <line number="49" hits="1"/> <line number="52" hits="1"/> <line number="53" hits="1"/> <line number="54" hits="1"/> <line number="57" hits="1"/> <line number="58" hits="1"/> <line number="59" hits="1"/> <line number="61" hits="1"/> <line number="64" hits="1"/> <line number="65" hits="1"/> <line number="68" hits="1"/> <line number="69" hits="1"/> <line number="71" hits="1"/> <line number="73" hits="1"/> <line number="75" hits="1"/> <line number="77" hits="1"/> <line number="80" hits="1"/> <line number="81" hits="1"/> <line number="83" hits="1"/> <line number="87" hits="1"/> <line number="88" hits="1"/> <line number="90" hits="1"/> <line number="92" hits="1"/> <line number="94" hits="1"/> <line number="97" hits="1"/> <line number="98" hits="1"/> <line number="100" hits="1"/> <line number="104" hits="1"/> <line number="105" hits="1"/> <line number="107" hits="1"/> <line number="109" hits="1"/> <line number="111" hits="1"/> <line number="113" hits="1"/> <line number="116" hits="1"/> <line number="117" hits="1"/> <line number="118" hits="1"/> <line number="120" hits="1"/> <line number="124" hits="1"/> <line number="125" hits="1"/> <line number="128" hits="1"/> <line number="130" hits="1"/> <line number="131" hits="1"/> <line number="134" hits="1"/> <line number="135" hits="1"/> <line number="150" hits="1"/> <line number="151" hits="1"/> <line number="153" hits="1"/> <line number="155" hits="1"/> <line number="156" hits="1"/> <line number="157" hits="1"/> <line number="158" hits="1"/> <line number="159" hits="1"/> <line number="160" hits="1"/> <line number="161" hits="1"/> <line number="162" hits="1"/> <line number="164" hits="1"/> <line number="166" hits="1"/> <line number="178" hits="1"/> <line number="180" hits="1"/> <line number="181" hits="1"/> <line number="182" hits="1"/> <line number="184" hits="1"/> <line number="186" hits="1"/> <line number="188" hits="1"/> <line number="189" hits="1"/> <line number="190" hits="1"/> <line number="193" hits="1"/> <line number="194" hits="1"/> <line number="195" hits="1"/> <line number="196" hits="1"/> <line number="199" hits="1"/> <line number="200" hits="1"/> <line number="201" hits="1"/> <line number="202" hits="1"/> <line number="203" hits="1"/> <line number="205" hits="1"/> <line number="207" hits="1"/> <line number="208" hits="1"/> <line number="210" hits="1"/> <line number="212" hits="1"/> <line number="213" hits="1"/> <line number="214" hits="1"/> <line number="216" hits="1"/> <line number="218" hits="1"/> <line number="253" hits="1"/> <line number="255" hits="1"/> <line number="256" hits="1"/> <line number="257" hits="1"/> <line number="258" hits="1"/> <line number="259" hits="1"/> <line number="260" hits="1"/> <line number="261" hits="1"/> <line number="263" hits="1"/> <line number="264" hits="1"/> <line number="265" hits="1"/> <line number="267" hits="1"/> <line number="270" hits="1"/> <line number="271" hits="1"/> <line number="272" hits="1"/> <line number="275" hits="1"/> <line number="276" hits="1"/> <line number="277" hits="1"/> <line number="280" hits="1"/> <line number="281" hits="1"/> <line number="282" hits="1"/> <line number="284" hits="1"/> <line number="285" hits="1"/> <line number="288" hits="1"/> <line number="289" hits="1"/> <line number="301" hits="1"/> <line number="302" hits="1"/> <line number="305" hits="1"/> <line number="313" hits="1"/> <line number="315" hits="1"/> <line number="317" hits="1"/> <line number="318" hits="1"/> <line number="321" hits="1"/> <line number="322" hits="1"/> <line number="323" hits="1"/> <line number="324" hits="1"/> <line number="325" hits="1"/> <line number="327" hits="1"/> <line number="329" hits="1"/> <line number="331" hits="1"/> <line number="332" hits="1"/> <line number="333" hits="1"/> <line number="334" hits="1"/> <line number="335" hits="1"/> <line number="336" hits="1"/> <line number="339" hits="1"/> <line number="340" hits="1"/> <line number="341" hits="1"/> <line number="342" hits="1"/> <line number="344" hits="1"/> <line number="346" hits="1"/> <line number="347" hits="1"/> <line number="350" hits="1"/> <line number="351" hits="1"/> <line number="352" hits="1"/> <line number="353" hits="1"/> <line number="354" hits="1"/> <line number="355" hits="1"/> <line number="356" hits="1"/> <line number="357" hits="1"/> <line number="358" hits="1"/> <line number="359" hits="1"/> <line number="362" hits="1"/> <line number="363" hits="1"/> <line number="364" hits="1"/> <line number="365" hits="1"/> <line number="366" hits="1"/> <line number="368" hits="1"/> <line number="371" hits="1"/> <line number="372" hits="1"/> <line number="373" hits="1"/> <line number="374" hits="1"/> <line number="375" hits="1"/> <line number="376" hits="1"/> <line number="377" hits="1"/> <line number="378" hits="1"/> </lines> </class> </classes> </package> <package name="tests.integration" line-rate="0.9956" branch-rate="1" complexity="0"> <classes> <class name="__init__.py" filename="tests/integration/__init__.py" complexity="0" line-rate="1" branch-rate="1"> <methods/> <lines/> </class> <class name="test_complete_workflows.py" filename="tests/integration/test_complete_workflows.py" complexity="0" line-rate="0.9956" branch-rate="1"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="6" hits="1"/> <line number="7" hits="1"/> <line number="10" hits="1"/> <line number="11" hits="1"/> <line number="14" hits="1"/> <line number="17" hits="1"/> <line number="24" hits="1"/> <line number="25" hits="1"/> <line number="26" hits="1"/> <line number="27" hits="1"/> <line number="28" hits="1"/> <line number="31" hits="1"/> <line number="32" hits="1"/> <line number="39" hits="1"/> <line number="40" hits="1"/> <line number="41" hits="1"/> <line number="44" hits="1"/> <line number="45" hits="1"/> <line number="46" hits="1"/> <line number="47" hits="1"/> <line number="50" hits="1"/> <line number="53" hits="1"/> <line number="54" hits="1"/> <line number="55" hits="1"/> <line number="58" hits="1"/> <line number="60" hits="1"/> <line number="61" hits="1"/> <line number="62" hits="1"/> <line number="64" hits="1"/> <line number="66" hits="1"/> <line number="68" hits="1"/> <line number="69" hits="1"/> <line number="71" hits="1"/> <line number="72" hits="1"/> <line number="75" hits="1"/> <line number="76" hits="1"/> <line number="78" hits="1"/> <line number="79" hits="1"/> <line number="82" hits="1"/> <line number="83" hits="1"/> <line number="85" hits="1"/> <line number="88" hits="1"/> <line number="89" hits="1"/> <line number="90" hits="1"/> <line number="92" hits="1"/> <line number="93" hits="1"/> <line number="95" hits="1"/> <line number="97" hits="1"/> <line number="100" hits="1"/> <line number="103" hits="1"/> <line number="104" hits="1"/> <line number="105" hits="1"/> <line number="108" hits="1"/> <line number="109" hits="1"/> <line number="110" hits="1"/> <line number="114" hits="1"/> <line number="115" hits="1"/> <line number="116" hits="1"/> <line number="119" hits="1"/> <line number="120" hits="1"/> <line number="121" hits="1"/> <line number="124" hits="1"/> <line number="125" hits="1"/> <line number="128" hits="1"/> <line number="130" hits="1"/> <line number="132" hits="1"/> <line number="134" hits="1"/> <line number="136" hits="1"/> <line number="139" hits="1"/> <line number="140" hits="1"/> <line number="141" hits="1"/> <line number="143" hits="1"/> <line number="147" hits="1"/> <line number="148" hits="1"/> <line number="150" hits="1"/> <line number="152" hits="1"/> <line number="155" hits="1"/> <line number="158" hits="1"/> <line number="159" hits="1"/> <line number="160" hits="1"/> <line number="161" hits="1"/> <line number="164" hits="1"/> <line number="165" hits="1"/> <line number="168" hits="1"/> <line number="171" hits="1"/> <line number="172" hits="1"/> <line number="174" hits="1"/> <line number="177" hits="1"/> <line number="178" hits="1"/> <line number="179" hits="1"/> <line number="180" hits="1"/> <line number="182" hits="1"/> <line number="185" hits="1"/> <line number="186" hits="1"/> <line number="188" hits="1"/> <line number="191" hits="1"/> <line number="192" hits="1"/> <line number="193" hits="0"/> <line number="194" hits="1"/> <line number="196" hits="1"/> <line number="198" hits="1"/> <line number="200" hits="1"/> <line number="203" hits="1"/> <line number="204" hits="1"/> <line number="205" hits="1"/> <line number="206" hits="1"/> <line number="207" hits="1"/> <line number="208" hits="1"/> <line number="211" hits="1"/> <line number="214" hits="1"/> <line number="215" hits="1"/> <line number="218" hits="1"/> <line number="219" hits="1"/> <line number="222" hits="1"/> <line number="224" hits="1"/> <line number="227" hits="1"/> <line number="230" hits="1"/> <line number="231" hits="1"/> <line number="232" hits="1"/> <line number="235" hits="1"/> <line number="236" hits="1"/> <line number="239" hits="1"/> <line number="242" hits="1"/> <line number="245" hits="1"/> <line number="246" hits="1"/> <line number="249" hits="1"/> <line number="250" hits="1"/> <line number="251" hits="1"/> <line number="253" hits="1"/> <line number="255" hits="1"/> <line number="258" hits="1"/> <line number="261" hits="1"/> <line number="262" hits="1"/> <line number="263" hits="1"/> <line number="265" hits="1"/> <line number="267" hits="1"/> <line number="268" hits="1"/> <line number="271" hits="1"/> <line number="276" hits="1"/> <line number="277" hits="1"/> <line number="278" hits="1"/> <line number="279" hits="1"/> <line number="281" hits="1"/> <line number="283" hits="1"/> <line number="286" hits="1"/> <line number="287" hits="1"/> <line number="290" hits="1"/> <line number="291" hits="1"/> <line number="294" hits="1"/> <line number="297" hits="1"/> <line number="298" hits="1"/> <line number="301" hits="1"/> <line number="302" hits="1"/> <line number="305" hits="1"/> <line number="307" hits="1"/> <line number="310" hits="1"/> <line number="311" hits="1"/> <line number="312" hits="1"/> <line number="313" hits="1"/> <line number="316" hits="1"/> <line number="317" hits="1"/> <line number="320" hits="1"/> <line number="321" hits="1"/> <line number="324" hits="1"/> <line number="330" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="331" hits="1"/> <line number="333" hits="1"/> <line number="335" hits="1"/> <line number="337" hits="1"/> <line number="339" hits="1"/> <line number="343" hits="1"/> <line number="344" hits="1"/> <line number="347" hits="1"/> <line number="348" hits="1"/> <line number="351" hits="1"/> <line number="354" hits="1"/> <line number="355" hits="1"/> <line number="356" hits="1"/> <line number="359" hits="1"/> <line number="360" hits="1"/> <line number="361" hits="1"/> <line number="364" hits="1"/> <line number="365" hits="1"/> <line number="368" hits="1"/> <line number="370" hits="1"/> <line number="373" hits="1"/> <line number="374" hits="1"/> <line number="375" hits="1"/> <line number="378" hits="1"/> <line number="379" hits="1"/> <line number="382" hits="1"/> <line number="383" hits="1"/> <line number="384" hits="1"/> <line number="387" hits="1"/> <line number="388" hits="1"/> <line number="389" hits="1"/> <line number="390" hits="1"/> <line number="392" hits="1"/> <line number="394" hits="1"/> <line number="397" hits="1"/> <line number="399" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="400" hits="1"/> <line number="401" hits="1"/> <line number="404" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="405" hits="1"/> <line number="406" hits="1"/> <line number="409" hits="1"/> <line number="410" hits="1"/> <line number="412" hits="1"/> <line number="414" hits="1"/> <line number="416" hits="1"/> <line number="419" hits="1"/> <line number="420" hits="1"/> <line number="422" hits="1"/> <line number="424" hits="1"/> <line number="427" hits="1"/> <line number="428" hits="1"/> <line number="429" hits="1"/> <line number="430" hits="1"/> <line number="433" hits="1"/> <line number="434" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="435" hits="1"/> <line number="436" hits="1"/> <line number="439" hits="1"/> <line number="440" hits="1"/> </lines> </class> </classes> </package> <package name="tests.unit" line-rate="0.9857" branch-rate="0.84" complexity="0"> <classes> <class name="__init__.py" filename="tests/unit/__init__.py" complexity="0" line-rate="1" branch-rate="1"> <methods/> <lines/> </class> <class name="test_asset_filtering.py" filename="tests/unit/test_asset_filtering.py" complexity="0" line-rate="1" branch-rate="1"> <methods/> <lines> <line number="2" hits="1"/> <line number="5" hits="1"/> <line number="8" hits="1"/> <line number="10" hits="1"/> <line number="13" hits="1"/> <line number="14" hits="1"/> <line number="15" hits="1"/> <line number="18" hits="1"/> <line number="19" hits="1"/> <line number="20" hits="1"/> <line number="23" hits="1"/> <line number="24" hits="1"/> <line number="25" hits="1"/> <line number="26" hits="1"/> <line number="27" hits="1"/> <line number="30" hits="1"/> <line number="31" hits="1"/> <line number="32" hits="1"/> <line number="33" hits="1"/> <line number="36" hits="1"/> <line number="38" hits="1"/> <line number="40" hits="1"/> <line number="43" hits="1"/> <line number="44" hits="1"/> <line number="45" hits="1"/> <line number="48" hits="1"/> <line number="49" hits="1"/> <line number="52" hits="1"/> <line number="53" hits="1"/> <line number="56" hits="1"/> <line number="57" hits="1"/> <line number="60" hits="1"/> <line number="61" hits="1"/> <line number="64" hits="1"/> <line number="65" hits="1"/> <line number="67" hits="1"/> <line number="69" hits="1"/> <line number="72" hits="1"/> <line number="73" hits="1"/> <line number="74" hits="1"/> <line number="75" hits="1"/> <line number="78" hits="1"/> <line number="79" hits="1"/> <line number="82" hits="1"/> <line number="83" hits="1"/> <line number="85" hits="1"/> <line number="87" hits="1"/> <line number="90" hits="1"/> <line number="91" hits="1"/> <line number="92" hits="1"/> <line number="95" hits="1"/> <line number="96" hits="1"/> <line number="99" hits="1"/> <line number="100" hits="1"/> <line number="101" hits="1"/> </lines> </class> <class name="test_cache_management.py" filename="tests/unit/test_cache_management.py" complexity="0" line-rate="0.973" branch-rate="1"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="5" hits="1"/> <line number="6" hits="1"/> <line number="9" hits="1"/> <line number="12" hits="1"/> <line number="14" hits="1"/> <line number="16" hits="1"/> <line number="18" hits="1"/> <line number="20" hits="1"/> <line number="23" hits="1"/> <line number="25" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="26" hits="1"/> <line number="27" hits="1"/> <line number="30" hits="1"/> <line number="31" hits="1"/> <line number="34" hits="1"/> <line number="37" hits="1"/> <line number="40" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="41" hits="1"/> <line number="44" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="45" hits="1"/> <line number="48" hits="1"/> <line number="50" hits="1"/> <line number="52" hits="1"/> <line number="54" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="55" hits="1"/> <line number="58" hits="1"/> <line number="60" hits="1"/> <line number="62" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="63" hits="1"/> <line number="66" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="67" hits="1"/> <line number="69" hits="1"/> <line number="72" hits="1"/> <line number="73" hits="1"/> <line number="75" hits="1"/> <line number="76" hits="1"/> <line number="79" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="80" hits="1"/> <line number="81" hits="1"/> <line number="84" hits="1"/> <line number="85" hits="1"/> <line number="88" hits="1"/> <line number="91" hits="1"/> <line number="94" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="95" hits="1"/> <line number="96" hits="1"/> <line number="98" hits="1"/> <line number="100" hits="1"/> <line number="101" hits="1"/> <line number="103" hits="1"/> <line number="105" hits="1"/> <line number="106" hits="1"/> <line number="107" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="108" hits="1"/> <line number="109" hits="1"/> <line number="110" hits="0"/> <line number="111" hits="0"/> <line number="114" hits="1"/> <line number="115" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="116" hits="1"/> <line number="117" hits="1"/> <line number="118" hits="1"/> <line number="121" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="122" hits="1"/> <line number="125" hits="1"/> <line number="128" hits="1"/> <line number="131" hits="1"/> <line number="133" hits="1"/> <line number="135" hits="1"/> <line number="137" hits="1"/> <line number="139" hits="1"/> <line number="141" hits="1"/> <line number="142" hits="1"/> <line number="143" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="144" hits="1"/> <line number="145" hits="1"/> <line number="146" hits="0"/> <line number="147" hits="0"/> <line number="150" hits="1"/> <line number="151" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="152" hits="1"/> <line number="153" hits="1"/> <line number="154" hits="1"/> <line number="157" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="158" hits="1"/> <line number="161" hits="1"/> <line number="164" hits="1"/> <line number="165" hits="1"/> <line number="167" hits="1"/> <line number="169" hits="1"/> <line number="171" hits="1"/> <line number="173" hits="1"/> <line number="174" hits="1"/> <line number="177" hits="1"/> <line number="178" hits="1"/> <line number="179" hits="1"/> <line number="182" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="183" hits="1"/> <line number="186" hits="1"/> <line number="187" hits="1"/> <line number="190" hits="1"/> <line number="194" hits="1"/> <line number="197" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="198" hits="1"/> <line number="201" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="202" hits="1"/> <line number="203" hits="1"/> <line number="205" hits="1"/> <line number="208" hits="1"/> <line number="209" hits="1"/> <line number="210" hits="1"/> <line number="213" hits="1"/> <line number="214" hits="1"/> <line number="217" hits="1"/> <line number="218" hits="1"/> <line number="219" hits="1"/> <line number="221" hits="1"/> <line number="223" hits="1"/> <line number="226" hits="1"/> <line number="227" hits="1"/> <line number="228" hits="1"/> <line number="231" hits="1"/> <line number="232" hits="1"/> <line number="234" hits="1"/> <line number="236" hits="1"/> <line number="237" hits="1"/> <line number="240" hits="1"/> <line number="241" hits="1"/> <line number="242" hits="1"/> <line number="244" hits="1"/> <line number="246" hits="1"/> <line number="247" hits="1"/> <line number="248" hits="1"/> <line number="249" hits="1"/> <line number="251" hits="1"/> <line number="253" hits="1"/> <line number="255" hits="1"/> <line number="257" hits="1"/> <line number="258" hits="1"/> <line number="259" hits="1"/> <line number="261" hits="1"/> <line number="262" hits="1"/> <line number="263" hits="1"/> <line number="266" hits="1"/> <line number="269" hits="1"/> <line number="270" hits="1"/> </lines> </class> <class name="test_content_validation.py" filename="tests/unit/test_content_validation.py" complexity="0" line-rate="1" branch-rate="1"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="7" hits="1"/> <line number="10" hits="1"/> <line number="11" hits="1"/> <line number="13" hits="1"/> <line number="15" hits="1"/> <line number="17" hits="1"/> <line number="33" hits="1"/> <line number="35" hits="1"/> <line number="37" hits="1"/> <line number="53" hits="1"/> <line number="55" hits="1"/> <line number="57" hits="1"/> <line number="69" hits="1"/> <line number="71" hits="1"/> <line number="73" hits="1"/> <line number="85" hits="1"/> <line number="87" hits="1"/> <line number="89" hits="1"/> <line number="91" hits="1"/> <line number="93" hits="1"/> <line number="96" hits="1"/> <line number="104" hits="1"/> <line number="106" hits="1"/> <line number="108" hits="1"/> <line number="117" hits="1"/> <line number="119" hits="1"/> <line number="121" hits="1"/> <line number="135" hits="1"/> <line number="137" hits="1"/> <line number="139" hits="1"/> <line number="141" hits="1"/> <line number="143" hits="1"/> <line number="144" hits="1"/> <line number="146" hits="1"/> <line number="148" hits="1"/> <line number="176" hits="1"/> <line number="178" hits="1"/> <line number="180" hits="1"/> <line number="196" hits="1"/> <line number="198" hits="1"/> <line number="200" hits="1"/> <line number="208" hits="1"/> <line number="210" hits="1"/> <line number="212" hits="1"/> <line number="220" hits="1"/> <line number="222" hits="1"/> <line number="224" hits="1"/> <line number="249" hits="1"/> <line number="251" hits="1"/> <line number="254" hits="1"/> <line number="255" hits="1"/> <line number="258" hits="1"/> <line number="259" hits="1"/> <line number="262" hits="1"/> <line number="264" hits="1"/> <line number="266" hits="1"/> </lines> </class> <class name="test_docs_updater.py" filename="tests/unit/test_docs_updater.py" complexity="0" line-rate="0.9987" branch-rate="0.5"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="5" hits="1"/> <line number="6" hits="1"/> <line number="7" hits="1"/> <line number="8" hits="1"/> <line number="9" hits="1"/> <line number="10" hits="1"/> <line number="12" hits="1"/> <line number="26" hits="1"/> <line number="29" hits="1"/> <line number="31" hits="1"/> <line number="33" hits="1"/> <line number="34" hits="1"/> <line number="35" hits="1"/> <line number="36" hits="1"/> <line number="37" hits="1"/> <line number="40" hits="1"/> <line number="41" hits="1"/> <line number="43" hits="1"/> <line number="44" hits="1"/> <line number="46" hits="1"/> <line number="47" hits="1"/> <line number="57" hits="1"/> <line number="58" hits="1"/> <line number="60" hits="1"/> <line number="62" hits="1"/> <line number="64" hits="1"/> <line number="65" hits="1"/> <line number="66" hits="1"/> <line number="67" hits="1"/> <line number="69" hits="1"/> <line number="70" hits="1"/> <line number="72" hits="1"/> <line number="76" hits="1"/> <line number="77" hits="1"/> <line number="79" hits="1"/> <line number="80" hits="1"/> <line number="84" hits="1"/> <line number="89" hits="1"/> <line number="90" hits="1"/> <line number="100" hits="1"/> <line number="101" hits="1"/> <line number="103" hits="1"/> <line number="104" hits="1"/> <line number="107" hits="1"/> <line number="108" hits="1"/> <line number="109" hits="1"/> <line number="111" hits="1"/> <line number="113" hits="1"/> <line number="119" hits="1"/> <line number="121" hits="1"/> <line number="122" hits="1"/> <line number="124" hits="1"/> <line number="127" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="130"/> <line number="128" hits="1"/> <line number="130" hits="1"/> <line number="131" hits="1"/> <line number="133" hits="1"/> <line number="135" hits="1"/> <line number="137" hits="1"/> <line number="138" hits="1"/> <line number="140" hits="1"/> <line number="142" hits="1"/> <line number="148" hits="1"/> <line number="150" hits="1"/> <line number="151" hits="1"/> <line number="152" hits="1"/> <line number="154" hits="1"/> <line number="155" hits="1"/> <line number="156" hits="1"/> <line number="157" hits="1"/> <line number="158" hits="1"/> <line number="161" hits="1"/> <line number="162" hits="1"/> <line number="165" hits="1"/> <line number="166" hits="1"/> <line number="167" hits="1"/> <line number="168" hits="1"/> <line number="171" hits="1"/> <line number="174" hits="1"/> <line number="175" hits="1"/> <line number="176" hits="1"/> <line number="177" hits="1"/> <line number="180" hits="1"/> <line number="181" hits="1"/> <line number="182" hits="1"/> <line number="185" hits="1"/> <line number="186" hits="1"/> <line number="187" hits="1"/> <line number="190" hits="1"/> <line number="191" hits="1"/> <line number="192" hits="1"/> <line number="194" hits="1"/> <line number="195" hits="1"/> <line number="197" hits="1"/> <line number="198" hits="1"/> <line number="200" hits="1"/> <line number="203" hits="1"/> <line number="204" hits="1"/> <line number="206" hits="1"/> <line number="208" hits="1"/> <line number="209" hits="1"/> <line number="211" hits="1"/> <line number="214" hits="1"/> <line number="215" hits="1"/> <line number="217" hits="1"/> <line number="219" hits="1"/> <line number="220" hits="1"/> <line number="222" hits="1"/> <line number="224" hits="1"/> <line number="226" hits="1"/> <line number="227" hits="1"/> <line number="229" hits="1"/> <line number="232" hits="1"/> <line number="234" hits="1"/> <line number="235" hits="1"/> <line number="236" hits="1"/> <line number="237" hits="1"/> <line number="239" hits="1"/> <line number="240" hits="1"/> <line number="248" hits="1"/> <line number="249" hits="1"/> <line number="252" hits="1"/> <line number="253" hits="1"/> <line number="254" hits="1"/> <line number="257" hits="1"/> <line number="259" hits="1"/> <line number="261" hits="1"/> <line number="266" hits="1"/> <line number="268" hits="1"/> <line number="270" hits="1"/> <line number="271" hits="1"/> <line number="273" hits="1"/> <line number="274" hits="1"/> <line number="276" hits="1"/> <line number="278" hits="1"/> <line number="279" hits="1"/> <line number="281" hits="1"/> <line number="282" hits="1"/> <line number="284" hits="1"/> <line number="286" hits="1"/> <line number="289" hits="1"/> <line number="295" hits="1"/> <line number="296" hits="1"/> <line number="297" hits="1"/> <line number="298" hits="1"/> <line number="300" hits="1"/> <line number="305" hits="1"/> <line number="306" hits="1"/> <line number="308" hits="1"/> <line number="309" hits="1"/> <line number="311" hits="1"/> <line number="313" hits="1"/> <line number="314" hits="1"/> <line number="316" hits="1"/> <line number="317" hits="1"/> <line number="318" hits="1"/> <line number="319" hits="1"/> <line number="322" hits="1"/> <line number="323" hits="1"/> <line number="326" hits="1"/> <line number="327" hits="1"/> <line number="328" hits="1"/> <line number="329" hits="1"/> <line number="332" hits="1"/> <line number="333" hits="1"/> <line number="334" hits="1"/> <line number="335" hits="1"/> <line number="338" hits="1"/> <line number="339" hits="1"/> <line number="341" hits="1"/> <line number="342" hits="1"/> <line number="344" hits="1"/> <line number="345" hits="1"/> <line number="346" hits="1"/> <line number="348" hits="1"/> <line number="354" hits="1"/> <line number="356" hits="1"/> <line number="357" hits="1"/> <line number="358" hits="1"/> <line number="360" hits="1"/> <line number="362" hits="1"/> <line number="366" hits="1"/> <line number="374" hits="1"/> <line number="375" hits="1"/> <line number="377" hits="1"/> <line number="378" hits="1"/> <line number="379" hits="1"/> <line number="381" hits="1"/> <line number="382" hits="1"/> <line number="384" hits="1"/> <line number="388" hits="1"/> <line number="389" hits="1"/> <line number="391" hits="1"/> <line number="393" hits="1"/> <line number="396" hits="1"/> <line number="401" hits="1"/> <line number="404" hits="1"/> <line number="406" hits="1"/> <line number="407" hits="1"/> <line number="410" hits="1"/> <line number="413" hits="1"/> <line number="415" hits="1"/> <line number="417" hits="1"/> <line number="418" hits="1"/> <line number="419" hits="1"/> <line number="420" hits="1"/> <line number="421" hits="1"/> <line number="422" hits="1"/> <line number="424" hits="1"/> <line number="426" hits="1"/> <line number="428" hits="1"/> <line number="429" hits="1"/> <line number="431" hits="1"/> <line number="433" hits="1"/> <line number="435" hits="1"/> <line number="436" hits="1"/> <line number="438" hits="1"/> <line number="440" hits="1"/> <line number="442" hits="1"/> <line number="444" hits="1"/> <line number="445" hits="1"/> <line number="447" hits="1"/> <line number="448" hits="1"/> <line number="451" hits="1"/> <line number="452" hits="1"/> <line number="453" hits="1"/> <line number="455" hits="1"/> <line number="457" hits="1"/> <line number="459" hits="1"/> <line number="460" hits="1"/> <line number="461" hits="1"/> <line number="463" hits="1"/> <line number="465" hits="1"/> <line number="467" hits="1"/> <line number="468" hits="1"/> <line number="470" hits="1"/> <line number="471" hits="1"/> <line number="473" hits="1"/> <line number="474" hits="1"/> <line number="475" hits="1"/> <line number="477" hits="1"/> <line number="478" hits="1"/> <line number="481" hits="1"/> <line number="482" hits="1"/> <line number="483" hits="1"/> <line number="484" hits="1"/> <line number="485" hits="1"/> <line number="488" hits="1"/> <line number="489" hits="1"/> <line number="491" hits="1"/> <line number="493" hits="1"/> <line number="494" hits="1"/> <line number="495" hits="1"/> <line number="497" hits="1"/> <line number="499" hits="1"/> <line number="500" hits="1"/> <line number="502" hits="1"/> <line number="503" hits="1"/> <line number="505" hits="1"/> <line number="509" hits="1"/> <line number="510" hits="1"/> <line number="512" hits="1"/> <line number="514" hits="1"/> <line number="516" hits="1"/> <line number="518" hits="1"/> <line number="519" hits="1"/> <line number="520" hits="1"/> <line number="521" hits="1"/> <line number="522" hits="1"/> <line number="524" hits="1"/> <line number="526" hits="1"/> <line number="528" hits="1"/> <line number="529" hits="1"/> <line number="530" hits="1"/> <line number="533" hits="1"/> <line number="534" hits="1"/> <line number="536" hits="1"/> <line number="538" hits="1"/> <line number="548" hits="1"/> <line number="550" hits="1"/> <line number="551" hits="1"/> <line number="552" hits="1"/> <line number="553" hits="1"/> <line number="554" hits="1"/> <line number="556" hits="1"/> <line number="558" hits="1"/> <line number="568" hits="1"/> <line number="571" hits="1"/> <line number="572" hits="1"/> <line number="575" hits="1"/> <line number="578" hits="1"/> <line number="581" hits="1"/> <line number="583" hits="1"/> <line number="584" hits="1"/> <line number="585" hits="1"/> <line number="587" hits="1"/> <line number="589" hits="1"/> <line number="593" hits="1"/> <line number="594" hits="1"/> <line number="595" hits="1"/> <line number="596" hits="1"/> <line number="598" hits="1"/> <line number="601" hits="1"/> <line number="602" hits="1"/> <line number="604" hits="1"/> <line number="606" hits="1"/> <line number="609" hits="1"/> <line number="611" hits="1"/> <line number="613" hits="1"/> <line number="615" hits="1"/> <line number="616" hits="1"/> <line number="618" hits="1"/> <line number="620" hits="1"/> <line number="621" hits="1"/> <line number="622" hits="1"/> <line number="623" hits="1"/> <line number="624" hits="1"/> <line number="626" hits="1"/> <line number="632" hits="1"/> <line number="634" hits="1"/> <line number="636" hits="1"/> <line number="638" hits="1"/> <line number="639" hits="1"/> <line number="641" hits="1"/> <line number="644" hits="1"/> <line number="646" hits="1"/> <line number="647" hits="1"/> <line number="648" hits="1"/> <line number="649" hits="1"/> <line number="652" hits="1"/> <line number="653" hits="1"/> <line number="656" hits="1"/> <line number="657" hits="1"/> <line number="659" hits="1"/> <line number="661" hits="1"/> <line number="663" hits="1"/> <line number="671" hits="1"/> <line number="673" hits="1"/> <line number="674" hits="1"/> <line number="676" hits="1"/> <line number="678" hits="1"/> <line number="680" hits="1"/> <line number="682" hits="1"/> <line number="684" hits="1"/> <line number="685" hits="1"/> <line number="687" hits="1"/> <line number="689" hits="1"/> <line number="690" hits="1"/> <line number="691" hits="1"/> <line number="692" hits="1"/> <line number="693" hits="1"/> <line number="695" hits="1"/> <line number="698" hits="1"/> <line number="699" hits="1"/> <line number="701" hits="1"/> <line number="702" hits="1"/> <line number="705" hits="1"/> <line number="708" hits="1"/> <line number="710" hits="1"/> <line number="712" hits="1"/> <line number="717" hits="1"/> <line number="719" hits="1"/> <line number="721" hits="1"/> <line number="724" hits="1"/> <line number="725" hits="1"/> <line number="726" hits="1"/> <line number="729" hits="1"/> <line number="730" hits="1"/> <line number="731" hits="1"/> <line number="732" hits="1"/> <line number="733" hits="1"/> <line number="736" hits="1"/> <line number="737" hits="1"/> <line number="738" hits="1"/> <line number="739" hits="1"/> <line number="740" hits="1"/> <line number="741" hits="1"/> <line number="743" hits="1"/> <line number="745" hits="1"/> <line number="750" hits="1"/> <line number="752" hits="1"/> <line number="754" hits="1"/> <line number="757" hits="1"/> <line number="758" hits="1"/> <line number="759" hits="1"/> <line number="762" hits="1"/> <line number="763" hits="1"/> <line number="764" hits="1"/> <line number="765" hits="1"/> <line number="766" hits="1"/> <line number="769" hits="1"/> <line number="771" hits="1"/> <line number="773" hits="1"/> <line number="778" hits="1"/> <line number="780" hits="1"/> <line number="782" hits="1"/> <line number="785" hits="1"/> <line number="786" hits="1"/> <line number="789" hits="1"/> <line number="790" hits="1"/> <line number="791" hits="1"/> <line number="792" hits="1"/> <line number="795" hits="1"/> <line number="796" hits="1"/> <line number="800" hits="1"/> <line number="803" hits="1"/> <line number="805" hits="1"/> <line number="807" hits="1"/> <line number="808" hits="1"/> <line number="810" hits="1"/> <line number="811" hits="1"/> <line number="813" hits="1"/> <line number="824" hits="1"/> <line number="825" hits="1"/> <line number="826" hits="1"/> <line number="827" hits="1"/> <line number="828" hits="1"/> <line number="830" hits="1"/> <line number="831" hits="1"/> <line number="833" hits="1"/> <line number="835" hits="1"/> <line number="836" hits="1"/> <line number="837" hits="1"/> <line number="838" hits="1"/> <line number="840" hits="1"/> <line number="841" hits="1"/> <line number="843" hits="1"/> <line number="844" hits="1"/> <line number="845" hits="1"/> <line number="846" hits="1"/> <line number="847" hits="1"/> <line number="849" hits="1"/> <line number="850" hits="1"/> <line number="852" hits="1"/> <line number="854" hits="1"/> <line number="855" hits="1"/> <line number="858" hits="1"/> <line number="863" hits="1"/> <line number="864" hits="1"/> <line number="865" hits="1"/> <line number="866" hits="1"/> <line number="867" hits="1"/> <line number="869" hits="1"/> <line number="871" hits="1"/> <line number="872" hits="1"/> <line number="873" hits="1"/> <line number="874" hits="1"/> <line number="876" hits="1"/> <line number="877" hits="1"/> <line number="879" hits="1"/> <line number="883" hits="1"/> <line number="884" hits="1"/> <line number="885" hits="1"/> <line number="887" hits="1"/> <line number="888" hits="1"/> <line number="891" hits="1"/> <line number="897" hits="1"/> <line number="898" hits="1"/> <line number="899" hits="1"/> <line number="900" hits="1"/> <line number="901" hits="1"/> <line number="903" hits="1"/> <line number="905" hits="1"/> <line number="906" hits="1"/> <line number="908" hits="1"/> <line number="909" hits="1"/> <line number="911" hits="1"/> <line number="912" hits="1"/> <line number="915" hits="1"/> <line number="920" hits="1"/> <line number="921" hits="1"/> <line number="922" hits="1"/> <line number="923" hits="1"/> <line number="924" hits="1"/> <line number="926" hits="1"/> <line number="928" hits="1"/> <line number="929" hits="1"/> <line number="931" hits="1"/> <line number="932" hits="1"/> <line number="934" hits="1"/> <line number="935" hits="1"/> <line number="937" hits="1"/> <line number="939" hits="1"/> <line number="940" hits="1"/> <line number="942" hits="1"/> <line number="943" hits="1"/> <line number="944" hits="1"/> <line number="946" hits="1"/> <line number="948" hits="1"/> <line number="949" hits="1"/> <line number="951" hits="1"/> <line number="952" hits="1"/> <line number="954" hits="1"/> <line number="956" hits="1"/> <line number="966" hits="1"/> <line number="967" hits="1"/> <line number="969" hits="1"/> <line number="970" hits="1"/> <line number="972" hits="1"/> <line number="973" hits="1"/> <line number="974" hits="1"/> <line number="976" hits="1"/> <line number="978" hits="1"/> <line number="988" hits="1"/> <line number="989" hits="1"/> <line number="991" hits="1"/> <line number="992" hits="1"/> <line number="994" hits="1"/> <line number="995" hits="1"/> <line number="996" hits="1"/> <line number="998" hits="1"/> <line number="1000" hits="1"/> <line number="1012" hits="1"/> <line number="1013" hits="1"/> <line number="1015" hits="1"/> <line number="1019" hits="1"/> <line number="1029" hits="1"/> <line number="1035" hits="1"/> <line number="1037" hits="1"/> <line number="1038" hits="1"/> <line number="1039" hits="1"/> <line number="1041" hits="1"/> <line number="1043" hits="1"/> <line number="1044" hits="1"/> <line number="1046" hits="1"/> <line number="1047" hits="1"/> <line number="1049" hits="1"/> <line number="1050" hits="1"/> <line number="1052" hits="1"/> <line number="1054" hits="1"/> <line number="1055" hits="1"/> <line number="1057" hits="1"/> <line number="1058" hits="1"/> <line number="1061" hits="1"/> <line number="1064" hits="1"/> <line number="1066" hits="1"/> <line number="1068" hits="1"/> <line number="1069" hits="1"/> <line number="1070" hits="1"/> <line number="1071" hits="1"/> <line number="1073" hits="1"/> <line number="1074" hits="1"/> <line number="1076" hits="1"/> <line number="1078" hits="1"/> <line number="1079" hits="1"/> <line number="1080" hits="1"/> <line number="1082" hits="1"/> <line number="1083" hits="1"/> <line number="1085" hits="1"/> <line number="1087" hits="1"/> <line number="1089" hits="1"/> <line number="1090" hits="1"/> <line number="1092" hits="1"/> <line number="1093" hits="1"/> <line number="1095" hits="1"/> <line number="1097" hits="1"/> <line number="1099" hits="1"/> <line number="1100" hits="1"/> <line number="1102" hits="1"/> <line number="1104" hits="1"/> <line number="1106" hits="1"/> <line number="1108" hits="1"/> <line number="1109" hits="1"/> <line number="1110" hits="1"/> <line number="1111" hits="1"/> <line number="1112" hits="1"/> <line number="1113" hits="1"/> <line number="1114" hits="1"/> <line number="1120" hits="1"/> <line number="1126" hits="1"/> <line number="1127" hits="1"/> <line number="1128" hits="1"/> <line number="1134" hits="1"/> <line number="1135" hits="1"/> <line number="1136" hits="1"/> <line number="1139" hits="1"/> <line number="1140" hits="1"/> <line number="1142" hits="1"/> <line number="1144" hits="1"/> <line number="1146" hits="1"/> <line number="1147" hits="1"/> <line number="1148" hits="1"/> <line number="1149" hits="1"/> <line number="1150" hits="1"/> <line number="1152" hits="1"/> <line number="1153" hits="1"/> <line number="1154" hits="1"/> <line number="1155" hits="1"/> <line number="1157" hits="1"/> <line number="1158" hits="1"/> <line number="1160" hits="1"/> <line number="1161" hits="1"/> <line number="1162" hits="1"/> <line number="1163" hits="1"/> <line number="1164" hits="1"/> <line number="1165" hits="1"/> <line number="1171" hits="1"/> <line number="1174" hits="1"/> <line number="1175" hits="1"/> <line number="1176" hits="1"/> <line number="1179" hits="1"/> <line number="1182" hits="1"/> <line number="1183" hits="1"/> <line number="1184" hits="1"/> <line number="1185" hits="1"/> <line number="1187" hits="1"/> <line number="1189" hits="1"/> <line number="1190" hits="1"/> <line number="1191" hits="1"/> <line number="1193" hits="1"/> <line number="1194" hits="1"/> <line number="1195" hits="1"/> <line number="1196" hits="1"/> <line number="1201" hits="1"/> <line number="1204" hits="1"/> <line number="1207" hits="1"/> <line number="1210" hits="1"/> <line number="1212" hits="1"/> <line number="1215" hits="1"/> <line number="1216" hits="1"/> <line number="1217" hits="1"/> <line number="1220" hits="1"/> <line number="1223" hits="1"/> <line number="1224" hits="1"/> <line number="1226" hits="1"/> <line number="1238" hits="1"/> <line number="1239" hits="1"/> <line number="1240" hits="1"/> <line number="1241" hits="1"/> <line number="1242" hits="1"/> <line number="1244" hits="1"/> <line number="1246" hits="1"/> <line number="1247" hits="1"/> <line number="1249" hits="1"/> <line number="1250" hits="1"/> <line number="1252" hits="1"/> <line number="1258" hits="1"/> <line number="1259" hits="1"/> <line number="1260" hits="1"/> <line number="1261" hits="1"/> <line number="1262" hits="1"/> <line number="1264" hits="1"/> <line number="1267" hits="1"/> <line number="1268" hits="1"/> <line number="1270" hits="1"/> <line number="1271" hits="1"/> <line number="1273" hits="1"/> <line number="1280" hits="1"/> <line number="1281" hits="1"/> <line number="1282" hits="1"/> <line number="1283" hits="1"/> <line number="1284" hits="1"/> <line number="1286" hits="1"/> <line number="1288" hits="1"/> <line number="1289" hits="1"/> <line number="1290" hits="1"/> <line number="1291" hits="1"/> <line number="1293" hits="1"/> <line number="1294" hits="1"/> <line number="1296" hits="1"/> <line number="1298" hits="1"/> <line number="1301" hits="1"/> <line number="1302" hits="1"/> <line number="1303" hits="1"/> <line number="1305" hits="1"/> <line number="1308" hits="1"/> <line number="1309" hits="1"/> <line number="1311" hits="1"/> <line number="1313" hits="1"/> <line number="1314" hits="1"/> <line number="1315" hits="1"/> <line number="1318" hits="1"/> <line number="1319" hits="1"/> <line number="1320" hits="1"/> <line number="1322" hits="1"/> <line number="1325" hits="1"/> <line number="1328" hits="1"/> <line number="1329" hits="1"/> <line number="1332" hits="1"/> <line number="1333" hits="1"/> <line number="1336" hits="1"/> <line number="1341" hits="1"/> <line number="1342" hits="1"/> <line number="1343" hits="1"/> <line number="1344" hits="1"/> <line number="1346" hits="1"/> <line number="1349" hits="1"/> <line number="1353" hits="1"/> <line number="1354" hits="1"/> <line number="1355" hits="1"/> <line number="1357" hits="1"/> <line number="1360" hits="1"/> <line number="1363" hits="1"/> <line number="1365" hits="1"/> <line number="1366" hits="1"/> <line number="1368" hits="1"/> <line number="1369" hits="1"/> <line number="1370" hits="1"/> <line number="1372" hits="1"/> <line number="1373" hits="1"/> <line number="1374" hits="1"/> <line number="1375" hits="1"/> <line number="1376" hits="1"/> <line number="1378" hits="1"/> <line number="1380" hits="1"/> <line number="1381" hits="1"/> <line number="1389" hits="1"/> <line number="1390" hits="1"/> <line number="1391" hits="1"/> <line number="1393" hits="1"/> <line number="1394" hits="1"/> <line number="1395" hits="1"/> <line number="1396" hits="1"/> <line number="1398" hits="1"/> <line number="1400" hits="1"/> <line number="1401" hits="1"/> <line number="1403" hits="1"/> <line number="1404" hits="1"/> <line number="1405" hits="1"/> <line number="1407" hits="1"/> <line number="1409" hits="1"/> <line number="1411" hits="1"/> <line number="1412" hits="1"/> <line number="1414" hits="1"/> <line number="1415" hits="1"/> <line number="1416" hits="1"/> <line number="1418" hits="1"/> <line number="1420" hits="1"/> <line number="1421" hits="1"/> <line number="1423" hits="1"/> <line number="1424" hits="1"/> <line number="1426" hits="1"/> <line number="1427" hits="1"/> <line number="1431" hits="1"/> <line number="1433" hits="1"/> <line number="1435" hits="1"/> <line number="1436" hits="1"/> <line number="1438" hits="1"/> <line number="1439" hits="1"/> <line number="1441" hits="1"/> <line number="1442" hits="1"/> <line number="1444" hits="1"/> <line number="1445" hits="1"/> <line number="1447" hits="1"/> <line number="1448" hits="1"/> <line number="1465" hits="1"/> <line number="1467" hits="1"/> <line number="1469" hits="1"/> <line number="1470" hits="1"/> <line number="1472" hits="1"/> <line number="1473" hits="1"/> <line number="1475" hits="1"/> <line number="1476" hits="1"/> <line number="1478" hits="1"/> <line number="1479" hits="1"/> <line number="1481" hits="1"/> <line number="1482" hits="1"/> <line number="1483" hits="1"/> <line number="1485" hits="1"/> <line number="1487" hits="1"/> <line number="1488" hits="1"/> <line number="1490" hits="1"/> <line number="1491" hits="1"/> <line number="1493" hits="1"/> <line number="1494" hits="1"/> <line number="1496" hits="1"/> <line number="1497" hits="1"/> <line number="1499" hits="1"/> <line number="1501" hits="1"/> <line number="1506" hits="1"/> <line number="1508" hits="1"/> <line number="1510" hits="1"/> <line number="1511" hits="1"/> <line number="1513" hits="1"/> <line number="1514" hits="1"/> <line number="1516" hits="1"/> <line number="1518" hits="1"/> <line number="1519" hits="1"/> <line number="1521" hits="1"/> <line number="1524" hits="1"/> <line number="1525" hits="1"/> <line number="1526" hits="1"/> <line number="1528" hits="0"/> <line number="1529" hits="1"/> <line number="1531" hits="1"/> </lines> </class> <class name="test_fuzzy_search.py" filename="tests/unit/test_fuzzy_search.py" complexity="0" line-rate="1" branch-rate="1"> <methods/> <lines> <line number="3" hits="1"/> <line number="6" hits="1"/> <line number="9" hits="1"/> <line number="11" hits="1"/> <line number="12" hits="1"/> <line number="14" hits="1"/> <line number="15" hits="1"/> <line number="16" hits="1"/> <line number="17" hits="1"/> <line number="19" hits="1"/> <line number="21" hits="1"/> <line number="22" hits="1"/> <line number="24" hits="1"/> <line number="25" hits="1"/> <line number="27" hits="1"/> <line number="29" hits="1"/> <line number="30" hits="1"/> <line number="32" hits="1"/> <line number="33" hits="1"/> <line number="35" hits="1"/> <line number="37" hits="1"/> <line number="39" hits="1"/> <line number="40" hits="1"/> <line number="42" hits="1"/> <line number="43" hits="1"/> <line number="44" hits="1"/> <line number="46" hits="1"/> <line number="48" hits="1"/> <line number="49" hits="1"/> <line number="51" hits="1"/> <line number="52" hits="1"/> <line number="53" hits="1"/> <line number="55" hits="1"/> <line number="57" hits="1"/> <line number="58" hits="1"/> <line number="60" hits="1"/> <line number="61" hits="1"/> <line number="63" hits="1"/> <line number="65" hits="1"/> <line number="66" hits="1"/> <line number="68" hits="1"/> <line number="70" hits="1"/> <line number="71" hits="1"/> <line number="73" hits="1"/> <line number="74" hits="1"/> <line number="76" hits="1"/> <line number="78" hits="1"/> <line number="79" hits="1"/> <line number="81" hits="1"/> <line number="84" hits="1"/> <line number="86" hits="1"/> <line number="88" hits="1"/> <line number="89" hits="1"/> <line number="91" hits="1"/> <line number="93" hits="1"/> <line number="95" hits="1"/> <line number="97" hits="1"/> <line number="99" hits="1"/> <line number="101" hits="1"/> <line number="102" hits="1"/> <line number="104" hits="1"/> <line number="106" hits="1"/> <line number="108" hits="1"/> <line number="109" hits="1"/> <line number="111" hits="1"/> <line number="112" hits="1"/> <line number="114" hits="1"/> <line number="116" hits="1"/> <line number="117" hits="1"/> <line number="119" hits="1"/> <line number="121" hits="1"/> <line number="122" hits="1"/> <line number="124" hits="1"/> <line number="126" hits="1"/> <line number="127" hits="1"/> <line number="129" hits="1"/> <line number="130" hits="1"/> <line number="132" hits="1"/> <line number="134" hits="1"/> <line number="135" hits="1"/> <line number="137" hits="1"/> <line number="139" hits="1"/> <line number="141" hits="1"/> <line number="143" hits="1"/> <line number="146" hits="1"/> <line number="147" hits="1"/> <line number="150" hits="1"/> <line number="151" hits="1"/> <line number="153" hits="1"/> <line number="155" hits="1"/> <line number="156" hits="1"/> <line number="159" hits="1"/> <line number="160" hits="1"/> <line number="162" hits="1"/> <line number="163" hits="1"/> <line number="165" hits="1"/> <line number="167" hits="1"/> <line number="170" hits="1"/> <line number="171" hits="1"/> <line number="172" hits="1"/> <line number="174" hits="1"/> <line number="175" hits="1"/> <line number="176" hits="1"/> <line number="178" hits="1"/> <line number="180" hits="1"/> </lines> </class> <class name="test_laravel_mcp_companion_integration.py" filename="tests/unit/test_laravel_mcp_companion_integration.py" complexity="0" line-rate="0.9371" branch-rate="0.5"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="5" hits="1"/> <line number="6" hits="1"/> <line number="8" hits="1"/> <line number="9" hits="1"/> <line number="12" hits="1"/> <line number="13" hits="1"/> <line number="15" hits="1"/> <line number="16" hits="1"/> <line number="19" hits="1"/> <line number="20" hits="1"/> <line number="22" hits="1"/> <line number="23" hits="1"/> <line number="24" hits="1"/> <line number="27" hits="1"/> <line number="28" hits="1"/> <line number="36" hits="1"/> <line number="39" hits="1"/> <line number="40" hits="1"/> <line number="42" hits="1"/> <line number="43" hits="1"/> <line number="46" hits="1"/> <line number="49" hits="1"/> <line number="50" hits="1"/> <line number="52" hits="1"/> <line number="54" hits="1"/> <line number="57" hits="1"/> <line number="59" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="62"/> <line number="60" hits="1"/> <line number="62" hits="0"/> <line number="63" hits="1"/> <line number="64" hits="1"/> <line number="65" hits="1"/> <line number="70" hits="1"/> <line number="71" hits="1"/> <line number="73" hits="1"/> <line number="75" hits="1"/> <line number="81" hits="1"/> <line number="83" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="86"/> <line number="84" hits="1"/> <line number="86" hits="0"/> <line number="87" hits="1"/> <line number="89" hits="1"/> <line number="90" hits="1"/> <line number="92" hits="1"/> <line number="94" hits="1"/> <line number="97" hits="1"/> <line number="99" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="102"/> <line number="100" hits="1"/> <line number="102" hits="0"/> <line number="103" hits="1"/> <line number="104" hits="1"/> <line number="106" hits="1"/> <line number="107" hits="1"/> <line number="109" hits="1"/> <line number="111" hits="1"/> <line number="116" hits="1"/> <line number="118" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="121"/> <line number="119" hits="1"/> <line number="121" hits="0"/> <line number="122" hits="1"/> <line number="130" hits="1"/> <line number="131" hits="1"/> <line number="133" hits="1"/> <line number="135" hits="1"/> <line number="138" hits="1"/> <line number="139" hits="1"/> <line number="140" hits="1"/> <line number="141" hits="1"/> <line number="142" hits="1"/> <line number="144" hits="1"/> <line number="145" hits="1"/> <line number="147" hits="1"/> <line number="149" hits="1"/> <line number="150" hits="1"/> <line number="152" hits="1"/> <line number="153" hits="1"/> <line number="155" hits="1"/> <line number="156" hits="1"/> <line number="159" hits="1"/> <line number="162" hits="1"/> <line number="163" hits="1"/> <line number="165" hits="1"/> <line number="167" hits="1"/> <line number="170" hits="1"/> <line number="172" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="175"/> <line number="173" hits="1"/> <line number="175" hits="0"/> <line number="176" hits="1"/> <line number="178" hits="1"/> <line number="179" hits="1"/> <line number="181" hits="1"/> <line number="183" hits="1"/> <line number="186" hits="1"/> <line number="188" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="191"/> <line number="189" hits="1"/> <line number="191" hits="0"/> <line number="192" hits="1"/> <line number="195" hits="1"/> <line number="198" hits="1"/> <line number="199" hits="1"/> <line number="201" hits="1"/> <line number="203" hits="1"/> <line number="208" hits="1"/> <line number="210" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="213"/> <line number="211" hits="1"/> <line number="213" hits="0"/> <line number="214" hits="1"/> <line number="216" hits="1"/> <line number="217" hits="1"/> <line number="219" hits="1"/> <line number="221" hits="1"/> <line number="226" hits="1"/> <line number="228" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="231"/> <line number="229" hits="1"/> <line number="231" hits="0"/> <line number="232" hits="1"/> <line number="234" hits="1"/> <line number="235" hits="1"/> <line number="237" hits="1"/> <line number="239" hits="1"/> <line number="244" hits="1"/> <line number="246" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="249"/> <line number="247" hits="1"/> <line number="249" hits="0"/> <line number="251" hits="1"/> <line number="255" hits="1"/> <line number="256" hits="1"/> <line number="259" hits="1"/> <line number="260" hits="1"/> <line number="263" hits="1"/> <line number="264" hits="1"/> <line number="265" hits="1"/> <line number="268" hits="1"/> <line number="269" hits="1"/> <line number="270" hits="1"/> <line number="272" hits="1"/> <line number="273" hits="1"/> <line number="275" hits="1"/> <line number="277" hits="1"/> <line number="284" hits="1"/> <line number="285" hits="1"/> </lines> </class> <class name="test_laravel_mcp_companion_main.py" filename="tests/unit/test_laravel_mcp_companion_main.py" complexity="0" line-rate="1" branch-rate="1"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="5" hits="1"/> <line number="7" hits="1"/> <line number="10" hits="1"/> <line number="13" hits="1"/> <line number="15" hits="1"/> <line number="16" hits="1"/> <line number="18" hits="1"/> <line number="19" hits="1"/> <line number="20" hits="1"/> <line number="21" hits="1"/> <line number="22" hits="1"/> <line number="24" hits="1"/> <line number="26" hits="1"/> <line number="33" hits="1"/> <line number="34" hits="1"/> <line number="36" hits="1"/> <line number="37" hits="1"/> <line number="38" hits="1"/> <line number="40" hits="1"/> <line number="42" hits="1"/> <line number="49" hits="1"/> <line number="50" hits="1"/> <line number="52" hits="1"/> <line number="53" hits="1"/> <line number="54" hits="1"/> <line number="56" hits="1"/> <line number="58" hits="1"/> <line number="60" hits="1"/> <line number="61" hits="1"/> <line number="63" hits="1"/> <line number="65" hits="1"/> <line number="67" hits="1"/> <line number="69" hits="1"/> <line number="70" hits="1"/> <line number="72" hits="1"/> <line number="75" hits="1"/> <line number="78" hits="1"/> <line number="79" hits="1"/> <line number="80" hits="1"/> <line number="81" hits="1"/> <line number="82" hits="1"/> <line number="86" hits="1"/> <line number="87" hits="1"/> <line number="88" hits="1"/> <line number="89" hits="1"/> <line number="90" hits="1"/> <line number="91" hits="1"/> <line number="92" hits="1"/> <line number="95" hits="1"/> <line number="97" hits="1"/> <line number="99" hits="1"/> <line number="102" hits="1"/> <line number="103" hits="1"/> <line number="104" hits="1"/> <line number="107" hits="1"/> <line number="109" hits="1"/> <line number="110" hits="1"/> <line number="111" hits="1"/> <line number="112" hits="1"/> <line number="113" hits="1"/> <line number="114" hits="1"/> <line number="119" hits="1"/> <line number="120" hits="1"/> <line number="121" hits="1"/> <line number="122" hits="1"/> <line number="123" hits="1"/> <line number="124" hits="1"/> <line number="125" hits="1"/> <line number="126" hits="1"/> <line number="129" hits="1"/> <line number="131" hits="1"/> <line number="132" hits="1"/> <line number="135" hits="1"/> <line number="137" hits="1"/> <line number="138" hits="1"/> <line number="139" hits="1"/> <line number="142" hits="1"/> <line number="145" hits="1"/> <line number="147" hits="1"/> <line number="149" hits="1"/> <line number="151" hits="1"/> <line number="153" hits="1"/> <line number="154" hits="1"/> <line number="155" hits="1"/> <line number="156" hits="1"/> <line number="157" hits="1"/> <line number="161" hits="1"/> <line number="162" hits="1"/> <line number="163" hits="1"/> <line number="164" hits="1"/> <line number="165" hits="1"/> <line number="166" hits="1"/> <line number="167" hits="1"/> <line number="170" hits="1"/> <line number="177" hits="1"/> <line number="178" hits="1"/> <line number="181" hits="1"/> <line number="187" hits="1"/> <line number="188" hits="1"/> <line number="189" hits="1"/> <line number="190" hits="1"/> <line number="191" hits="1"/> <line number="195" hits="1"/> <line number="196" hits="1"/> <line number="197" hits="1"/> <line number="198" hits="1"/> <line number="199" hits="1"/> <line number="200" hits="1"/> <line number="201" hits="1"/> <line number="203" hits="1"/> <line number="205" hits="1"/> <line number="206" hits="1"/> <line number="209" hits="1"/> <line number="212" hits="1"/> <line number="213" hits="1"/> <line number="215" hits="1"/> <line number="216" hits="1"/> <line number="217" hits="1"/> <line number="220" hits="1"/> <line number="221" hits="1"/> <line number="222" hits="1"/> <line number="223" hits="1"/> <line number="225" hits="1"/> <line number="227" hits="1"/> <line number="231" hits="1"/> <line number="233" hits="1"/> <line number="236" hits="1"/> <line number="239" hits="1"/> <line number="240" hits="1"/> <line number="241" hits="1"/> <line number="242" hits="1"/> <line number="243" hits="1"/> <line number="247" hits="1"/> <line number="248" hits="1"/> <line number="249" hits="1"/> <line number="250" hits="1"/> <line number="251" hits="1"/> <line number="252" hits="1"/> <line number="253" hits="1"/> <line number="255" hits="1"/> <line number="257" hits="1"/> <line number="258" hits="1"/> <line number="263" hits="1"/> <line number="264" hits="1"/> </lines> </class> <class name="test_laravel_mcp_companion_mcp.py" filename="tests/unit/test_laravel_mcp_companion_mcp.py" complexity="0" line-rate="0.9752" branch-rate="1"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="5" hits="1"/> <line number="6" hits="1"/> <line number="8" hits="1"/> <line number="14" hits="1"/> <line number="17" hits="1"/> <line number="20" hits="1"/> <line number="21" hits="1"/> <line number="22" hits="1"/> <line number="23" hits="1"/> <line number="24" hits="1"/> <line number="25" hits="1"/> <line number="27" hits="1"/> <line number="29" hits="1"/> <line number="30" hits="1"/> <line number="35" hits="1"/> <line number="36" hits="1"/> <line number="37" hits="1"/> <line number="39" hits="1"/> <line number="41" hits="1"/> <line number="42" hits="1"/> <line number="47" hits="1"/> <line number="48" hits="1"/> <line number="49" hits="1"/> <line number="51" hits="1"/> <line number="53" hits="0"/> <line number="55" hits="1"/> <line number="57" hits="1"/> <line number="59" hits="1"/> <line number="61" hits="1"/> <line number="64" hits="1"/> <line number="67" hits="1"/> <line number="69" hits="1"/> <line number="70" hits="1"/> <line number="71" hits="1"/> <line number="73" hits="1"/> <line number="75" hits="1"/> <line number="76" hits="1"/> <line number="77" hits="1"/> <line number="78" hits="1"/> <line number="81" hits="1"/> <line number="84" hits="1"/> <line number="86" hits="1"/> <line number="95" hits="1"/> <line number="96" hits="1"/> <line number="98" hits="1"/> <line number="99" hits="1"/> <line number="101" hits="1"/> <line number="103" hits="1"/> <line number="112" hits="1"/> <line number="113" hits="1"/> <line number="115" hits="1"/> <line number="116" hits="1"/> <line number="121" hits="1"/> <line number="123" hits="1"/> <line number="132" hits="1"/> <line number="134" hits="1"/> <line number="136" hits="1"/> <line number="139" hits="1"/> <line number="142" hits="1"/> <line number="144" hits="1"/> <line number="145" hits="1"/> <line number="147" hits="1"/> <line number="149" hits="1"/> <line number="150" hits="1"/> <line number="151" hits="1"/> <line number="153" hits="1"/> <line number="155" hits="1"/> <line number="156" hits="1"/> <line number="157" hits="1"/> <line number="158" hits="1"/> <line number="160" hits="1"/> <line number="162" hits="1"/> <line number="163" hits="1"/> <line number="164" hits="1"/> <line number="167" hits="1"/> <line number="170" hits="1"/> <line number="172" hits="1"/> <line number="173" hits="1"/> <line number="177" hits="1"/> <line number="180" hits="1"/> <line number="183" hits="1"/> <line number="186" hits="1"/> <line number="188" hits="1"/> <line number="190" hits="1"/> <line number="191" hits="1"/> <line number="193" hits="1"/> <line number="196" hits="1"/> <line number="197" hits="1"/> <line number="200" hits="1"/> <line number="201" hits="1"/> <line number="202" hits="1"/> <line number="204" hits="1"/> <line number="206" hits="1"/> <line number="208" hits="1"/> <line number="209" hits="1"/> <line number="211" hits="1"/> <line number="214" hits="1"/> <line number="217" hits="1"/> <line number="218" hits="1"/> <line number="219" hits="1"/> <line number="221" hits="1"/> <line number="223" hits="1"/> <line number="225" hits="1"/> <line number="226" hits="1"/> <line number="227" hits="0"/> <line number="229" hits="1"/> <line number="230" hits="1"/> <line number="231" hits="0"/> <line number="233" hits="1"/> <line number="234" hits="1"/> <line number="235" hits="1"/> <line number="238" hits="1"/> <line number="241" hits="1"/> <line number="244" hits="1"/> <line number="259" hits="1"/> <line number="264" hits="1"/> <line number="265" hits="1"/> <line number="268" hits="1"/> <line number="269" hits="1"/> </lines> </class> <class name="test_laravel_mcp_tools.py" filename="tests/unit/test_laravel_mcp_tools.py" complexity="0" line-rate="1" branch-rate="1"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="5" hits="1"/> <line number="7" hits="1"/> <line number="8" hits="1"/> <line number="22" hits="1"/> <line number="25" hits="1"/> <line number="27" hits="1"/> <line number="28" hits="1"/> <line number="30" hits="1"/> <line number="32" hits="1"/> <line number="33" hits="1"/> <line number="36" hits="1"/> <line number="37" hits="1"/> <line number="39" hits="1"/> <line number="41" hits="1"/> <line number="42" hits="1"/> <line number="44" hits="1"/> <line number="46" hits="1"/> <line number="47" hits="1"/> <line number="48" hits="1"/> <line number="50" hits="1"/> <line number="52" hits="1"/> <line number="53" hits="1"/> <line number="55" hits="1"/> <line number="57" hits="1"/> <line number="59" hits="1"/> <line number="60" hits="1"/> <line number="62" hits="1"/> <line number="64" hits="1"/> <line number="66" hits="1"/> <line number="67" hits="1"/> <line number="69" hits="1"/> <line number="71" hits="1"/> <line number="72" hits="1"/> <line number="73" hits="1"/> <line number="74" hits="1"/> <line number="75" hits="1"/> <line number="76" hits="1"/> <line number="78" hits="1"/> <line number="80" hits="1"/> <line number="81" hits="1"/> <line number="84" hits="1"/> <line number="85" hits="1"/> <line number="87" hits="1"/> <line number="88" hits="1"/> <line number="89" hits="1"/> <line number="91" hits="1"/> <line number="93" hits="1"/> <line number="95" hits="1"/> <line number="96" hits="1"/> <line number="98" hits="1"/> <line number="100" hits="1"/> <line number="101" hits="1"/> <line number="103" hits="1"/> <line number="104" hits="1"/> <line number="106" hits="1"/> <line number="108" hits="1"/> <line number="110" hits="1"/> <line number="111" hits="1"/> <line number="113" hits="1"/> <line number="115" hits="1"/> <line number="116" hits="1"/> <line number="118" hits="1"/> <line number="120" hits="1"/> <line number="122" hits="1"/> <line number="123" hits="1"/> <line number="125" hits="1"/> <line number="127" hits="1"/> <line number="129" hits="1"/> <line number="130" hits="1"/> <line number="132" hits="1"/> <line number="135" hits="1"/> <line number="138" hits="1"/> <line number="140" hits="1"/> <line number="141" hits="1"/> <line number="142" hits="1"/> <line number="145" hits="1"/> <line number="148" hits="1"/> <line number="149" hits="1"/> <line number="152" hits="1"/> <line number="153" hits="1"/> <line number="154" hits="1"/> <line number="156" hits="1"/> <line number="158" hits="1"/> <line number="160" hits="1"/> <line number="161" hits="1"/> <line number="163" hits="1"/> <line number="165" hits="1"/> <line number="166" hits="1"/> <line number="168" hits="1"/> <line number="169" hits="1"/> <line number="170" hits="1"/> <line number="172" hits="1"/> <line number="174" hits="1"/> <line number="175" hits="1"/> <line number="176" hits="1"/> <line number="179" hits="1"/> <line number="180" hits="1"/> <line number="183" hits="1"/> <line number="184" hits="1"/> <line number="185" hits="1"/> <line number="188" hits="1"/> <line number="191" hits="1"/> <line number="193" hits="1"/> <line number="194" hits="1"/> <line number="195" hits="1"/> <line number="196" hits="1"/> <line number="197" hits="1"/> <line number="198" hits="1"/> <line number="200" hits="1"/> <line number="202" hits="1"/> <line number="204" hits="1"/> <line number="206" hits="1"/> <line number="208" hits="1"/> <line number="209" hits="1"/> <line number="210" hits="1"/> <line number="211" hits="1"/> <line number="213" hits="1"/> <line number="215" hits="1"/> <line number="216" hits="1"/> <line number="218" hits="1"/> <line number="220" hits="1"/> <line number="221" hits="1"/> <line number="223" hits="1"/> <line number="224" hits="1"/> <line number="225" hits="1"/> <line number="226" hits="1"/> <line number="227" hits="1"/> <line number="228" hits="1"/> <line number="230" hits="1"/> <line number="232" hits="1"/> <line number="243" hits="1"/> <line number="244" hits="1"/> <line number="246" hits="1"/> <line number="247" hits="1"/> <line number="248" hits="1"/> <line number="249" hits="1"/> <line number="250" hits="1"/> <line number="251" hits="1"/> <line number="252" hits="1"/> <line number="255" hits="1"/> <line number="256" hits="1"/> <line number="259" hits="1"/> <line number="261" hits="1"/> <line number="262" hits="1"/> <line number="265" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="266" hits="1"/> <line number="267" hits="1"/> <line number="268" hits="1"/> <line number="269" hits="1"/> <line number="270" hits="1"/> <line number="271" hits="1"/> <line number="273" hits="1"/> <line number="275" hits="1"/> <line number="278" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="279" hits="1"/> <line number="280" hits="1"/> <line number="282" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="283" hits="1"/> <line number="284" hits="1"/> <line number="286" hits="1"/> <line number="289" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="292" hits="1"/> <line number="294" hits="1"/> <line number="296" hits="1"/> <line number="309" hits="1"/> <line number="310" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="311" hits="1"/> <line number="314" hits="1"/> <line number="315" hits="1"/> <line number="318" hits="1"/> <line number="321" hits="1"/> <line number="323" hits="1"/> <line number="324" hits="1"/> <line number="326" hits="1"/> <line number="327" hits="1"/> <line number="328" hits="1"/> <line number="330" hits="1"/> <line number="332" hits="1"/> <line number="333" hits="1"/> <line number="336" hits="1"/> <line number="337" hits="1"/> <line number="338" hits="1"/> <line number="340" hits="1"/> <line number="342" hits="1"/> <line number="343" hits="1"/> <line number="345" hits="1"/> <line number="347" hits="1"/> <line number="348" hits="1"/> <line number="349" hits="1"/> <line number="352" hits="1"/> <line number="355" hits="1"/> <line number="356" hits="1"/> <line number="358" hits="1"/> <line number="359" hits="1"/> <line number="360" hits="1"/> <line number="362" hits="1"/> <line number="364" hits="1"/> <line number="365" hits="1"/> <line number="366" hits="1"/> <line number="368" hits="1"/> <line number="369" hits="1"/> <line number="371" hits="1"/> <line number="372" hits="1"/> <line number="373" hits="1"/> <line number="375" hits="1"/> <line number="377" hits="1"/> <line number="378" hits="1"/> <line number="380" hits="1"/> <line number="381" hits="1"/> <line number="383" hits="1"/> <line number="385" hits="1"/> <line number="387" hits="1"/> </lines> </class> <class name="test_mcp_tool_functions.py" filename="tests/unit/test_mcp_tool_functions.py" complexity="0" line-rate="1" branch-rate="1"> <methods/> <lines> <line number="3" hits="1"/> <line number="5" hits="1"/> <line number="7" hits="1"/> <line number="17" hits="1"/> <line number="20" hits="1"/> <line number="21" hits="1"/> <line number="22" hits="1"/> <line number="24" hits="1"/> <line number="25" hits="1"/> <line number="31" hits="1"/> <line number="33" hits="1"/> <line number="34" hits="1"/> <line number="35" hits="1"/> <line number="36" hits="1"/> <line number="37" hits="1"/> <line number="39" hits="1"/> <line number="40" hits="1"/> <line number="45" hits="1"/> <line number="46" hits="1"/> <line number="48" hits="1"/> <line number="55" hits="1"/> <line number="56" hits="1"/> <line number="58" hits="1"/> <line number="60" hits="1"/> <line number="62" hits="1"/> <line number="64" hits="1"/> <line number="65" hits="1"/> <line number="67" hits="1"/> <line number="69" hits="1"/> <line number="70" hits="1"/> <line number="72" hits="1"/> <line number="75" hits="1"/> <line number="76" hits="1"/> <line number="77" hits="1"/> <line number="78" hits="1"/> <line number="80" hits="1"/> <line number="82" hits="1"/> <line number="84" hits="1"/> <line number="88" hits="1"/> <line number="90" hits="1"/> <line number="92" hits="1"/> <line number="94" hits="1"/> <line number="95" hits="1"/> <line number="96" hits="1"/> <line number="97" hits="1"/> <line number="99" hits="1"/> <line number="101" hits="1"/> <line number="103" hits="1"/> <line number="104" hits="1"/> <line number="105" hits="1"/> <line number="110" hits="1"/> <line number="113" hits="1"/> <line number="118" hits="1"/> <line number="119" hits="1"/> <line number="121" hits="1"/> <line number="122" hits="1"/> <line number="123" hits="1"/> <line number="124" hits="1"/> <line number="126" hits="1"/> <line number="128" hits="1"/> <line number="130" hits="1"/> <line number="132" hits="1"/> <line number="136" hits="1"/> <line number="140" hits="1"/> <line number="142" hits="1"/> <line number="144" hits="1"/> <line number="146" hits="1"/> <line number="164" hits="1"/> <line number="168" hits="1"/> <line number="170" hits="1"/> <line number="171" hits="1"/> <line number="172" hits="1"/> <line number="174" hits="1"/> <line number="176" hits="1"/> <line number="193" hits="1"/> <line number="194" hits="1"/> <line number="196" hits="1"/> <line number="197" hits="1"/> <line number="198" hits="1"/> <line number="199" hits="1"/> <line number="200" hits="1"/> <line number="202" hits="1"/> <line number="204" hits="1"/> <line number="207" hits="1"/> <line number="208" hits="1"/> <line number="209" hits="1"/> <line number="211" hits="1"/> <line number="212" hits="1"/> <line number="214" hits="1"/> <line number="215" hits="1"/> <line number="216" hits="1"/> <line number="220" hits="1"/> <line number="223" hits="1"/> <line number="225" hits="1"/> <line number="226" hits="1"/> <line number="227" hits="1"/> <line number="229" hits="1"/> <line number="230" hits="1"/> <line number="231" hits="1"/> <line number="233" hits="1"/> <line number="235" hits="1"/> <line number="236" hits="1"/> <line number="237" hits="1"/> <line number="239" hits="1"/> <line number="241" hits="1"/> <line number="243" hits="1"/> <line number="244" hits="1"/> <line number="245" hits="1"/> <line number="247" hits="1"/> <line number="248" hits="1"/> <line number="249" hits="1"/> <line number="251" hits="1"/> <line number="253" hits="1"/> <line number="254" hits="1"/> <line number="255" hits="1"/> <line number="257" hits="1"/> <line number="259" hits="1"/> <line number="261" hits="1"/> <line number="262" hits="1"/> <line number="263" hits="1"/> <line number="265" hits="1"/> <line number="266" hits="1"/> <line number="267" hits="1"/> <line number="269" hits="1"/> <line number="271" hits="1"/> <line number="272" hits="1"/> <line number="273" hits="1"/> <line number="275" hits="1"/> <line number="277" hits="1"/> <line number="279" hits="1"/> <line number="281" hits="1"/> <line number="284" hits="1"/> <line number="285" hits="1"/> <line number="287" hits="1"/> <line number="288" hits="1"/> <line number="289" hits="1"/> <line number="290" hits="1"/> <line number="292" hits="1"/> <line number="294" hits="1"/> <line number="295" hits="1"/> <line number="296" hits="1"/> <line number="298" hits="1"/> <line number="300" hits="1"/> <line number="303" hits="1"/> <line number="305" hits="1"/> <line number="308" hits="1"/> <line number="309" hits="1"/> <line number="311" hits="1"/> <line number="314" hits="1"/> <line number="317" hits="1"/> <line number="320" hits="1"/> <line number="321" hits="1"/> <line number="323" hits="1"/> <line number="325" hits="1"/> <line number="328" hits="1"/> <line number="329" hits="1"/> <line number="331" hits="1"/> <line number="333" hits="1"/> <line number="336" hits="1"/> <line number="337" hits="1"/> <line number="339" hits="1"/> <line number="341" hits="1"/> <line number="344" hits="1"/> <line number="345" hits="1"/> <line number="347" hits="1"/> <line number="349" hits="1"/> <line number="352" hits="1"/> <line number="353" hits="1"/> <line number="355" hits="1"/> <line number="357" hits="1"/> <line number="360" hits="1"/> <line number="361" hits="1"/> <line number="363" hits="1"/> </lines> </class> <class name="test_package_fetchers.py" filename="tests/unit/test_package_fetchers.py" complexity="0" line-rate="1" branch-rate="1"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="5" hits="1"/> <line number="6" hits="1"/> <line number="7" hits="1"/> <line number="9" hits="1"/> <line number="12" hits="1"/> <line number="15" hits="1"/> <line number="16" hits="1"/> <line number="18" hits="1"/> <line number="20" hits="1"/> <line number="21" hits="1"/> <line number="23" hits="1"/> <line number="34" hits="1"/> <line number="35" hits="1"/> <line number="47" hits="1"/> <line number="48" hits="1"/> <line number="49" hits="1"/> <line number="51" hits="1"/> <line number="53" hits="1"/> <line number="56" hits="1"/> <line number="57" hits="1"/> <line number="60" hits="1"/> <line number="61" hits="1"/> <line number="64" hits="1"/> <line number="65" hits="1"/> <line number="66" hits="1"/> <line number="67" hits="1"/> <line number="69" hits="1"/> <line number="70" hits="1"/> <line number="72" hits="1"/> <line number="88" hits="1"/> <line number="93" hits="1"/> <line number="94" hits="1"/> <line number="95" hits="1"/> <line number="96" hits="1"/> <line number="97" hits="1"/> <line number="99" hits="1"/> <line number="101" hits="1"/> <line number="102" hits="1"/> <line number="105" hits="1"/> <line number="106" hits="1"/> <line number="107" hits="1"/> <line number="108" hits="1"/> <line number="110" hits="1"/> <line number="111" hits="1"/> <line number="113" hits="1"/> <line number="129" hits="1"/> <line number="130" hits="1"/> <line number="131" hits="1"/> <line number="132" hits="1"/> <line number="134" hits="1"/> <line number="139" hits="1"/> <line number="142" hits="1"/> <line number="145" hits="1"/> <line number="146" hits="1"/> <line number="148" hits="1"/> <line number="149" hits="1"/> <line number="151" hits="1"/> <line number="158" hits="1"/> <line number="164" hits="1"/> <line number="165" hits="1"/> <line number="166" hits="1"/> <line number="167" hits="1"/> <line number="168" hits="1"/> <line number="170" hits="1"/> <line number="172" hits="1"/> <line number="173" hits="1"/> <line number="176" hits="1"/> <line number="177" hits="1"/> <line number="178" hits="1"/> <line number="179" hits="1"/> <line number="182" hits="1"/> <line number="183" hits="1"/> <line number="185" hits="1"/> <line number="186" hits="1"/> <line number="188" hits="1"/> <line number="195" hits="1"/> <line number="196" hits="1"/> <line number="197" hits="1"/> <line number="198" hits="1"/> <line number="200" hits="1"/> <line number="206" hits="1"/> <line number="209" hits="1"/> <line number="212" hits="1"/> <line number="213" hits="1"/> <line number="214" hits="1"/> <line number="215" hits="1"/> <line number="217" hits="1"/> <line number="218" hits="1"/> <line number="220" hits="1"/> <line number="228" hits="1"/> <line number="229" hits="1"/> <line number="240" hits="1"/> <line number="241" hits="1"/> <line number="242" hits="1"/> <line number="244" hits="1"/> <line number="246" hits="1"/> <line number="249" hits="1"/> <line number="256" hits="1"/> <line number="257" hits="1"/> <line number="260" hits="1"/> <line number="261" hits="1"/> <line number="262" hits="1"/> <line number="263" hits="1"/> <line number="265" hits="1"/> <line number="266" hits="1"/> <line number="268" hits="1"/> <line number="276" hits="1"/> <line number="280" hits="1"/> <line number="283" hits="1"/> <line number="285" hits="1"/> <line number="288" hits="1"/> <line number="289" hits="1"/> <line number="291" hits="1"/> <line number="296" hits="1"/> <line number="297" hits="1"/> <line number="300" hits="1"/> <line number="301" hits="1"/> <line number="304" hits="1"/> <line number="305" hits="1"/> <line number="307" hits="1"/> <line number="310" hits="1"/> <line number="311" hits="1"/> <line number="313" hits="1"/> <line number="318" hits="1"/> <line number="319" hits="1"/> <line number="322" hits="1"/> <line number="323" hits="1"/> <line number="326" hits="1"/> <line number="327" hits="1"/> <line number="329" hits="1"/> <line number="331" hits="1"/> <line number="332" hits="1"/> <line number="334" hits="1"/> <line number="335" hits="1"/> <line number="337" hits="1"/> <line number="339" hits="1"/> <line number="340" hits="1"/> <line number="342" hits="1"/> <line number="343" hits="1"/> <line number="345" hits="1"/> <line number="352" hits="1"/> <line number="353" hits="1"/> <line number="365" hits="1"/> <line number="366" hits="1"/> <line number="367" hits="1"/> <line number="369" hits="1"/> <line number="371" hits="1"/> <line number="374" hits="1"/> <line number="375" hits="1"/> <line number="376" hits="1"/> <line number="377" hits="1"/> <line number="378" hits="1"/> <line number="381" hits="1"/> <line number="382" hits="1"/> <line number="383" hits="1"/> <line number="385" hits="1"/> <line number="386" hits="1"/> <line number="388" hits="1"/> <line number="396" hits="1"/> <line number="397" hits="1"/> <line number="421" hits="1"/> <line number="422" hits="1"/> <line number="423" hits="1"/> <line number="425" hits="1"/> <line number="427" hits="1"/> <line number="430" hits="1"/> <line number="431" hits="1"/> <line number="432" hits="1"/> <line number="435" hits="1"/> <line number="436" hits="1"/> <line number="437" hits="1"/> <line number="438" hits="1"/> <line number="439" hits="1"/> <line number="441" hits="1"/> <line number="442" hits="1"/> <line number="444" hits="1"/> <line number="452" hits="1"/> <line number="456" hits="1"/> <line number="458" hits="1"/> </lines> </class> <class name="test_security.py" filename="tests/unit/test_security.py" complexity="0" line-rate="0.9186" branch-rate="0.9231"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="5" hits="1"/> <line number="7" hits="1"/> <line number="8" hits="1"/> <line number="11" hits="1"/> <line number="14" hits="1"/> <line number="16" hits="1"/> <line number="17" hits="1"/> <line number="24" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="25" hits="1"/> <line number="27" hits="1"/> <line number="29" hits="1"/> <line number="30" hits="1"/> <line number="32" hits="1"/> <line number="39" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="40" hits="1"/> <line number="42" hits="1"/> <line number="44" hits="1"/> <line number="45" hits="1"/> <line number="48" hits="1"/> <line number="53" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="56" hits="1"/> <line number="57" hits="1"/> <line number="58" hits="1"/> <line number="60" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="61"/> <line number="61" hits="0"/> <line number="63" hits="1"/> <line number="64" hits="0"/> <line number="66" hits="0"/> <line number="68" hits="1"/> <line number="70" hits="1"/> <line number="71" hits="1"/> <line number="74" hits="1"/> <line number="75" hits="1"/> <line number="78" hits="1"/> <line number="79" hits="1"/> <line number="80" hits="1"/> <line number="83" hits="1"/> <line number="85" hits="1"/> <line number="87" hits="0"/> <line number="89" hits="0"/> <line number="91" hits="1"/> <line number="93" hits="1"/> <line number="94" hits="1"/> <line number="97" hits="1"/> <line number="100" hits="1"/> <line number="103" hits="1"/> <line number="104" hits="1"/> <line number="105" hits="1"/> <line number="108" hits="1"/> <line number="111" hits="1"/> <line number="113" hits="1"/> <line number="120" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="121" hits="1"/> <line number="122" hits="1"/> <line number="123" hits="1"/> <line number="125" hits="1"/> <line number="127" hits="1"/> <line number="128" hits="1"/> <line number="134" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="135" hits="1"/> <line number="136" hits="1"/> <line number="137" hits="1"/> <line number="139" hits="1"/> <line number="141" hits="1"/> <line number="145" hits="1"/> <line number="151" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="152" hits="1"/> <line number="153" hits="1"/> <line number="154" hits="1"/> <line number="156" hits="1"/> <line number="158" hits="1"/> <line number="159" hits="1"/> <line number="165" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="166" hits="1"/> <line number="167" hits="1"/> <line number="168" hits="1"/> <line number="171" hits="1"/> <line number="174" hits="1"/> <line number="177" hits="1"/> <line number="180" hits="1"/> <line number="181" hits="1"/> <line number="183" hits="1"/> <line number="184" hits="1"/> <line number="186" hits="1"/> <line number="189" hits="1"/> <line number="191" hits="1"/> <line number="192" hits="1"/> <line number="193" hits="1"/> <line number="194" hits="1"/> <line number="197" hits="1"/> <line number="198" hits="1"/> <line number="201" hits="1"/> <line number="202" hits="1"/> <line number="205" hits="1"/> <line number="206" hits="1"/> <line number="210" hits="1"/> <line number="211" hits="1"/> <line number="213" hits="1"/> <line number="215" hits="1"/> <line number="218" hits="1"/> <line number="219" hits="1"/> <line number="220" hits="1"/> <line number="224" hits="1"/> <line number="225" hits="1"/> <line number="226" hits="1"/> <line number="228" hits="1"/> <line number="229" hits="1"/> <line number="231" hits="1"/> <line number="233" hits="1"/> <line number="236" hits="1"/> <line number="237" hits="1"/> <line number="239" hits="1"/> <line number="242" hits="1"/> <line number="243" hits="1"/> <line number="246" hits="1"/> <line number="247" hits="1"/> <line number="248" hits="1"/> <line number="250" hits="0"/> <line number="251" hits="1"/> <line number="253" hits="1"/> <line number="256" hits="1"/> <line number="259" hits="1"/> <line number="261" hits="1"/> <line number="262" hits="1"/> <line number="264" hits="1"/> <line number="270" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="272" hits="1"/> <line number="273" hits="1"/> <line number="274" hits="1"/> <line number="275" hits="0"/> <line number="276" hits="0"/> <line number="278" hits="1"/> <line number="280" hits="1"/> <line number="281" hits="1"/> <line number="283" hits="1"/> <line number="291" hits="1"/> <line number="292" hits="1"/> <line number="293" hits="1"/> <line number="294" hits="0"/> <line number="295" hits="0"/> <line number="297" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="298" hits="1"/> <line number="299" hits="1"/> <line number="300" hits="1"/> <line number="302" hits="1"/> <line number="303" hits="0"/> <line number="305" hits="0"/> <line number="307" hits="1"/> <line number="310" hits="1"/> <line number="315" hits="1"/> <line number="316" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="317" hits="1"/> <line number="318" hits="1"/> <line number="319" hits="1"/> <line number="320" hits="1"/> <line number="321" hits="0"/> <line number="322" hits="0"/> <line number="324" hits="1"/> <line number="326" hits="1"/> <line number="327" hits="1"/> <line number="330" hits="1"/> <line number="339" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="340" hits="1"/> <line number="341" hits="1"/> <line number="342" hits="1"/> <line number="344" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="339"/> <line number="346" hits="1"/> <line number="347" hits="1"/> <line number="348" hits="1"/> <line number="351" hits="1"/> </lines> </class> <class name="test_shutdown_handler.py" filename="tests/unit/test_shutdown_handler.py" complexity="0" line-rate="0.9783" branch-rate="0.6"> <methods/> <lines> <line number="3" hits="1"/> <line number="4" hits="1"/> <line number="5" hits="1"/> <line number="7" hits="1"/> <line number="10" hits="1"/> <line number="13" hits="1"/> <line number="15" hits="1"/> <line number="17" hits="1"/> <line number="18" hits="1"/> <line number="19" hits="1"/> <line number="21" hits="1"/> <line number="23" hits="1"/> <line number="24" hits="1"/> <line number="26" hits="1"/> <line number="28" hits="1"/> <line number="29" hits="1"/> <line number="31" hits="1"/> <line number="34" hits="1"/> <line number="40" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="41"/> <line number="41" hits="0"/> <line number="43" hits="1"/> <line number="45" hits="1"/> <line number="47" hits="1"/> <line number="49" hits="1"/> <line number="50" hits="0"/> <line number="52" hits="1"/> <line number="54" hits="1"/> <line number="55" hits="1"/> <line number="56" hits="1"/> <line number="57" hits="1"/> <line number="58" hits="1"/> <line number="60" hits="1"/> <line number="62" hits="1"/> <line number="64" hits="1"/> <line number="65" hits="0"/> <line number="67" hits="1"/> <line number="68" hits="0"/> <line number="70" hits="1"/> <line number="71" hits="1"/> <line number="73" hits="1"/> <line number="75" hits="1"/> <line number="76" hits="1"/> <line number="77" hits="1"/> <line number="79" hits="1"/> <line number="80" hits="1"/> <line number="82" hits="1"/> <line number="84" hits="1"/> <line number="85" hits="1"/> <line number="87" hits="1"/> <line number="90" hits="1"/> <line number="93" hits="1"/> <line number="94" hits="1"/> <line number="97" hits="1"/> <line number="98" hits="1"/> <line number="101" hits="1"/> <line number="103" hits="1"/> <line number="104" hits="1"/> <line number="105" hits="1"/> <line number="107" hits="1"/> <line number="108" hits="1"/> <line number="109" hits="1"/> <line number="112" hits="1"/> <line number="115" hits="1"/> <line number="116" hits="1"/> <line number="118" hits="1"/> <line number="119" hits="1"/> <line number="120" hits="1"/> <line number="122" hits="1"/> <line number="123" hits="1"/> <line number="125" hits="1"/> <line number="126" hits="1"/> <line number="128" hits="1"/> <line number="129" hits="1"/> <line number="131" hits="1"/> <line number="132" hits="1"/> <line number="135" hits="1"/> <line number="138" hits="1"/> <line number="141" hits="1"/> <line number="143" hits="1"/> <line number="144" hits="1"/> <line number="145" hits="1"/> <line number="147" hits="1"/> <line number="148" hits="1"/> <line number="150" hits="1"/> <line number="152" hits="1"/> <line number="153" hits="1"/> <line number="155" hits="1"/> <line number="156" hits="1"/> <line number="158" hits="1"/> <line number="159" hits="1"/> <line number="162" hits="1"/> <line number="163" hits="1"/> <line number="164" hits="1"/> <line number="166" hits="1"/> <line number="169" hits="1"/> <line number="171" hits="1"/> <line number="172" hits="1"/> <line number="173" hits="1"/> <line number="175" hits="1"/> <line number="176" hits="1"/> <line number="178" hits="1"/> <line number="180" hits="1"/> <line number="181" hits="1"/> <line number="183" hits="1"/> <line number="185" hits="1"/> <line number="187" hits="1"/> <line number="189" hits="1"/> <line number="190" hits="1"/> <line number="191" hits="1"/> <line number="192" hits="1"/> <line number="194" hits="1"/> <line number="195" hits="1"/> <line number="198" hits="1"/> <line number="199" hits="1"/> <line number="200" hits="1"/> <line number="202" hits="1"/> <line number="205" hits="1"/> <line number="206" hits="1"/> <line number="208" hits="1"/> <line number="209" hits="1"/> <line number="210" hits="1"/> <line number="212" hits="1"/> <line number="213" hits="1"/> <line number="216" hits="1"/> <line number="217" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="220"/> <line number="218" hits="1"/> <line number="220" hits="1"/> <line number="221" hits="1"/> <line number="224" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="228"/> <line number="225" hits="1"/> <line number="228" hits="1"/> <line number="229" hits="1"/> <line number="230" hits="1"/> <line number="232" hits="1"/> <line number="234" hits="1"/> <line number="236" hits="1"/> <line number="237" hits="0"/> <line number="239" hits="1"/> <line number="241" hits="1"/> <line number="242" hits="1"/> <line number="243" hits="1"/> <line number="244" hits="1"/> <line number="246" hits="1"/> <line number="248" hits="1"/> <line number="251" hits="1"/> <line number="252" hits="1"/> <line number="254" hits="1"/> <line number="257" hits="1"/> <line number="258" hits="1"/> <line number="260" hits="1"/> <line number="261" hits="1"/> <line number="262" hits="1"/> <line number="264" hits="1"/> <line number="265" hits="1"/> <line number="267" hits="1"/> <line number="269" hits="1"/> <line number="270" hits="1"/> <line number="272" hits="1"/> <line number="274" hits="1"/> <line number="276" hits="1"/> <line number="278" hits="1"/> <line number="280" hits="1"/> <line number="281" hits="1"/> <line number="282" hits="1"/> <line number="284" hits="1"/> <line number="285" hits="1"/> <line number="287" hits="1"/> <line number="288" hits="1"/> <line number="290" hits="1"/> <line number="291" hits="1"/> <line number="293" hits="1"/> <line number="294" hits="1"/> <line number="296" hits="1"/> <line number="297" hits="1"/> <line number="298" hits="1"/> <line number="300" hits="1"/> <line number="303" hits="1"/> <line number="304" hits="1"/> <line number="307" hits="1"/> <line number="309" hits="1"/> <line number="311" hits="1"/> <line number="313" hits="1"/> <line number="315" hits="1"/> <line number="318" hits="1"/> <line number="319" hits="1"/> <line number="322" hits="1"/> <line number="323" hits="1"/> <line number="326" hits="1"/> <line number="328" hits="1"/> <line number="330" hits="1"/> <line number="331" hits="1"/> <line number="333" hits="1"/> <line number="334" hits="1"/> <line number="336" hits="1"/> <line number="337" hits="1"/> <line number="339" hits="1"/> <line number="340" hits="1"/> <line number="341" hits="1"/> <line number="342" hits="1"/> <line number="344" hits="1"/> <line number="348" hits="1"/> <line number="351" hits="1"/> <line number="353" hits="1"/> <line number="355" hits="1"/> <line number="362" hits="1"/> <line number="363" hits="1"/> <line number="364" hits="1"/> <line number="365" hits="1"/> <line number="366" hits="1"/> <line number="368" hits="1"/> <line number="369" hits="1"/> <line number="371" hits="1"/> <line number="374" hits="1"/> <line number="377" hits="1"/> <line number="379" hits="1"/> <line number="381" hits="1"/> <line number="383" hits="1"/> <line number="384" hits="1"/> <line number="386" hits="1"/> <line number="387" hits="1"/> <line number="388" hits="1"/> <line number="390" hits="1"/> <line number="391" hits="1"/> <line number="393" hits="1"/> <line number="394" hits="1"/> <line number="395" hits="1"/> <line number="396" hits="1"/> <line number="398" hits="1"/> <line number="401" hits="1"/> <line number="404" hits="1"/> <line number="405" hits="1"/> <line number="406" hits="1"/> <line number="409" hits="1"/> <line number="412" hits="1"/> <line number="414" hits="1"/> <line number="416" hits="1"/> <line number="418" hits="1"/> <line number="419" hits="0"/> <line number="420" hits="1"/> <line number="422" hits="1"/> <line number="424" hits="1"/> <line number="428" hits="1"/> <line number="430" hits="1"/> <line number="432" hits="1"/> <line number="434" hits="1"/> <line number="436" hits="1"/> <line number="437" hits="1"/> <line number="438" hits="1" branch="true" condition-coverage="50% (1/2)" missing-branches="exit"/> <line number="440" hits="1"/> <line number="442" hits="1"/> <line number="444" hits="1"/> <line number="447" hits="1"/> <line number="450" hits="1"/> <line number="452" hits="1"/> <line number="453" hits="1"/> <line number="454" hits="1"/> <line number="456" hits="1"/> <line number="457" hits="1"/> <line number="459" hits="1"/> <line number="460" hits="1"/> <line number="461" hits="1"/> <line number="462" hits="1"/> <line number="463" hits="1"/> <line number="465" hits="1"/> <line number="467" hits="1"/> <line number="470" hits="1"/> <line number="471" hits="1"/> <line number="473" hits="1"/> <line number="475" hits="1"/> <line number="477" hits="1"/> <line number="479" hits="1"/> <line number="480" hits="1"/> <line number="483" hits="1" branch="true" condition-coverage="100% (2/2)"/> <line number="484" hits="1"/> <line number="486" hits="1"/> <line number="489" hits="1"/> <line number="492" hits="1"/> </lines> </class> </classes> </package> </packages> </coverage>

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/brianirish/laravel-docs-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server