How can the following test be corrected to work?

```cs
[TestMethod()]       
public void GetEmployeeProductivityTest()
{
    var mockHR = new Mock<IRepository<Employee>>();
    var mockCMS = new Mock<ICMS_Repository>();

    mockCMS.Setup(repos => repos.FindEmployeeByUsername(It.IsAny<string>())).Verifiable();          

    Employee newEmp = new Employee();
    newEmp.User_Name = "testName";

    var service = new EmployeeService(mockHR.Object,mockCMS.Object);
    var createResult = service.GetEmployeeByUserName(newEmp);

    Assert.AreEqual(newEmp, createResult);
    mockCMS.VerifyAll();            
}

```

I get the following: 

```
Assert.AreEqual failed. Expected:<Employee>. Actual:<(null)>.

```

As Requested this is the GetEmployeeByUserName() function being called:

```
public Employee GetEmployeeByUserName(Employee employee)
{
    return _employeeRespository.Find().ByUserName(employee); <------(Using Strict: Gives me the following:  All invocations on the mock must have a corresponding setup.)
}

```