// GET api/preferences/{userId}/{year}/{strain}
        public StrainPreferencesVM Get(int userId, int year, string strain)
        {
            var user = _accountServices.GetUser(userId);
            if (user == null)
                throw new HttpResponseException(HttpStatusCode.Forbidden); // throw a HTTP forbidden 

            // Need this to work!!     var roles = user.UserRoles.Select(a => a.Role.Description).ToList();
            //var roles = new List<string> {"Customer"};

            int saleYear = year;
            IList<Preference> prefs = _preferenceServices.UserStrainPreferences(user.UserId, strain, saleYear);
            IEnumerable<TraitVM> traits = prefs.Select(a => new TraitVM
                {
                    Id = a.TraitId,
                    TraitName = a.Trait.Description,
                    HasRange = (a.Trait.InputTypeId == 1),
                    Percentile = (a.Trait.InputTypeId == 2),
                    RangeMinValue = a.MinValue,
                    RangeMaxValue = a.MaxValue,
                    ExactValue = (a.Trait.InputTypeId != 1) ? a.MinValue : string.Empty,
                    Sequence = a.Sequence,
                    BullSaleView = a.Trait.BullSaleView,
                    UOM = a.Trait.Unit == null ? string.Empty : a.Trait.Unit.Description,
                    Comment = a.Comment
                }).ToList();

           var preferences = new StrainPreferencesVM
            {
                Strain = strain,
                Username = user.Username,
                SaleYear = saleYear,
                //Roles = roles,
                Preferences = traits
            };

           return preferences;
        }
        public void Init()
        {
            // Arrange (reverse the order)
            MockUsersChoice(Uid, 2, STRAINCode, Trait_Using_Range, MinValue, MaxValue);
            MockUsersChoice(Uid, 1, STRAINCode, Trait_Using_Value, ExactValue, ExactValue);
            _MockAccountServices.Setup(a => a.GetUser(Uid)).Returns(MockUser(Uid));

            // Act
            _vm = SystemUnderTest.Get(Uid, DateTime.Today.Year, STRAINCode);
        }
        public void Init()
        {
            // Arrange
            MockUsersChoice(Uid, 1, STRAINCode, Trait_Using_Range, MinValue, MaxValue);
            _MockAccountServices.Setup(a => a.GetUser(Uid)).Returns(MockUser(Uid));
            

            var sut = SystemUnderTest;

            // Act
            _vm = sut.Get(Uid, DateTime.Today.Year, STRAINCode);
        }