public void BitmaskTest() { // Arrange HotelSummary hotelSummary = new HotelSummary(); hotelSummary.AmenityMask = (int)new[] { Amenities.Internet | Amenities.IndoorPool | Amenities.KidsActivities } .CombineFlags(); // Act IEnumerable <Amenities> amenities = hotelSummary.Amenities.GetFlags().ToList(); // Assert Assert.True(hotelSummary.Amenities.HasFlag(Amenities.Internet)); Assert.True(hotelSummary.Amenities.HasFlag(Amenities.IndoorPool)); Assert.True(hotelSummary.Amenities.HasFlag(Amenities.KidsActivities)); foreach (var amenity in amenities) { Console.WriteLine(amenity.GetDescription()); } Assert.That(amenities.Contains(Amenities.Internet)); Assert.That(amenities.Contains(Amenities.IndoorPool)); Assert.That(amenities.Contains(Amenities.KidsActivities)); }
/* * these are list of function to generate internal HDSInterface object * * * */ public HDSInterfaces.Address GenerateHotelAddress(HotelSummary rawHotel) { Address address = new Address { Street1 = rawHotel.address1, Street2 = rawHotel.address2, City = new City { Name = rawHotel.city }, State = new State { Name = rawHotel.stateProvinceCode }, Postcode = rawHotel.postalCode, Country = new Country { Code = rawHotel.countryCode }, LocationDescription = rawHotel.locationDescription }; if (rawHotel.latitudeSpecified) { address.Latitude = rawHotel.latitude; } if (rawHotel.longitudeSpecified) { address.Longtitude = rawHotel.longitude; } return address; }