Skip to content

add coverage report to CI #38

add coverage report to CI

add coverage report to CI #38

GitHub Actions / Coverage succeeded Jan 29, 2024 in 0s

Code Coverage 33.48 %

This run completed at 01/29/2024 03:04:31

Details

Coverage Report: JaCoCo

  • jchess
Outcome Value
Code Coverage % 33.48%
✔️ Number of Lines Covered 1073
❌ Number of Lines Missed 2132
Total Number of Lines 3205

Details:

jchess/server/adapter

❌ PieceComponentAdapter.java

Lines Missed:

❌ MarkerComponentAdapter.java

Lines Missed:

❌ Vector2IAdapter.java

Lines Missed:

❌ IAdapter.java
❌ TileComponentAdapter.java

Lines Missed:

❌ EntityAdapter.java

Lines Missed:

❌ PieceIdentifierAdapter.java

Lines Missed:

jchess/ecs

✔️ EcsEventManager.java

All Lines Covered!

✔️ EntityManager.java

All Lines Covered!

✔️ Entity.java

All Lines Covered!

✔️ EcsEvent.java

All Lines Covered!

jchess/common/components

❌ TileComponent.java

Lines Missed:

                .filter(entity -> entity.tile != null)
❌ PieceComponent.java

Lines Missed:

❌ PieceIdentifier.java

Lines Missed:

✔️ MarkerComponent.java

All Lines Covered!

logback

❌ LogLevelCompositeConverter.java

Lines Missed:

❌ StartupTriggeringPolicy.java

Lines Missed:

    }
✔️ LogbackLoggerConfigurator.java

All Lines Covered!

jchess/gamemode/hex2p

❌ Hex2PlayerGame.java

Lines Missed:

public class Hex2PlayerGame extends BaseChessGame {
    }
  • Line #80
                .forEach(entity -> {
  • Line #97
                });
  • Line #98
    }
❌ Hex2pPieceLayouts.java

Lines Missed:

    }
    }
  • Line #68
    }
  • Line #91
    }
  • Line #102
        }
  • Line #106
        }
  • Line #110
        }
  • Line #114
        }
  • Line #118
        }
  • Line #122
        }
  • Line #126
        }
  • Line #130
        }
  • Line #134
        }
  • Line #138
        }
  • Line #144
                return;
  • Line #147
        }
❌ Hex2pPieces.java

Lines Missed:

  • Line #96
    }

jchess/server/api/socket

❌ BoardUpdateWebsocket.java

Lines Missed:

            return;
    }
    }
            return;
            return;
  • Line #73
    }
  • Line #81
                .toList());
  • Line #92
        }
  • Line #102
                    continue;
  • Line #107
                    continue;
  • Line #112
                    channelsNotified++;
  • Line #113
                }
  • Line #114
            }
  • Line #118
        }
  • Line #125
                }
  • Line #126
            }
  • Line #128
        }
❌ PieceSelectionWebsocket.java

Lines Missed:

            return;
    }
    }
            return;
  • Line #66
            return;
  • Line #72
            return;
  • Line #78
    }
  • Line #86
        }
  • Line #90
        }
  • Line #102
                return;
  • Line #108
                return;
  • Line #112
        }
  • Line #123
            }
  • Line #125
        }
  • Line #131
            }
  • Line #133
        }
❌ GameOverWebsocket.java

Lines Missed:

            return;
    }
    }
            return;
            return;
  • Line #64
    }
  • Line #71
        }
  • Line #81
            }
  • Line #83
        }
  • Line #89
            }
  • Line #91
        }
❌ ChatWebsocket.java

Lines Missed:

    }
            return;
            return;
            return;
  • Line #69
            return;
  • Line #74
    }
  • Line #86
        }
  • Line #95
        }
  • Line #100
        }
  • Line #111
                    continue;
  • Line #115
                socketsNotified++;
  • Line #116
            }
  • Line #118
        }
  • Line #124
            }
  • Line #126
        }
  • Line #139
        }
  • Line #151
                return;
  • Line #157
                return;
  • Line #165
        }

dx/schema/conf

❌ Marker.java

Lines Missed:

    }
  • Line #77
    }
❌ BoardTheme.java

Lines Missed:

    }
❌ Piece.java

Lines Missed:

  • Line #65
    }
  • Line #85
    }
  • Line #105
    }
❌ GameConfig.java

Lines Missed:

    }
❌ Theme.java

Lines Missed:

  • Line #69
    }
  • Line #91
    }
  • Line #113
    }
❌ PiecesTheme.java

Lines Missed:

    }
  • Line #82
    }
❌ PlayerColor.java

Lines Missed:

    }
  • Line #73
    }
❌ LayoutTheme.java

Lines Missed:

  • Line #97
    }
  • Line #121
    }
  • Line #145
    }
  • Line #165
    }
  • Line #185
    }

jchess/common/events

✔️ BoardClickedEvent.java

All Lines Covered!

✔️ GameOverEvent.java

All Lines Covered!

✔️ PieceMoveEvent.java

All Lines Covered!

❌ OfferPieceSelectionEvent.java

Lines Missed:

✔️ RenderEvent.java

All Lines Covered!

✔️ BoardInitializedEvent.java

All Lines Covered!

✔️ PieceOfferSelectedEvent.java

All Lines Covered!

jchess/el

✔️ CompiledTileExpression.java

All Lines Covered!

jchess/common/moveset/special

❌ ShapeShifting.java

Lines Missed:

public class ShapeShifting implements ISpecialRule {
    }
                .map(target -> {
        }
  • Line #65
        }
❌ PawnPromotion.java

Lines Missed:

        });
                        },
❌ Castling.java

Lines Missed:

  • Line #74
            return;
  • Line #79
            return;
  • Line #85
            return;
❌ EnPassant.java

Lines Missed:

  • Line #73
                continue;
  • Line #105
                        .anyMatch(tile -> tile == doubleMove.toTile());
  • Line #142
        }
❌ RangedAttack.java

Lines Missed:

    }
        }
        }
✔️ SpecialFirstMove.java

All Lines Covered!

jchess/server/api/servlet

❌ GameModesServlet.java

Lines Missed:

                continue;
                    .map(Theme::getDisplayName)
        }
    }
❌ BoardClickedServlet.java

Lines Missed:

            return;
    }
❌ GameCreateServlet.java

Lines Missed:

        } catch (Exception e) {
            return;
        }
    }
❌ GameInfoServlet.java

Lines Missed:

            return;
    }
❌ ThemesServlet.java

Lines Missed:

    }

dx/schema/types

❌ TileComponent.java

Lines Missed:

  • Line #70
    }
  • Line #94
    }
  • Line #114
    }
❌ MarkerComponent.java

Lines Missed:

    }
❌ MarkerType.java

Lines Missed:

❌ PieceComponent.java

Lines Missed:

    }
❌ PieceType.java

Lines Missed:

❌ LayoutId.java

Lines Missed:

    }
    }
❌ PieceIdentifier.java

Lines Missed:

  • Line #76
    }
  • Line #96
    }
  • Line #116
    }
  • Line #136
    }
❌ GameMode.java

Lines Missed:

  • Line #87
    }
  • Line #107
    }
  • Line #127
    }
  • Line #149
    }
  • Line #169
    }
❌ Entity.java

Lines Missed:

  • Line #70
    }
  • Line #92
    }
  • Line #114
    }
❌ Vector2I.java

Lines Missed:

    }
  • Line #77
    }

jchess/common/theme

❌ ThemeUtils.java

Lines Missed:

                .replaceFirst("^/", "");
❌ ThemeStore.java

Lines Missed:

            }
        } catch (Exception e) {
        }
    }
  • Line #64
            }
  • Line #65
        });
  • Line #70
            }
  • Line #71
        });
  • Line #72
    }
  • Line #78
                        .toList()
  • Line #83
        }
  • Line #84
    }
  • Line #88
    }
  • Line #101
                .filter(theme -> {
  • Line #108
                .toList();

jchess/server

❌ JChessServer.java

Lines Missed:

  • Line #84
                .setHandler(pathHandler)
  • Line #88
    }
❌ GameSessionData.java

Lines Missed:

    }
    }

dx/schema/message

❌ GameModes.java

Lines Missed:

    }
❌ GameOver.java

Lines Missed:

    }
❌ Piece.java

Lines Missed:

❌ ChatMessage.java

Lines Missed:

  • Line #69
    }
  • Line #89
    }
  • Line #109
    }
❌ GameClicked.java

Lines Missed:

    }
  • Line #79
    }
❌ OfferPieceSelection.java

Lines Missed:

    }
  • Line #81
    }
❌ PieceSelected.java

Lines Missed:

    }
❌ BoardUpdate.java

Lines Missed:

    }
  • Line #80
    }
❌ GameInfo.java

Lines Missed:

  • Line #91
    }
  • Line #115
    }
  • Line #135
    }
  • Line #155
    }
  • Line #175
    }
❌ Themes.java

Lines Missed:

    }
  • Line #80
    }
❌ GameOverSubscribe.java

Lines Missed:

    }
❌ BoardUpdateSubscribe.java

Lines Missed:

    }
  • Line #80
    }

jchess/common/state

❌ IRevertibleState.java
✔️ StateManager.java

All Lines Covered!

jchess/server/session

❌ ISessionData.java
❌ SessionManager.java

Lines Missed:

  • Line #123
            return;
  • Line #128
            return;
  • Line #137
    }
  • Line #157
                        continue;
  • Line #169
            }
  • Line #177
            }
  • Line #181
    }
  • Line #188
            } catch (IOException e) {
  • Line #191
                        session.sessionId, session.lastRenewalTime
❌ SessionMgrController.java

Lines Missed:

            return;
        }));
    }
    }
            return;
    }
  • Line #74
            }
  • Line #75
        } catch (Exception e) {
  • Line #77
        }
  • Line #78
    }
✔️ BucketTreeMap.java

All Lines Covered!

jchess/gamemode/square2p

❌ Square2pPieceLayouts.java

Lines Missed:

    }
  • Line #118
        }
  • Line #122
        }
  • Line #126
        }
  • Line #132
                return;
❌ Square2PlayerGame.java

Lines Missed:

❌ Square2pPieces.java

Lines Missed:

jchess/common/state/impl

✔️ ArrayState.java

All Lines Covered!

✔️ BooleanState.java

All Lines Covered!

util

❌ ResourceHelper.java

Lines Missed:

                } else {
            } catch (Exception e) {
            }
        }

jchess/el/v2

❌ Rotations.java

Lines Missed:

❌ Neighbor.java

Lines Missed:

✔️ ExpressionCompiler.java

All Lines Covered!

❌ Filter.java

Lines Missed:

❌ Repeat.java

Lines Missed:

❌ Regex.java

Lines Missed:

  • Line #121
        return split.stream().filter(str -> !str.isBlank()).map(String::trim);
❌ Sequence.java

Lines Missed:

❌ TileExpression.java

Lines Missed:

  • Line #134
                mergeOpTree(expressions, mid + 1, end, mergeOperator)
❌ Or.java

Lines Missed:

jchess/common/moveset

❌ NormalMove.java

Lines Missed:

✔️ MoveIntention.java

All Lines Covered!

❌ ISpecialRule.java
❌ ISpecialRuleProvider.java

jchess/common

❌ BaseChessGame.java

Lines Missed:

  • Line #83
            return;
  • Line #98
            return;
  • Line #173
            return;
  • Line #222
        }
  • Line #273
            return;
❌ IChessGame.java

jchess/gamemode

❌ PieceStore.java

Lines Missed:

❌ GameModeStore.java

Lines Missed:

    }
❌ IPieceLayoutProvider.java

jchess/server/util

❌ HttpUtils.java

Lines Missed:

    }
    }
❌ SocketUtils.java

Lines Missed:

    }
❌ SessionUtils.java

Lines Missed:

❌ JsonUtils.java

Lines Missed:

        } catch (JsonProcessingException e) {
        }

example/undertow

❌ UndertowWebsocket.java

Lines Missed:

                .setHandler(pathHandler)
    }
        }
  • Line #67
        }
  • Line #77
                    numChannelsDropped++;
  • Line #78
                    continue;
  • Line #82
                numChannelsNotified++;
  • Line #83
            }
  • Line #85
        }
❌ UndertowMicroserviceGET.java

Lines Missed:

                .setHandler(pathHandler)
    }
        }
❌ UndertowResourceHosting.java

Lines Missed:

                .setHandler(pathHandler)
    }

jchess/gamemode/hex3p

❌ Hex3pPieceLayouts.java

Lines Missed:

  • Line #89
    }
  • Line #165
        }
  • Line #169
        }
  • Line #173
        }
  • Line #177
        }
  • Line #183
                return;
❌ Hex3PlayerGame.java

Lines Missed:

❌ Hex3pPieces.java

Lines Missed: