Coverage Report - org.jbehave.core.io.UnderscoredToCapitalized
 
Classes in this File Line Coverage Branch Coverage Complexity
UnderscoredToCapitalized
100%
13/13
100%
6/6
2
 
 1  
 package org.jbehave.core.io;
 2  
 
 3  
 import static org.apache.commons.lang.StringUtils.contains;
 4  
 import static org.apache.commons.lang.StringUtils.substringAfterLast;
 5  
 import static org.apache.commons.lang.StringUtils.substringBefore;
 6  
 import static org.apache.commons.lang.WordUtils.capitalize;
 7  
 
 8  
 public class UnderscoredToCapitalized implements StoryNameResolver {
 9  
 
 10  
     private final String extension;
 11  
 
 12  
     public UnderscoredToCapitalized() {
 13  459
         this(".story");
 14  459
     }
 15  
 
 16  460
     public UnderscoredToCapitalized(String extension) {
 17  460
         this.extension = extension;
 18  460
     }
 19  
 
 20  
     public String resolveName(String path) {
 21  59
         String name = path;
 22  59
         if (contains(name, extension)) {
 23  24
             name = substringBefore(name, extension);
 24  
         }
 25  59
         if (contains(name, '/')) {
 26  22
             name = substringAfterLast(name, "/");
 27  
         }
 28  59
         if (contains(name, '.')) {
 29  17
             name = substringAfterLast(name, ".");
 30  
         }
 31  59
         return capitalize(name.replace("_", " "));
 32  
     }
 33  
 
 34  
 }