test_class.file: generator/src/test/java/com/truecaller/androidactors/NamesProviderImplTest.java
test_class.identifier: NamesProviderImplTest
test_case.body: @Test
      public void buildMessageName_sameNameWithCounter_nonUniqueName() {
          NamesProviderImpl namesProvider = new NamesProviderImpl();
          namesProvider.buildMessageName("testMethod");
          Assert.assertEquals("TestMethodMessage1", namesProvider.buildMessageName("testMethod"));
      }
test_case.class_method_signature: NamesProviderImplTest.buildMessageName_sameNameWithCounter_nonUniqueName()
test_case.full_signature: @Test public void buildMessageName_sameNameWithCounter_nonUniqueName()
test_case.identifier: buildMessageName_sameNameWithCounter_nonUniqueName
test_case.invocations: buildMessageName assertEquals buildMessageName
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void buildMessageName_sameNameWithCounter_nonUniqueName()
focal_class.declarator: mUsed = new TreeSet<>(new NamesComparator())
focal_class.modifier: @NotNull
      private final
focal_class.original_string: @NotNull
      private final Set<CharSequence> mUsed = new TreeSet<>(new NamesComparator());
focal_class.type: Set<CharSequence>
focal_class.var_name: mUsed
focal_class.file: generator/src/main/java/com/truecaller/androidactors/NamesProviderImpl.java
focal_class.identifier: NamesProviderImpl
focal_class.interfaces: implements NamesProvider
focal_class.class_method_signature: NamesProviderImpl.buildMessageName(@NotNull String methodName)
focal_class.full_signature: @NotNull @Override public String buildMessageName(@NotNull String methodName)
focal_class.identifier: buildMessageName
focal_class.modifiers: @NotNull @Override public
focal_class.parameters: (@NotNull String methodName)
focal_class.return: String
focal_class.signature: String buildMessageName(@NotNull String methodName)
focal_method.body: @NotNull
      @Override
      public String buildMessageName(@NotNull String methodName) {
          StringBuilder name = new StringBuilder(StringUtils.capitalize(methodName));
          name.append("Message");
          final int length = name.length();
          int index = 0;
          while (mUsed.contains(name)) {
              name.setLength(length);
              name.append(++index);
          }
  
          String result = name.toString();
          mUsed.add(result);
          return result;
      }
focal_method.class_method_signature: NamesProviderImpl.buildMessageName(@NotNull String methodName)
focal_method.full_signature: @NotNull @Override public String buildMessageName(@NotNull String methodName)
focal_method.identifier: buildMessageName
focal_method.invocations: capitalize append length contains setLength append toString add
focal_method.modifiers: @NotNull @Override public
focal_method.parameters: (@NotNull String methodName)
focal_method.return: String
focal_method.signature: String buildMessageName(@NotNull String methodName)