現在、私のプロジェクトの一環で、以下のようなドメインオブジェクトが存在します。テストプロパティは
public class Address
{
public virtual string HouseName { get; set; }
public virtual string HouseNumber { get; set; }
public virtual string RoadName { get; set; }
public virtual string Postcode { get; set; }
public virtual string District { get; private set; }
}
地区プロパティは、データベース内の計算された列です。データアクセスプロバイダ(Entity Framework)の要件により、プライベートセットが必要です。
:アドレスレコードが保存されるとき地区が原因それが更新されるまで、設定する必要はありませんので、これはデータベース私はこのようなルックスをテストする方法で更新/通常のプログラムフローで結構です
public IEnumerable<House> GetHousesWithinSameDistrict (int addressId)
{
var addressToMatch = _addressRepository
.FirstOrDefault(address => address.Id == addressId)
return _houseRepository
.Where(house => house.Address.District == addressToMatch.District)
}
これは、私がDistrictプロパティを設定することができず、正しい一致するアドレスが返されることを確認するためのテストを書くことができないため、addressToMatch変数を設定しようとすると問題が発生します。
このテスト用にAddressオブジェクトを設定するにはどうすればよいですか?
たぶん、 '保護internal' +'アセンブリ:InternalsVisibleTo'を? –
@ DeblatonJean-Philippe関連、しかし確かに重複するIMHOはありません。 – Jeroen
@ DeblatonJean-Philippeそれはまったく重複していません。 – FLSH