Hmm, indeed that code will trigger lazy loading.
In my unittests for selfservicing, to test if lazy loading worked, I used private member reflection to set a private member to false/true or grab the actual collection instead of the collection returned by the property. What you should do with that technique is to set
_alreadyFetchedRef_nav_sidebar_item to true, before you add the entity to the collection.
You can access these members using code like:
bool alreadyFetchedEmployees = (bool)customers[i].GetType().BaseType.InvokeMember("_alreadyFetchedEmployees",
BindingFlags.GetField | BindingFlags.NonPublic | BindingFlags.Instance, null, customers[i], new object [] {});
This way you can also set a private member to true/false for example, making your tests work.