Examples of RailsStatsResults


Examples of hudson.plugins.rubyMetrics.railsStats.model.RailsStatsResults

    public RailsStatsResults parse(ByteArrayOutputStream output) {
        return parse(output.toString());
    }

    public RailsStatsResults parse(String output) {
        RailsStatsResults response = new RailsStatsResults();

        String[] aux = output.split("[\n\r]");
        Collection<String> lines = new LinkedHashSet<String>(Arrays.asList(aux));

        lines = removeSeparators(lines);

        Iterator<String> linesIterator = lines.iterator();
        String[] header = new String[1];
        while (header.length < 2 && linesIterator.hasNext()) {
            header = cleanArray(linesIterator.next().split("[|]+")); //report header
        }

        while (linesIterator.hasNext()) {
            String line = linesIterator.next();

            String[] columns = cleanArray(line.split("[|]+"));

            if (columns.length > 1) { //not last line
                Map<RailsStatsMetrics, Integer> metrics = new TreeMap<RailsStatsMetrics, Integer>(new RailsStatsMetrics.COMPARATOR());

                for (int i = 1; i < header.length; i++) { //columns[0] == rails class type
                    metrics.put(RailsStatsMetrics.toRailsStatsMetrics(header[i].trim()), Integer.valueOf(columns[i].trim()));
                }

                response.addMetric(columns[0].trim(), metrics);
            } else {
                Pattern pattern = Pattern.compile("CodeLOC:([0-9]+)TestLOC:([0-9]+)CodetoTestRatio:([0-9:.]+)");
                Matcher matcher = pattern.matcher(columns[0].replaceAll("[\\s\\r\\n+-]+", ""));
                if (matcher.matches()) {
                    response.setCodeLocSummary(matcher.group(1));
                    response.setTestLocSummary(matcher.group(2));
                    response.setCodeToTestRatio(matcher.group(3));
                }
            }

        }
View Full Code Here

Examples of hudson.plugins.rubyMetrics.railsStats.model.RailsStatsResults

        super(rakeInstallation, rakeWorkingDir, "stats");
    }

    protected void buildAction(ByteArrayOutputStream out, AbstractBuild<?, ?> build) {
        final RailsStatsParser parser = new RailsStatsParser();
        RailsStatsResults results = parser.parse(out);

        RailsStatsBuildAction action = new RailsStatsBuildAction(build, results);
        build.getActions().add(action);
    }
View Full Code Here

Examples of hudson.plugins.rubyMetrics.railsStats.model.RailsStatsResults

                        "+----------------------+-------+-------+---------+---------+-----+-------+\n" +
                        "| Total                |    18 |     6 |       1 |       0 |   0 |     0 |\n" +
                        "+----------------------+-------+-------+---------+---------+-----+-------+\n" +
                        "Code LOC: 6     Test LOC: 0     Code to Test Ratio: 1:0.0";

        RailsStatsResults metrics = parser.parse(out);

        assertTrue(!metrics.getMetrics().isEmpty());
        assertNotNull(metrics.getCodeLocSummary());
        assertNotNull(metrics.getTestLocSummary());
        assertNotNull(metrics.getCodeToTestRatio());
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.