示例#1
0
  @Test
  public void testSuppressMethodInParentOnlyWhenObjectIsSpy() throws Exception {
    suppress(method(SuppressMethodParent.class, "myMethod"));

    SuppressMethod tested = spy(new SuppressMethod());
    assertEquals(20, tested.myMethod());
  }
  @SuppressWarnings("unchecked")
  @Test
  public void testExecute() throws Exception {
    protocolRemovedCommand = mock(ProtocolRemovedCommand.class, Mockito.CALLS_REAL_METHODS);

    PowerMockito.suppress(MemberMatcher.methodsDeclaredIn(InstanceIdentifier.class));

    ProtocolEntry protocol = mock(ProtocolEntry.class);
    when(protocol.getProtocol())
        .thenAnswer(
            new Answer<Class<? extends OvsdbBridgeProtocolBase>>() {
              public Class<? extends OvsdbBridgeProtocolBase> answer(InvocationOnMock invocation)
                  throws Throwable {
                return OvsdbBridgeProtocolOpenflow10.class;
              }
            });
    Optional<ProtocolEntry> operationalProtocolEntryOptional = mock(Optional.class);
    when(operationalProtocolEntryOptional.isPresent()).thenReturn(true);
    when(operationalProtocolEntryOptional.get()).thenReturn(protocol);

    BridgeOperationalState bridgeOpState = mock(BridgeOperationalState.class);
    when(bridgeOpState.getProtocolEntry(any(InstanceIdentifier.class)))
        .thenReturn(operationalProtocolEntryOptional);

    MemberModifier.suppress(
        MemberMatcher.method(ProtocolUpdateCommand.class, "getOperationalState"));
    when(protocolRemovedCommand.getOperationalState()).thenReturn(bridgeOpState);

    InstanceIdentifier<ProtocolEntry> protocolIid = mock(InstanceIdentifier.class);
    removed.add(protocolIid);
    MemberModifier.field(ProtocolRemovedCommand.class, "removed")
        .set(protocolRemovedCommand, removed);

    MemberModifier.field(ProtocolRemovedCommand.class, "updatedBridges")
        .set(protocolRemovedCommand, updatedBridges);
    when(updatedBridges.get(any(InstanceIdentifier.class)))
        .thenReturn(mock(OvsdbBridgeAugmentation.class));

    Operations op = (Operations) setField("op");
    Mutate<GenericTableSchema> mutate = mock(Mutate.class);
    when(op.mutate(any(Bridge.class))).thenReturn(mutate);
    Column<GenericTableSchema, Set<String>> column = mock(Column.class);
    Bridge bridge = mock(Bridge.class);
    when(bridge.getProtocolsColumn()).thenReturn(column);
    when(column.getSchema()).thenReturn(mock(ColumnSchema.class));
    when(column.getData()).thenReturn(new HashSet<String>());
    when(mutate.addMutation(any(ColumnSchema.class), any(Mutator.class), any(Set.class)))
        .thenReturn(mutate);

    PowerMockito.mockStatic(TyperUtils.class);
    when(TyperUtils.getTypedRowWrapper(any(DatabaseSchema.class), any(Class.class)))
        .thenReturn(bridge);

    TransactionBuilder transaction = mock(TransactionBuilder.class);
    protocolRemovedCommand.execute(transaction);
    Mockito.verify(transaction).add(any(Operation.class));
  }