147d431f63a66505a645f282416659a9758a91f1cBrett Chabot/* 247d431f63a66505a645f282416659a9758a91f1cBrett Chabot * Copyright 2003-2009 OFFIS, Henri Tremblay 347d431f63a66505a645f282416659a9758a91f1cBrett Chabot * 447d431f63a66505a645f282416659a9758a91f1cBrett Chabot * Licensed under the Apache License, Version 2.0 (the "License"); 547d431f63a66505a645f282416659a9758a91f1cBrett Chabot * you may not use this file except in compliance with the License. 647d431f63a66505a645f282416659a9758a91f1cBrett Chabot * You may obtain a copy of the License at 747d431f63a66505a645f282416659a9758a91f1cBrett Chabot * 847d431f63a66505a645f282416659a9758a91f1cBrett Chabot * http://www.apache.org/licenses/LICENSE-2.0 947d431f63a66505a645f282416659a9758a91f1cBrett Chabot * 1047d431f63a66505a645f282416659a9758a91f1cBrett Chabot * Unless required by applicable law or agreed to in writing, software 1147d431f63a66505a645f282416659a9758a91f1cBrett Chabot * distributed under the License is distributed on an "AS IS" BASIS, 1247d431f63a66505a645f282416659a9758a91f1cBrett Chabot * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1347d431f63a66505a645f282416659a9758a91f1cBrett Chabot * See the License for the specific language governing permissions and 1447d431f63a66505a645f282416659a9758a91f1cBrett Chabot * limitations under the License. 1547d431f63a66505a645f282416659a9758a91f1cBrett Chabot */ 1647d431f63a66505a645f282416659a9758a91f1cBrett Chabotpackage org.easymock.internal; 1747d431f63a66505a645f282416659a9758a91f1cBrett Chabot 1847d431f63a66505a645f282416659a9758a91f1cBrett Chabotpublic class ErrorMessage { 1947d431f63a66505a645f282416659a9758a91f1cBrett Chabot 2047d431f63a66505a645f282416659a9758a91f1cBrett Chabot private final boolean matching; 2147d431f63a66505a645f282416659a9758a91f1cBrett Chabot 2247d431f63a66505a645f282416659a9758a91f1cBrett Chabot private final String message; 2347d431f63a66505a645f282416659a9758a91f1cBrett Chabot 2447d431f63a66505a645f282416659a9758a91f1cBrett Chabot private final int actualCount; 2547d431f63a66505a645f282416659a9758a91f1cBrett Chabot 2647d431f63a66505a645f282416659a9758a91f1cBrett Chabot public ErrorMessage(boolean matching, String message, int actualCount) { 2747d431f63a66505a645f282416659a9758a91f1cBrett Chabot this.matching = matching; 2847d431f63a66505a645f282416659a9758a91f1cBrett Chabot this.message = message; 2947d431f63a66505a645f282416659a9758a91f1cBrett Chabot this.actualCount = actualCount; 3047d431f63a66505a645f282416659a9758a91f1cBrett Chabot } 3147d431f63a66505a645f282416659a9758a91f1cBrett Chabot 3247d431f63a66505a645f282416659a9758a91f1cBrett Chabot public boolean isMatching() { 3347d431f63a66505a645f282416659a9758a91f1cBrett Chabot return matching; 3447d431f63a66505a645f282416659a9758a91f1cBrett Chabot } 3547d431f63a66505a645f282416659a9758a91f1cBrett Chabot 3647d431f63a66505a645f282416659a9758a91f1cBrett Chabot public String getMessage() { 3747d431f63a66505a645f282416659a9758a91f1cBrett Chabot return message; 3847d431f63a66505a645f282416659a9758a91f1cBrett Chabot } 3947d431f63a66505a645f282416659a9758a91f1cBrett Chabot 4047d431f63a66505a645f282416659a9758a91f1cBrett Chabot public int getActualCount() { 4147d431f63a66505a645f282416659a9758a91f1cBrett Chabot return actualCount; 4247d431f63a66505a645f282416659a9758a91f1cBrett Chabot } 4347d431f63a66505a645f282416659a9758a91f1cBrett Chabot 4447d431f63a66505a645f282416659a9758a91f1cBrett Chabot public void appendTo(StringBuilder buffer, int matches) { 4547d431f63a66505a645f282416659a9758a91f1cBrett Chabot buffer.append("\n ").append(message).append(", actual: "); 4647d431f63a66505a645f282416659a9758a91f1cBrett Chabot if (matching) { 4747d431f63a66505a645f282416659a9758a91f1cBrett Chabot if (matches == 1) { 4847d431f63a66505a645f282416659a9758a91f1cBrett Chabot buffer.append(getActualCount() + 1); 4947d431f63a66505a645f282416659a9758a91f1cBrett Chabot } else { 5047d431f63a66505a645f282416659a9758a91f1cBrett Chabot buffer.append(getActualCount()); 5147d431f63a66505a645f282416659a9758a91f1cBrett Chabot buffer.append(" (+1)"); 5247d431f63a66505a645f282416659a9758a91f1cBrett Chabot } 5347d431f63a66505a645f282416659a9758a91f1cBrett Chabot } 5447d431f63a66505a645f282416659a9758a91f1cBrett Chabot else { 5547d431f63a66505a645f282416659a9758a91f1cBrett Chabot buffer.append(getActualCount()); 5647d431f63a66505a645f282416659a9758a91f1cBrett Chabot } 5747d431f63a66505a645f282416659a9758a91f1cBrett Chabot } 5847d431f63a66505a645f282416659a9758a91f1cBrett Chabot} 59