Exemplo n.º 1
0
        public override void Accept(IEmployeeVisitor visitor)
        {
            if (visitor is null)
            {
                throw new ArgumentNullException(nameof(visitor));
            }

            visitor.VisitEmployeeLeaf(this);
        }
        public void EmployeeLeaf_Accept_VisitEmployeeLeafShouldBeCalled()
        {
            // Arrange
            IEmployeeVisitor visitor = mockVisitor.Object;

            // Act
            employeeLeaf.Accept(visitor);

            // Assert
            mockVisitor.Verify(mock => mock.VisitEmployeeLeaf(It.Is <EmployeeLeaf>(e => e == employeeLeaf)), Times.Once);
        }
Exemplo n.º 3
0
        public override void Accept(IEmployeeVisitor visitor)
        {
            if (visitor is null)
            {
                throw new ArgumentNullException(nameof(visitor));
            }

            EmployeeComponents.ForEach(employeeComponent => employeeComponent.Accept(visitor));

            visitor.VisitEmployeeComposite(this);
        }
Exemplo n.º 4
0
 public void Visit(IEmployeeVisitor visitor)
 {
     foreach (var probationer in _persons)
     {
         var employee = probationer as IEmployee;
         if (employee != null)
         {
             visitor.Visit(employee);
         }
     }
 }
        public void EmployeeLeaf_Accept_NullVisitorShouldRaiseException()
        {
            // Arrange
            IEmployeeVisitor visitor = null;

            // Act
            Action act = () => employeeLeaf.Accept(visitor);

            // Assert
            ArgumentNullException exception = Assert.Throws <ArgumentNullException>(act);

            Assert.Equal(nameof(visitor), exception.ParamName);
        }
        public void EmployeeComposite_Accept_AllSuboridinatesAcceptShouldBeCalled()
        {
            // Arrange
            var mockSubordinate1 = new Mock <EmployeeLeaf>(SubordinatedEmployee1);
            var mockSubordinate2 = new Mock <EmployeeLeaf>(SubordinatedEmployee2);

            employeeComposite.Add(mockSubordinate1.Object);
            employeeComposite.Add(mockSubordinate2.Object);

            IEmployeeVisitor visitor = mockVisitor.Object;

            // Act
            employeeComposite.Accept(visitor);

            // Assert
            mockSubordinate1.Verify(mock => mock.Accept(It.Is <IEmployeeVisitor>(e => e == visitor)), Times.Once);
            mockSubordinate2.Verify(mock => mock.Accept(It.Is <IEmployeeVisitor>(e => e == visitor)), Times.Once);
        }
Exemplo n.º 7
0
 public void Accept(IEmployeeVisitor visitor)
 {
     visitor.Visit(this);
 }
Exemplo n.º 8
0
 public void Accept(IEmployeeVisitor visitor) => visitor.VisitCompositeElement(this);
Exemplo n.º 9
0
 public string Accept(IEmployeeVisitor visitor)
 {
     return(visitor.Visit());
 }
Exemplo n.º 10
0
 public void Accept(IEmployeeVisitor visitor) => visitor.VisitLeafNode(this);
Exemplo n.º 11
0
 public abstract void Accept(IEmployeeVisitor visitor);
Exemplo n.º 12
0
 public override void Accept(IEmployeeVisitor visitor)
 {
     visitor.VisitHourlyEmployee(this);
 }
Exemplo n.º 13
0
 public override void Accept(IEmployeeVisitor visitor)
 {
     visitor.VisitSalariedEmployee(this);
 }