I have method

```
public IEnumerable<string> LoadCountries()
{
     try
     {
         return GetAll().GetCountries();
     }
     catch (Exception)
     {
          return null;
     }
 }

```

GetAll() method load data from sql server but I don't need it in test
So i changed database on IEnumerable customers. I wanna test it

```
Mock<ICustomersRepository> mock = new Mock<ICustomersRepository>();
mock.Setup(m => m.GetAll()).Returns(customers.AsQueryable()); //change data
IEnumerable<string> countries = mock.Object.LoadCountries();
Assert.AreEqual(countries.Count(), 6); //expect 6 countries

```

But in this test countries.Count() == 0;
Sure I can modify Mock Setup and add 

```
mock.Setup(m => m.LoadCountries()).Returns(customers.AsQueryable().GetCountries());

```

But I don't want to do it, because other functions that i want to test are much bigger.
Is anyone know how can set GetAll() function to return my test array, even if GetAll() implements inside test class?
I just try to set 

```
mock.CallBase = true;
mock.Setup(m => m.LoadCountries()).CallBase();

```

but i just see exception 

> 
> System.NotImplementedException: This is a DynamicProxy2 error: 
>  The interceptor attempted to 'Proceed' for method  
> 
>  'System.Collections.Generic.IEnumerable`1[System.String] LoadCountries()' which has no target. 
>  When calling method without target there is no implementation to 'proceed' to and 
>  it is the responsibility of the interceptor to mimic the implementation (set return
>  value, out arguments etc). 
> 
> 
>