Example #1
0
  /** @param args */
  public static void main(String[] args) {

    FooBarQix fooBarQix = new FooBarQix();
    for (int i = 1; i < 101; i++) {
      System.out.println(fooBarQix.fooBarQixiseInteger(i));
    }
  }
Example #2
0
 public FooBarQixBuilder buildPartDivisor(int n) {
   for (FooBarQix fbq : FooBarQix.values()) {
     if (n % fbq.value == 0) {
       sb.append(fbq.replace);
     }
   }
   return this;
 }
Example #3
0
 public FooBarQixBuilder buildPartContent(int n) {
   String s = Integer.toString(n);
   for (int j = 0; j < s.length(); j++) {
     for (FooBarQix fbq : FooBarQix.values()) {
       if (s.charAt(j) == fbq.charValue) {
         sb.append(fbq.replace);
       }
     }
   }
   return this;
 }
  @Test
  public void testFormatNumber() throws Exception {
    assertEquals(FooBarQix.formatNumber(1), "1");

    // Basic
    assertEquals(FooBarQix.formatNumber(3), "FOOFOO");
    assertEquals(FooBarQix.formatNumber(5), "BARBAR");
    assertEquals(FooBarQix.formatNumber(7), "QIXQIX");

    // Advanced
    assertEquals(FooBarQix.formatNumber(13), "FOO");
    assertEquals(FooBarQix.formatNumber(15), "FOOBARBAR");
    assertEquals(FooBarQix.formatNumber(33), "FOOFOOFOO");

    // Divisors should have high precedence
    assertEquals(FooBarQix.formatNumber(51), "FOOBAR");

    // The content sould be analysed in the order they appear
    assertEquals(FooBarQix.formatNumber(53), "BARFOO");
  }