### Question:
OperationKeyMatcher implements Matcher { public void setMajorVersion(int majorVersion) { this.majorVersion = majorVersion; }  String getServiceName(); void setServiceName(String serviceName); String getOperationName(); void setOperationName(String operationName); int getMajorVersion(); void setMajorVersion(int majorVersion); int getMinorVersion(); void setMinorVersion(int minorVersion); boolean isInverted(); void setInverted(boolean inverted); String getNamespace(); void setNamespace(String namespace); boolean isRequireNullNamespace(); void setRequireNullNamespace(boolean requireNullNamespace); OperationKey.Type getType(); void setType(String type); void setType(OperationKey.Type type); @Override boolean matches(ExecutionContext ctx, OperationKey key, Object[] args); boolean matches(OperationKey key); String toString();  }### Answer:
@Test public void majorVersionMatching() { operationKeyMatcher.setMajorVersion(2); assertInvocation("With wrong majorVersion, key must fail to match", false); operationKeyMatcher.setMajorVersion(1); assertInvocation("With right majorVersion, key must match", true); }