示例#1
0
        private void SyncUrlMap()
        {
            var lstAll         = this.Bll.GetEntities <Model.Entity.UrlMap>();
            var controllermeta = typeof(Controller);
            var lstMethod      = System.Reflection.Assembly.GetExecutingAssembly().GetTypes()
                                 .Where(x => controllermeta.IsAssignableFrom(x))
                                 .SelectMany(x => x.GetMethods(System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.Public))
                                 .Select(x => Tuple.Create(x, x.GetCustomAttributes(typeof(UrlMapAttribute), false)))
                                 .Where(x => x.Item2.Length == 1)
                                 .Select(x => Tuple.Create(x.Item1, (UrlMapAttribute)x.Item2[0]))
                                 .ToList();
            var lstUrlMapWithCode = lstMethod.Select(x => new Model.Entity.UrlMap()
            {
                Action      = x.Item1.Name,
                Category    = x.Item2.Category,
                Controller  = x.Item1.DeclaringType.Name.Replace("Controller", string.Empty),
                Description = x.Item2.Description,
                Id          = Guid.NewGuid(),
                Pid         = Guid.Empty
            }).ToList();
            var cpHandler = new EqualityComparerWrapper <Model.Entity.UrlMap>((a, b) => a.Controller == b.Controller && a.Action == b.Action);
            var lstAdd    = lstUrlMapWithCode.Except(lstAll, cpHandler).ToList();

            this.Bll.Add <Model.Entity.UrlMap>(lstAdd);
        }
示例#2
0
        public void Uses_the_wrapped_comparer_to_compare_arguments()
        {
            //Arrange
            var stringComparerMock = new Mock <IEqualityComparer <string> >();

            stringComparerMock.Setup(c => c.Equals("Same", "Same"))
            .Verifiable();

            var comparerWrapper = new EqualityComparerWrapper <string>(stringComparerMock.Object);

            //Act
            comparerWrapper.Compare("Same", "Same");

            //Assert
            stringComparerMock.Verify();
        }