Closed irongut closed 2 years ago
<?xml version='1.0'?>
<!DOCTYPE coverage SYSTEM "http://cobertura.sourceforge.net/xml/coverage-04.dtd">
<!-- Generated by simplecov-cobertura version 2.1.0 (https://github.com/dashingrocket/simplecov-cobertura) -->
<coverage line-rate="0.97" lines-covered="350" lines-valid="362" complexity="0" version="0" timestamp="1645060052">
<sources>
<source>/Users/pboling/src/my/oauth2</source>
</sources>
<packages>
<package name="oauth2" line-rate="0.97" complexity="0">
<classes>
<class name="oauth2" filename="lib/oauth2.rb" line-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<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="11" hits="1"/>
<line number="12" hits="1"/>
</lines>
</class>
<class name="access_token" filename="lib/oauth2/access_token.rb" line-rate="0.96" complexity="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="3" hits="1"/>
<line number="4" hits="1"/>
<line number="7" hits="1"/>
<line number="13" hits="1"/>
<line number="14" hits="7"/>
<line number="15" hits="7"/>
<line number="23" hits="1"/>
<line number="24" hits="1"/>
<line number="41" hits="1"/>
<line number="42" hits="151"/>
<line number="43" hits="151"/>
<line number="44" hits="151"/>
<line number="45" hits="151"/>
<line number="46" hits="453"/>
<line number="48" hits="151"/>
<line number="49" hits="151"/>
<line number="50" hits="151"/>
<line number="51" hits="151"/>
<line number="52" hits="151"/>
<line number="55" hits="151"/>
<line number="61" hits="1"/>
<line number="62" hits="6"/>
<line number="68" hits="1"/>
<line number="69" hits="11"/>
<line number="75" hits="1"/>
<line number="76" hits="3"/>
<line number="83" hits="1"/>
<line number="84" hits="2"/>
<line number="86" hits="2"/>
<line number="87" hits="2"/>
<line number="88" hits="2"/>
<line number="89" hits="2"/>
<line number="90" hits="2"/>
<line number="91" hits="2"/>
<line number="97" hits="1"/>
<line number="98" hits="1"/>
<line number="107" hits="1"/>
<line number="108" hits="20"/>
<line number="109" hits="20"/>
<line number="115" hits="1"/>
<line number="116" hits="2"/>
<line number="122" hits="1"/>
<line number="123" hits="18"/>
<line number="129" hits="1"/>
<line number="130" hits="2"/>
<line number="136" hits="1"/>
<line number="137" hits="0"/>
<line number="143" hits="1"/>
<line number="144" hits="2"/>
<line number="148" hits="1"/>
<line number="149" hits="8"/>
<line number="152" hits="1"/>
<line number="154" hits="1"/>
<line number="155" hits="20"/>
<line number="157" hits="8"/>
<line number="158" hits="8"/>
<line number="160" hits="8"/>
<line number="161" hits="8"/>
<line number="163" hits="4"/>
<line number="164" hits="4"/>
<line number="165" hits="4"/>
<line number="167" hits="0"/>
<line number="171" hits="0"/>
<line number="175" hits="1"/>
<line number="176" hits="13"/>
<line number="178" hits="12"/>
</lines>
</class>
<class name="authenticator" filename="lib/oauth2/authenticator.rb" line-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="3" hits="1"/>
<line number="4" hits="1"/>
<line number="5" hits="1"/>
<line number="7" hits="1"/>
<line number="8" hits="106"/>
<line number="9" hits="106"/>
<line number="10" hits="106"/>
<line number="22" hits="1"/>
<line number="23" hits="106"/>
<line number="25" hits="14"/>
<line number="27" hits="89"/>
<line number="29" hits="1"/>
<line number="31" hits="1"/>
<line number="33" hits="1"/>
<line number="37" hits="1"/>
<line number="38" hits="15"/>
<line number="41" hits="1"/>
<line number="45" hits="1"/>
<line number="46" hits="89"/>
<line number="51" hits="1"/>
<line number="52" hits="1"/>
<line number="57" hits="1"/>
<line number="58" hits="14"/>
<line number="59" hits="14"/>
<line number="60" hits="14"/>
<line number="64" hits="1"/>
<line number="65" hits="14"/>
</lines>
</class>
<class name="client" filename="lib/oauth2/client.rb" line-rate="0.95" complexity="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="4" hits="1"/>
<line number="6" hits="1"/>
<line number="7" hits="1"/>
<line number="9" hits="1"/>
<line number="10" hits="1"/>
<line number="11" hits="1"/>
<line number="31" hits="1"/>
<line number="32" hits="204"/>
<line number="33" hits="204"/>
<line number="34" hits="204"/>
<line number="35" hits="204"/>
<line number="36" hits="204"/>
<line number="39" hits="204"/>
<line number="49" hits="204"/>
<line number="55" hits="1"/>
<line number="56" hits="0"/>
<line number="57" hits="0"/>
<line number="61" hits="1"/>
<line number="62" hits="423"/>
<line number="63" hits="158"/>
<line number="64" hits="158"/>
<line number="65" hits="134"/>
<line number="66" hits="134"/>
<line number="69" hits="158"/>
<line number="76" hits="1"/>
<line number="77" hits="11"/>
<line number="78" hits="11"/>
<line number="84" hits="1"/>
<line number="85" hits="100"/>
<line number="100" hits="1"/>
<line number="101" hits="141"/>
<line number="103" hits="141"/>
<line number="105" hits="141"/>
<line number="106" hits="141"/>
<line number="107" hits="141"/>
<line number="109" hits="141"/>
<line number="111" hits="141"/>
<line number="113" hits="3"/>
<line number="114" hits="3"/>
<line number="115" hits="3"/>
<line number="117" hits="2"/>
<line number="118" hits="1"/>
<line number="119" hits="1"/>
<line number="121" hits="2"/>
<line number="124" hits="127"/>
<line number="126" hits="11"/>
<line number="127" hits="11"/>
<line number="129" hits="2"/>
<line number="130" hits="2"/>
<line number="132" hits="0"/>
<line number="133" hits="0"/>
<line number="143" hits="1"/>
<line number="144" hits="97"/>
<line number="145" hits="182"/>
<line number="146" hits="2"/>
<line number="148" hits="180"/>
<line number="151" hits="97"/>
<line number="153" hits="97"/>
<line number="154" hits="97"/>
<line number="155" hits="97"/>
<line number="156" hits="97"/>
<line number="157" hits="79"/>
<line number="158" hits="79"/>
<line number="160" hits="18"/>
<line number="161" hits="18"/>
<line number="163" hits="97"/>
<line number="164" hits="97"/>
<line number="167" hits="97"/>
<line number="169" hits="0"/>
<line number="172" hits="97"/>
<line number="173" hits="3"/>
<line number="174" hits="3"/>
<line number="176" hits="94"/>
<line number="182" hits="1"/>
<line number="183" hits="48"/>
<line number="189" hits="1"/>
<line number="190" hits="5"/>
<line number="196" hits="1"/>
<line number="197" hits="11"/>
<line number="203" hits="1"/>
<line number="204" hits="21"/>
<line number="207" hits="1"/>
<line number="208" hits="9"/>
<line number="227" hits="1"/>
<line number="228" hits="55"/>
<line number="229" hits="2"/>
<line number="231" hits="53"/>
<line number="235" hits="1"/>
<line number="236" hits="91"/>
<line number="237" hits="91"/>
<line number="240" hits="1"/>
<line number="242" hits="1"/>
<line number="243" hits="97"/>
<line number="244" hits="97"/>
<line number="246" hits="93"/>
<line number="250" hits="93"/>
<line number="251" hits="1"/>
<line number="253" hits="92"/>
</lines>
</class>
<class name="error" filename="lib/oauth2/error.rb" line-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="3" hits="1"/>
<line number="7" hits="1"/>
<line number="8" hits="14"/>
<line number="9" hits="14"/>
<line number="11" hits="14"/>
<line number="12" hits="7"/>
<line number="13" hits="7"/>
<line number="14" hits="7"/>
<line number="17" hits="14"/>
<line number="23" hits="1"/>
<line number="24" hits="14"/>
<line number="26" hits="14"/>
<line number="28" hits="14"/>
<line number="29" hits="7"/>
<line number="30" hits="7"/>
<line number="32" hits="7"/>
<line number="35" hits="14"/>
<line number="37" hits="14"/>
</lines>
</class>
<class name="mac_token" filename="lib/oauth2/mac_token.rb" line-rate="0.95" complexity="0">
<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="7" hits="1"/>
<line number="14" hits="1"/>
<line number="15" hits="3"/>
<line number="18" hits="1"/>
<line number="30" hits="1"/>
<line number="31" hits="19"/>
<line number="32" hits="19"/>
<line number="34" hits="18"/>
<line number="43" hits="1"/>
<line number="44" hits="4"/>
<line number="46" hits="4"/>
<line number="47" hits="4"/>
<line number="49" hits="4"/>
<line number="53" hits="1"/>
<line number="54" hits="1"/>
<line number="61" hits="1"/>
<line number="62" hits="9"/>
<line number="63" hits="9"/>
<line number="65" hits="9"/>
<line number="67" hits="8"/>
<line number="69" hits="7"/>
<line number="71" hits="7"/>
<line number="80" hits="1"/>
<line number="82" hits="8"/>
<line number="91" hits="8"/>
<line number="97" hits="1"/>
<line number="98" hits="19"/>
<line number="101" hits="1"/>
<line number="103" hits="0"/>
<line number="107" hits="17"/>
<line number="109" hits="0"/>
<line number="112" hits="1"/>
<line number="116" hits="1"/>
<line number="120" hits="1"/>
<line number="124" hits="1"/>
<line number="125" hits="8"/>
</lines>
</class>
<class name="response" filename="lib/oauth2/response.rb" line-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="3" hits="1"/>
<line number="5" hits="1"/>
<line number="7" hits="1"/>
<line number="8" hits="1"/>
<line number="9" hits="1"/>
<line number="14" hits="62"/>
<line number="15" hits="44"/>
<line number="16" hits="3"/>
<line number="20" hits="1"/>
<line number="32" hits="1"/>
<line number="33" hits="3"/>
<line number="34" hits="3"/>
<line number="35" hits="3"/>
<line number="36" hits="6"/>
<line number="46" hits="1"/>
<line number="47" hits="147"/>
<line number="48" hits="147"/>
<line number="52" hits="1"/>
<line number="53" hits="6"/>
<line number="57" hits="1"/>
<line number="58" hits="150"/>
<line number="62" hits="1"/>
<line number="63" hits="154"/>
<line number="69" hits="1"/>
<line number="70" hits="134"/>
<line number="72" hits="131"/>
<line number="76" hits="1"/>
<line number="77" hits="244"/>
<line number="81" hits="1"/>
<line number="82" hits="244"/>
<line number="84" hits="244"/>
<line number="89" hits="1"/>
<line number="90" hits="1"/>
</lines>
</class>
<class name="assertion" filename="lib/oauth2/strategy/assertion.rb" line-rate="0.89" complexity="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="3" hits="1"/>
<line number="4" hits="1"/>
<line number="23" hits="1"/>
<line number="27" hits="1"/>
<line number="28" hits="1"/>
<line number="45" hits="1"/>
<line number="46" hits="8"/>
<line number="47" hits="8"/>
<line number="50" hits="1"/>
<line number="51" hits="8"/>
<line number="53" hits="8"/>
<line number="60" hits="1"/>
<line number="62" hits="8"/>
<line number="67" hits="8"/>
<line number="68" hits="8"/>
<line number="69" hits="0"/>
<line number="70" hits="0"/>
</lines>
</class>
<class name="auth_code" filename="lib/oauth2/strategy/auth_code.rb" line-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="6" hits="1"/>
<line number="10" hits="1"/>
<line number="11" hits="3"/>
<line number="17" hits="1"/>
<line number="18" hits="3"/>
<line number="27" hits="1"/>
<line number="28" hits="44"/>
<line number="30" hits="44"/>
</lines>
</class>
<class name="base" filename="lib/oauth2/strategy/base.rb" line-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="3" hits="1"/>
<line number="4" hits="1"/>
<line number="5" hits="95"/>
</lines>
</class>
<class name="client_credentials" filename="lib/oauth2/strategy/client_credentials.rb" line-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="6" hits="1"/>
<line number="10" hits="1"/>
<line number="11" hits="1"/>
<line number="18" hits="1"/>
<line number="19" hits="20"/>
<line number="20" hits="20"/>
</lines>
</class>
<class name="implicit" filename="lib/oauth2/strategy/implicit.rb" line-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="6" hits="1"/>
<line number="10" hits="1"/>
<line number="11" hits="3"/>
<line number="17" hits="1"/>
<line number="18" hits="3"/>
<line number="24" hits="1"/>
<line number="25" hits="1"/>
</lines>
</class>
<class name="password" filename="lib/oauth2/strategy/password.rb" line-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1"/>
<line number="2" hits="1"/>
<line number="6" hits="1"/>
<line number="10" hits="1"/>
<line number="11" hits="1"/>
<line number="19" hits="1"/>
<line number="20" hits="10"/>
<line number="23" hits="10"/>
</lines>
</class>
</classes>
</package>
</packages>
</coverage>
Originally posted by @pboling in https://github.com/irongut/CodeCoverageSummary/issues/17#issuecomment-1042545234
SimpleCov.start do
enable_coverage :branch
primary_coverage :branch
# ...
end
<?xml version='1.0'?>
<!DOCTYPE coverage SYSTEM "http://cobertura.sourceforge.net/xml/coverage-04.dtd">
<!-- Generated by simplecov-cobertura version 2.1.0 (https://github.com/dashingrocket/simplecov-cobertura) -->
<coverage line-rate="0.97" lines-covered="347" lines-valid="359" branches-covered="57" branches-valid="66" branch-rate="0.86" complexity="0" version="0" timestamp="1645165717">
<sources>
<source>/Users/pboling/src/my/oauth2</source>
</sources>
<packages>
<package name="oauth2" line-rate="0.97" branch-rate="0.86" complexity="0">
<classes>
<class name="oauth2" filename="lib/oauth2.rb" line-rate="1.0" branch-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="2" hits="1" branch="false"/>
<line number="3" hits="1" branch="false"/>
<line number="4" hits="1" branch="false"/>
<line number="5" hits="1" branch="false"/>
<line number="6" hits="1" branch="false"/>
<line number="7" hits="1" branch="false"/>
<line number="8" hits="1" branch="false"/>
<line number="9" hits="1" branch="false"/>
<line number="10" hits="1" branch="false"/>
<line number="11" hits="1" branch="false"/>
<line number="12" hits="1" branch="false"/>
</lines>
</class>
<class name="access_token" filename="lib/oauth2/access_token.rb" line-rate="0.96" branch-rate="0.75" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="2" hits="1" branch="false"/>
<line number="3" hits="1" branch="false"/>
<line number="4" hits="1" branch="false"/>
<line number="7" hits="1" branch="false"/>
<line number="13" hits="1" branch="false"/>
<line number="14" hits="7" branch="false"/>
<line number="15" hits="7" branch="false"/>
<line number="23" hits="1" branch="false"/>
<line number="24" hits="1" branch="false"/>
<line number="41" hits="1" branch="false"/>
<line number="42" hits="151" branch="false"/>
<line number="43" hits="151" branch="false"/>
<line number="44" hits="151" branch="false"/>
<line number="45" hits="151" branch="false"/>
<line number="46" hits="453" branch="false"/>
<line number="48" hits="151" branch="false"/>
<line number="49" hits="151" branch="false"/>
<line number="50" hits="151" branch="false"/>
<line number="51" hits="151" branch="true" condition-coverage="100% (1/1)"/>
<line number="52" hits="151" branch="false"/>
<line number="55" hits="151" branch="false"/>
<line number="61" hits="1" branch="false"/>
<line number="62" hits="6" branch="false"/>
<line number="68" hits="1" branch="false"/>
<line number="69" hits="11" branch="false"/>
<line number="75" hits="1" branch="false"/>
<line number="76" hits="3" branch="false"/>
<line number="83" hits="1" branch="false"/>
<line number="84" hits="2" branch="true" condition-coverage="100% (1/1)"/>
<line number="86" hits="2" branch="false"/>
<line number="87" hits="2" branch="false"/>
<line number="88" hits="2" branch="false"/>
<line number="89" hits="2" branch="false"/>
<line number="90" hits="2" branch="true" condition-coverage="100% (1/1)"/>
<line number="91" hits="2" branch="false"/>
<line number="97" hits="1" branch="false"/>
<line number="98" hits="1" branch="false"/>
<line number="107" hits="1" branch="false"/>
<line number="108" hits="20" branch="false"/>
<line number="109" hits="20" branch="false"/>
<line number="115" hits="1" branch="false"/>
<line number="116" hits="2" branch="false"/>
<line number="122" hits="1" branch="false"/>
<line number="123" hits="18" branch="false"/>
<line number="129" hits="1" branch="false"/>
<line number="130" hits="2" branch="false"/>
<line number="136" hits="1" branch="false"/>
<line number="137" hits="0" branch="false"/>
<line number="143" hits="1" branch="false"/>
<line number="144" hits="2" branch="false"/>
<line number="148" hits="1" branch="false"/>
<line number="149" hits="8" branch="false"/>
<line number="152" hits="1" branch="false"/>
<line number="154" hits="1" branch="false"/>
<line number="155" hits="20" branch="false"/>
<line number="157" hits="8" branch="true" condition-coverage="100% (1/1)"/>
<line number="158" hits="8" branch="false"/>
<line number="160" hits="8" branch="true" condition-coverage="100% (1/1)"/>
<line number="161" hits="8" branch="false"/>
<line number="163" hits="4" branch="true" condition-coverage="100% (1/1)"/>
<line number="164" hits="4" branch="false"/>
<line number="165" hits="4" branch="true" condition-coverage="100% (1/1)"/>
<line number="167" hits="0" branch="true" condition-coverage="0% (0/1)"/>
<line number="171" hits="0" branch="true" condition-coverage="0% (0/1)"/>
<line number="175" hits="1" branch="false"/>
<line number="176" hits="13" branch="false"/>
<line number="178" hits="12" branch="false"/>
</lines>
</class>
<class name="authenticator" filename="lib/oauth2/authenticator.rb" line-rate="1.0" branch-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="3" hits="1" branch="false"/>
<line number="4" hits="1" branch="false"/>
<line number="5" hits="1" branch="false"/>
<line number="7" hits="1" branch="false"/>
<line number="8" hits="106" branch="false"/>
<line number="9" hits="106" branch="false"/>
<line number="10" hits="106" branch="false"/>
<line number="22" hits="1" branch="false"/>
<line number="23" hits="106" branch="false"/>
<line number="25" hits="14" branch="true" condition-coverage="100% (1/1)"/>
<line number="27" hits="89" branch="true" condition-coverage="100% (1/1)"/>
<line number="29" hits="1" branch="true" condition-coverage="100% (1/1)"/>
<line number="31" hits="1" branch="true" condition-coverage="100% (1/1)"/>
<line number="33" hits="1" branch="true" condition-coverage="100% (1/1)"/>
<line number="37" hits="1" branch="false"/>
<line number="38" hits="15" branch="false"/>
<line number="41" hits="1" branch="false"/>
<line number="45" hits="1" branch="false"/>
<line number="46" hits="89" branch="false"/>
<line number="51" hits="1" branch="false"/>
<line number="52" hits="1" branch="false"/>
<line number="57" hits="1" branch="false"/>
<line number="58" hits="14" branch="false"/>
<line number="59" hits="14" branch="false"/>
<line number="60" hits="14" branch="false"/>
<line number="64" hits="1" branch="false"/>
<line number="65" hits="14" branch="false"/>
</lines>
</class>
<class name="client" filename="lib/oauth2/client.rb" line-rate="0.95" branch-rate="0.94" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="2" hits="1" branch="false"/>
<line number="4" hits="1" branch="false"/>
<line number="6" hits="1" branch="false"/>
<line number="7" hits="1" branch="false"/>
<line number="9" hits="1" branch="false"/>
<line number="10" hits="1" branch="false"/>
<line number="11" hits="1" branch="false"/>
<line number="31" hits="1" branch="false"/>
<line number="32" hits="204" branch="false"/>
<line number="33" hits="204" branch="false"/>
<line number="34" hits="204" branch="false"/>
<line number="35" hits="204" branch="false"/>
<line number="36" hits="204" branch="false"/>
<line number="39" hits="204" branch="false"/>
<line number="49" hits="204" branch="true" condition-coverage="100% (1/1)"/>
<line number="55" hits="1" branch="false"/>
<line number="56" hits="0" branch="false"/>
<line number="57" hits="0" branch="false"/>
<line number="61" hits="1" branch="false"/>
<line number="62" hits="402" branch="false"/>
<line number="64" hits="137" branch="true" condition-coverage="100% (1/1)"/>
<line number="65" hits="134" branch="true" condition-coverage="100% (1/1)"/>
<line number="73" hits="1" branch="false"/>
<line number="74" hits="11" branch="false"/>
<line number="75" hits="11" branch="false"/>
<line number="81" hits="1" branch="false"/>
<line number="82" hits="100" branch="false"/>
<line number="97" hits="1" branch="false"/>
<line number="98" hits="141" branch="true" condition-coverage="100% (1/1)"/>
<line number="100" hits="141" branch="false"/>
<line number="102" hits="141" branch="false"/>
<line number="103" hits="141" branch="true" condition-coverage="100% (1/1)"/>
<line number="104" hits="141" branch="true" condition-coverage="100% (1/1)"/>
<line number="106" hits="141" branch="false"/>
<line number="108" hits="141" branch="false"/>
<line number="110" hits="3" branch="true" condition-coverage="100% (1/1)"/>
<line number="111" hits="3" branch="false"/>
<line number="112" hits="3" branch="true" condition-coverage="100% (1/1)"/>
<line number="114" hits="2" branch="true" condition-coverage="100% (1/1)"/>
<line number="115" hits="1" branch="true" condition-coverage="100% (1/1)"/>
<line number="116" hits="1" branch="false"/>
<line number="118" hits="2" branch="false"/>
<line number="121" hits="127" branch="true" condition-coverage="100% (1/1)"/>
<line number="123" hits="11" branch="true" condition-coverage="100% (1/1)"/>
<line number="124" hits="11" branch="true" condition-coverage="100% (1/1)"/>
<line number="126" hits="2" branch="false"/>
<line number="127" hits="2" branch="false"/>
<line number="129" hits="0" branch="true" condition-coverage="0% (0/1)"/>
<line number="130" hits="0" branch="false"/>
<line number="140" hits="1" branch="false"/>
<line number="141" hits="97" branch="false"/>
<line number="142" hits="182" branch="false"/>
<line number="143" hits="2" branch="true" condition-coverage="100% (1/1)"/>
<line number="145" hits="180" branch="true" condition-coverage="100% (1/1)"/>
<line number="148" hits="97" branch="false"/>
<line number="150" hits="97" branch="false"/>
<line number="151" hits="97" branch="false"/>
<line number="152" hits="97" branch="false"/>
<line number="153" hits="97" branch="false"/>
<line number="154" hits="79" branch="true" condition-coverage="100% (1/1)"/>
<line number="155" hits="79" branch="false"/>
<line number="157" hits="18" branch="true" condition-coverage="100% (1/1)"/>
<line number="158" hits="18" branch="false"/>
<line number="160" hits="97" branch="false"/>
<line number="161" hits="97" branch="false"/>
<line number="164" hits="97" branch="false"/>
<line number="166" hits="0" branch="false"/>
<line number="169" hits="97" branch="true" condition-coverage="100% (1/1)"/>
<line number="170" hits="3" branch="true" condition-coverage="100% (1/1)"/>
<line number="171" hits="3" branch="false"/>
<line number="173" hits="94" branch="false"/>
<line number="179" hits="1" branch="false"/>
<line number="180" hits="48" branch="false"/>
<line number="186" hits="1" branch="false"/>
<line number="187" hits="5" branch="false"/>
<line number="193" hits="1" branch="false"/>
<line number="194" hits="11" branch="false"/>
<line number="200" hits="1" branch="false"/>
<line number="201" hits="21" branch="false"/>
<line number="204" hits="1" branch="false"/>
<line number="205" hits="9" branch="false"/>
<line number="224" hits="1" branch="false"/>
<line number="225" hits="55" branch="false"/>
<line number="226" hits="2" branch="true" condition-coverage="100% (1/1)"/>
<line number="228" hits="53" branch="true" condition-coverage="100% (1/1)"/>
<line number="232" hits="1" branch="false"/>
<line number="233" hits="91" branch="false"/>
<line number="234" hits="91" branch="false"/>
<line number="237" hits="1" branch="false"/>
<line number="239" hits="1" branch="false"/>
<line number="240" hits="97" branch="false"/>
<line number="241" hits="97" branch="true" condition-coverage="100% (1/1)"/>
<line number="243" hits="93" branch="false"/>
<line number="247" hits="93" branch="false"/>
<line number="248" hits="1" branch="true" condition-coverage="100% (1/1)"/>
<line number="250" hits="92" branch="true" condition-coverage="100% (1/1)"/>
</lines>
</class>
<class name="error" filename="lib/oauth2/error.rb" line-rate="1.0" branch-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="2" hits="1" branch="false"/>
<line number="3" hits="1" branch="false"/>
<line number="7" hits="1" branch="false"/>
<line number="8" hits="14" branch="false"/>
<line number="9" hits="14" branch="false"/>
<line number="11" hits="14" branch="true" condition-coverage="100% (1/1)"/>
<line number="12" hits="7" branch="true" condition-coverage="100% (1/1)"/>
<line number="13" hits="7" branch="false"/>
<line number="14" hits="7" branch="false"/>
<line number="17" hits="14" branch="false"/>
<line number="23" hits="1" branch="false"/>
<line number="24" hits="14" branch="false"/>
<line number="26" hits="14" branch="false"/>
<line number="28" hits="14" branch="false"/>
<line number="29" hits="7" branch="true" condition-coverage="100% (1/1)"/>
<line number="30" hits="7" branch="false"/>
<line number="32" hits="7" branch="true" condition-coverage="100% (1/1)"/>
<line number="35" hits="14" branch="false"/>
<line number="37" hits="14" branch="false"/>
</lines>
</class>
<class name="mac_token" filename="lib/oauth2/mac_token.rb" line-rate="0.95" branch-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="2" hits="1" branch="false"/>
<line number="3" hits="1" branch="false"/>
<line number="4" hits="1" branch="false"/>
<line number="6" hits="1" branch="false"/>
<line number="7" hits="1" branch="false"/>
<line number="14" hits="1" branch="false"/>
<line number="15" hits="3" branch="false"/>
<line number="18" hits="1" branch="false"/>
<line number="30" hits="1" branch="false"/>
<line number="31" hits="19" branch="false"/>
<line number="32" hits="19" branch="false"/>
<line number="34" hits="18" branch="false"/>
<line number="43" hits="1" branch="false"/>
<line number="44" hits="4" branch="false"/>
<line number="46" hits="4" branch="false"/>
<line number="47" hits="4" branch="false"/>
<line number="49" hits="4" branch="false"/>
<line number="53" hits="1" branch="false"/>
<line number="54" hits="1" branch="false"/>
<line number="61" hits="1" branch="false"/>
<line number="62" hits="9" branch="false"/>
<line number="63" hits="9" branch="false"/>
<line number="65" hits="9" branch="false"/>
<line number="67" hits="8" branch="true" condition-coverage="100% (1/1)"/>
<line number="69" hits="7" branch="false"/>
<line number="71" hits="7" branch="false"/>
<line number="80" hits="1" branch="false"/>
<line number="82" hits="8" branch="false"/>
<line number="91" hits="8" branch="false"/>
<line number="97" hits="1" branch="false"/>
<line number="98" hits="19" branch="false"/>
<line number="101" hits="1" branch="true" condition-coverage="100% (1/1)"/>
<line number="103" hits="0" branch="false"/>
<line number="107" hits="17" branch="true" condition-coverage="100% (1/1)"/>
<line number="109" hits="0" branch="false"/>
<line number="112" hits="1" branch="true" condition-coverage="100% (1/1)"/>
<line number="116" hits="1" branch="false"/>
<line number="120" hits="1" branch="false"/>
<line number="124" hits="1" branch="false"/>
<line number="125" hits="8" branch="false"/>
</lines>
</class>
<class name="response" filename="lib/oauth2/response.rb" line-rate="1.0" branch-rate="0.75" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="2" hits="1" branch="false"/>
<line number="3" hits="1" branch="false"/>
<line number="5" hits="1" branch="false"/>
<line number="7" hits="1" branch="false"/>
<line number="8" hits="1" branch="false"/>
<line number="9" hits="1" branch="false"/>
<line number="14" hits="62" branch="false"/>
<line number="15" hits="44" branch="false"/>
<line number="16" hits="3" branch="false"/>
<line number="20" hits="1" branch="false"/>
<line number="32" hits="1" branch="false"/>
<line number="33" hits="3" branch="false"/>
<line number="34" hits="3" branch="false"/>
<line number="35" hits="3" branch="false"/>
<line number="36" hits="6" branch="false"/>
<line number="46" hits="1" branch="false"/>
<line number="47" hits="147" branch="false"/>
<line number="48" hits="147" branch="false"/>
<line number="52" hits="1" branch="false"/>
<line number="53" hits="6" branch="false"/>
<line number="57" hits="1" branch="false"/>
<line number="58" hits="150" branch="false"/>
<line number="62" hits="1" branch="false"/>
<line number="63" hits="154" branch="false"/>
<line number="69" hits="1" branch="false"/>
<line number="70" hits="134" branch="true" condition-coverage="100% (1/1)"/>
<line number="72" hits="131" branch="false"/>
<line number="76" hits="1" branch="false"/>
<line number="77" hits="244" branch="false"/>
<line number="81" hits="1" branch="false"/>
<line number="82" hits="244" branch="true" condition-coverage="100% (1/1)"/>
<line number="84" hits="244" branch="false"/>
<line number="89" hits="1" branch="false"/>
<line number="90" hits="1" branch="false"/>
</lines>
</class>
<class name="assertion" filename="lib/oauth2/strategy/assertion.rb" line-rate="0.89" branch-rate="0.25" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="3" hits="1" branch="false"/>
<line number="4" hits="1" branch="false"/>
<line number="23" hits="1" branch="false"/>
<line number="27" hits="1" branch="false"/>
<line number="28" hits="1" branch="false"/>
<line number="45" hits="1" branch="false"/>
<line number="46" hits="8" branch="false"/>
<line number="47" hits="8" branch="false"/>
<line number="50" hits="1" branch="false"/>
<line number="51" hits="8" branch="false"/>
<line number="53" hits="8" branch="false"/>
<line number="60" hits="1" branch="false"/>
<line number="62" hits="8" branch="false"/>
<line number="67" hits="8" branch="false"/>
<line number="68" hits="8" branch="true" condition-coverage="100% (1/1)"/>
<line number="69" hits="0" branch="true" condition-coverage="0% (0/1)"/>
<line number="70" hits="0" branch="true" condition-coverage="0% (0/1)"/>
</lines>
</class>
<class name="auth_code" filename="lib/oauth2/strategy/auth_code.rb" line-rate="1.0" branch-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="2" hits="1" branch="false"/>
<line number="6" hits="1" branch="false"/>
<line number="10" hits="1" branch="false"/>
<line number="11" hits="3" branch="false"/>
<line number="17" hits="1" branch="false"/>
<line number="18" hits="3" branch="false"/>
<line number="27" hits="1" branch="false"/>
<line number="28" hits="44" branch="false"/>
<line number="30" hits="44" branch="false"/>
</lines>
</class>
<class name="base" filename="lib/oauth2/strategy/base.rb" line-rate="1.0" branch-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="2" hits="1" branch="false"/>
<line number="3" hits="1" branch="false"/>
<line number="4" hits="1" branch="false"/>
<line number="5" hits="95" branch="false"/>
</lines>
</class>
<class name="client_credentials" filename="lib/oauth2/strategy/client_credentials.rb" line-rate="1.0" branch-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="2" hits="1" branch="false"/>
<line number="6" hits="1" branch="false"/>
<line number="10" hits="1" branch="false"/>
<line number="11" hits="1" branch="false"/>
<line number="18" hits="1" branch="false"/>
<line number="19" hits="20" branch="false"/>
<line number="20" hits="20" branch="false"/>
</lines>
</class>
<class name="implicit" filename="lib/oauth2/strategy/implicit.rb" line-rate="1.0" branch-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="2" hits="1" branch="false"/>
<line number="6" hits="1" branch="false"/>
<line number="10" hits="1" branch="false"/>
<line number="11" hits="3" branch="false"/>
<line number="17" hits="1" branch="false"/>
<line number="18" hits="3" branch="false"/>
<line number="24" hits="1" branch="false"/>
<line number="25" hits="1" branch="false"/>
</lines>
</class>
<class name="password" filename="lib/oauth2/strategy/password.rb" line-rate="1.0" branch-rate="1.0" complexity="0">
<methods/>
<lines>
<line number="1" hits="1" branch="false"/>
<line number="2" hits="1" branch="false"/>
<line number="6" hits="1" branch="false"/>
<line number="10" hits="1" branch="false"/>
<line number="11" hits="1" branch="false"/>
<line number="19" hits="1" branch="false"/>
<line number="20" hits="10" branch="false"/>
<line number="23" hits="10" branch="false"/>
</lines>
</class>
</classes>
</package>
</packages>
</coverage>
@irongut You saw that I provided the branch enabled output above?
You saw that I provided the branch enabled output above?
Yes, that looks as expected.
I've got a couple of other things I want to include in the next version and I'm hoping to release it by the end of the week.
Bug Report
CCS fails with simplecov & simplecov-cobertura on default settings because branch metrics are not reported.
See posts by @pboling in https://github.com/irongut/CodeCoverageSummary/issues/17#issuecomment-1042543104
Workflow File
coverage.yml
Workflow Run
Actions Log
Expected Behavior
CCS should report the metrics which are present and fail more gracefully if any required part of the coverage file is missing.
Workaround
Enable Branch coverage. Primary Coverage should be set to 'line' (the default).
See simplecov docs.
Linked To
17 Test compatibility with other tools