Program: 183505
Project: 183505
Buggy source:
@SmallTest public void testA() throws Exception {
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  byte[] b=new byte[20];
  b[0]=(byte)0x81;
  b[1]=(byte)0x71;
  b[2]=(byte)0x00;
  b[3]=(byte)0x55;
  b[4]=(byte)0x05;
  b[5]=(byte)0x20;
  b[6]=(byte)0xF0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,7));
  b[0]=(byte)0x91;
  b[1]=(byte)0x71;
  b[2]=(byte)0x00;
  b[3]=(byte)0x55;
  b[4]=(byte)0x05;
  b[5]=(byte)0x20;
  b[6]=(byte)0xF0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,7));
  byte[] bRet=PhoneNumberUtils.networkPortionToCalledPartyBCD("String_Node_Str");
  assertEquals(7,bRet.length);
  for (int i=0; i < 7; i++) {
    assertEquals(b[i],bRet[i]);
  }
  bRet=PhoneNumberUtils.networkPortionToCalledPartyBCD("String_Node_Str");
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(bRet,0,bRet.length));
  b[0]=(byte)0x81;
  b[1]=(byte)0x71;
  b[2]=(byte)0x00;
  b[3]=(byte)0x55;
  b[4]=(byte)0x05;
  b[5]=(byte)0x20;
  b[6]=(byte)0xB0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,7));
  b[0]=(byte)0x91;
  b[1]=(byte)0x71;
  b[2]=(byte)0x00;
  b[3]=(byte)0x55;
  b[4]=(byte)0x05;
  b[5]=(byte)0x20;
  b[6]=(byte)0xB0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,7));
  b[0]=(byte)0x81;
  b[1]=(byte)0x2A;
  b[2]=(byte)0xB1;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,3));
  b[0]=(byte)0x81;
  b[1]=(byte)0x2B;
  b[2]=(byte)0xB1;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,3));
  b[0]=(byte)0x91;
  b[1]=(byte)0x2A;
  b[2]=(byte)0xB1;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,3));
  b[0]=(byte)0x81;
  b[1]=(byte)0xAA;
  b[2]=(byte)0x12;
  b[3]=(byte)0xFB;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,4));
  b[0]=(byte)0x91;
  b[1]=(byte)0xAA;
  b[2]=(byte)0x12;
  b[3]=(byte)0xFB;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,4));
  b[0]=(byte)0x81;
  b[1]=(byte)0x9A;
  b[2]=(byte)0xA9;
  b[3]=(byte)0x71;
  b[4]=(byte)0x00;
  b[5]=(byte)0x55;
  b[6]=(byte)0x05;
  b[7]=(byte)0x20;
  b[8]=(byte)0xB0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,9));
  b[0]=(byte)0x91;
  b[1]=(byte)0x9A;
  b[2]=(byte)0xA9;
  b[3]=(byte)0x71;
  b[4]=(byte)0x00;
  b[5]=(byte)0x55;
  b[6]=(byte)0x05;
  b[7]=(byte)0x20;
  b[8]=(byte)0xB0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,9));
  b[0]=(byte)0x81;
  b[1]=(byte)0xAA;
  b[2]=(byte)0x12;
  b[3]=(byte)0x1A;
  b[4]=(byte)0x07;
  b[5]=(byte)0x50;
  b[6]=(byte)0x55;
  b[7]=(byte)0x00;
  b[8]=(byte)0x02;
  b[9]=(byte)0xFB;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,10));
  b[0]=(byte)0x91;
  b[1]=(byte)0xAA;
  b[2]=(byte)0x12;
  b[3]=(byte)0x1A;
  b[4]=(byte)0x07;
  b[5]=(byte)0x50;
  b[6]=(byte)0x55;
  b[7]=(byte)0x00;
  b[8]=(byte)0x02;
  b[9]=(byte)0xFB;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,10));
  b[0]=(byte)0x81;
  b[1]=(byte)0x2A;
  b[2]=(byte)0xA1;
  b[3]=(byte)0x71;
  b[4]=(byte)0x00;
  b[5]=(byte)0x55;
  b[6]=(byte)0x05;
  b[7]=(byte)0x20;
  b[8]=(byte)0xF0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,9));
  b[0]=(byte)0x91;
  b[1]=(byte)0x2A;
  b[2]=(byte)0xB1;
  b[3]=(byte)0x71;
  b[4]=(byte)0x00;
  b[5]=(byte)0x55;
  b[6]=(byte)0x05;
  b[7]=(byte)0x20;
  b[8]=(byte)0xF0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,9));
  assertNull(PhoneNumberUtils.extractNetworkPortion(null));
  assertNull(PhoneNumberUtils.extractPostDialPortion(null));
  assertTrue(PhoneNumberUtils.compare(null,null));
  assertFalse(PhoneNumberUtils.compare(null,"String_Node_Str"));
  assertFalse(PhoneNumberUtils.compare("String_Node_Str",null));
  assertNull(PhoneNumberUtils.toCallerIDMinMatch(null));
  assertNull(PhoneNumberUtils.getStrippedReversed(null));
  assertNull(PhoneNumberUtils.stringFromStringAndTOA(null,1));
}

Fixed version (ground truth):
@SmallTest public void testA() throws Exception {
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  assertEquals("String_Node_Str",PhoneNumberUtils.extractNetworkPortion("String_Node_Str"));
  byte[] b=new byte[20];
  b[0]=(byte)0x81;
  b[1]=(byte)0x71;
  b[2]=(byte)0x00;
  b[3]=(byte)0x55;
  b[4]=(byte)0x05;
  b[5]=(byte)0x20;
  b[6]=(byte)0xF0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,7));
  b[0]=(byte)0x91;
  b[1]=(byte)0x71;
  b[2]=(byte)0x00;
  b[3]=(byte)0x55;
  b[4]=(byte)0x05;
  b[5]=(byte)0x20;
  b[6]=(byte)0xF0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,7));
  byte[] bRet=PhoneNumberUtils.networkPortionToCalledPartyBCD("String_Node_Str");
  assertEquals(7,bRet.length);
  for (int i=0; i < 7; i++) {
    assertEquals(b[i],bRet[i]);
  }
  bRet=PhoneNumberUtils.networkPortionToCalledPartyBCDWithLength("String_Node_Str");
  assertEquals(8,bRet.length);
  assertEquals(bRet[0],7);
  for (int i=1; i < 8; i++) {
    assertEquals(b[i - 1],bRet[i]);
  }
  bRet=PhoneNumberUtils.networkPortionToCalledPartyBCD("String_Node_Str");
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(bRet,0,bRet.length));
  b[0]=(byte)0x81;
  b[1]=(byte)0x71;
  b[2]=(byte)0x00;
  b[3]=(byte)0x55;
  b[4]=(byte)0x05;
  b[5]=(byte)0x20;
  b[6]=(byte)0xB0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,7));
  b[0]=(byte)0x91;
  b[1]=(byte)0x71;
  b[2]=(byte)0x00;
  b[3]=(byte)0x55;
  b[4]=(byte)0x05;
  b[5]=(byte)0x20;
  b[6]=(byte)0xB0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,7));
  b[0]=(byte)0x81;
  b[1]=(byte)0x2A;
  b[2]=(byte)0xB1;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,3));
  b[0]=(byte)0x81;
  b[1]=(byte)0x2B;
  b[2]=(byte)0xB1;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,3));
  b[0]=(byte)0x91;
  b[1]=(byte)0x2A;
  b[2]=(byte)0xB1;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,3));
  b[0]=(byte)0x81;
  b[1]=(byte)0xAA;
  b[2]=(byte)0x12;
  b[3]=(byte)0xFB;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,4));
  b[0]=(byte)0x91;
  b[1]=(byte)0xAA;
  b[2]=(byte)0x12;
  b[3]=(byte)0xFB;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,4));
  b[0]=(byte)0x81;
  b[1]=(byte)0x9A;
  b[2]=(byte)0xA9;
  b[3]=(byte)0x71;
  b[4]=(byte)0x00;
  b[5]=(byte)0x55;
  b[6]=(byte)0x05;
  b[7]=(byte)0x20;
  b[8]=(byte)0xB0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,9));
  b[0]=(byte)0x91;
  b[1]=(byte)0x9A;
  b[2]=(byte)0xA9;
  b[3]=(byte)0x71;
  b[4]=(byte)0x00;
  b[5]=(byte)0x55;
  b[6]=(byte)0x05;
  b[7]=(byte)0x20;
  b[8]=(byte)0xB0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,9));
  b[0]=(byte)0x81;
  b[1]=(byte)0xAA;
  b[2]=(byte)0x12;
  b[3]=(byte)0x1A;
  b[4]=(byte)0x07;
  b[5]=(byte)0x50;
  b[6]=(byte)0x55;
  b[7]=(byte)0x00;
  b[8]=(byte)0x02;
  b[9]=(byte)0xFB;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,10));
  b[0]=(byte)0x91;
  b[1]=(byte)0xAA;
  b[2]=(byte)0x12;
  b[3]=(byte)0x1A;
  b[4]=(byte)0x07;
  b[5]=(byte)0x50;
  b[6]=(byte)0x55;
  b[7]=(byte)0x00;
  b[8]=(byte)0x02;
  b[9]=(byte)0xFB;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,10));
  b[0]=(byte)0x81;
  b[1]=(byte)0x2A;
  b[2]=(byte)0xA1;
  b[3]=(byte)0x71;
  b[4]=(byte)0x00;
  b[5]=(byte)0x55;
  b[6]=(byte)0x05;
  b[7]=(byte)0x20;
  b[8]=(byte)0xF0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,9));
  b[0]=(byte)0x91;
  b[1]=(byte)0x2A;
  b[2]=(byte)0xB1;
  b[3]=(byte)0x71;
  b[4]=(byte)0x00;
  b[5]=(byte)0x55;
  b[6]=(byte)0x05;
  b[7]=(byte)0x20;
  b[8]=(byte)0xF0;
  assertEquals("String_Node_Str",PhoneNumberUtils.calledPartyBCDToString(b,0,9));
  assertNull(PhoneNumberUtils.extractNetworkPortion(null));
  assertNull(PhoneNumberUtils.extractPostDialPortion(null));
  assertTrue(PhoneNumberUtils.compare(null,null));
  assertFalse(PhoneNumberUtils.compare(null,"String_Node_Str"));
  assertFalse(PhoneNumberUtils.compare("String_Node_Str",null));
  assertNull(PhoneNumberUtils.toCallerIDMinMatch(null));
  assertNull(PhoneNumberUtils.getStrippedReversed(null));
  assertNull(PhoneNumberUtils.stringFromStringAndTOA(null,1));
}