コード例 #1
0
        public void Setup()
        {
            Connection = DbConnectionFactory.CreateTransient();
            DbContext = new ApplicationDbContext(Connection);

            var service = new MetadataService(DbContext);
            var smashService = new SmashAttributeTypeService(DbContext);

            CharactersController = new CharactersController(service);
            MovesController = new MovesController(service);
            MovementsController = new MovementsController(service);
            SmashAttributeTypesController = new SmashAttributeTypesController(smashService);
            CharacterAttributesController = new CharacterAttributesController(service);
            CharacterAttributeTypesController = new CharacterAttributeTypesController(service);
            NotationsController = new NotationsController(service);
            CalculatorController = new CalculatorController(DbContext);
            TestObjects = new TestObjects();

            //Startup.ConfigureAutoMapping();
        }
コード例 #2
0
        private TestObjects Setup()
        {
            var vObjects = new TestObjects();
            vObjects.HashProvider = new Mock<IHashProvider>();
            vObjects.HashProvider.Setup(t => t.Hash(cPassword)).Returns(cHash);
            vObjects.HashProvider.Setup(t => t.CheckHash(cPassword, cHash)).Returns(true);

            vObjects.DocumentStore = GetEmbeddedDatabase;

            var vNewAccount = new CreateAccount
                                  {
                                      Name = cName,
                                      Email = cEmail,
                                      Password = cPassword
                                  };
            var vAccountCommandFactory = new Mock<IAccountCommandFactory>();
            var vSendConfirmationCommand = new Mock<ISendConfirmationCommand>();
            vAccountCommandFactory
                .Setup(t => t.CreateSendConfirmationCommand(It.IsAny<Account>()))
                .Returns(vSendConfirmationCommand.Object);


            var vNewAccountCommand = new CreateAccountCommand(
                vObjects.DocumentStore,
                vObjects.HashProvider.Object, vAccountCommandFactory.Object, new CryptoRandomProvider(),
                vNewAccount);
            vNewAccountCommand.Execute();

            var vLogin = new LoginAccount
                             {
                                 Name = cName,
                                 Password = cPassword
                             };
            vObjects.GoodLoginAccountCommand = new LoginAccountCommand(
                vObjects.DocumentStore,
                vObjects.HashProvider.Object,
                vLogin);
            return vObjects;
        }
コード例 #3
0
        private DocumentRepository CreateRepository(IScopeAccessor scopeAccessor, out ContentTypeRepository contentTypeRepository)
        {
            var langRepository     = new LanguageRepository(scopeAccessor, AppCaches.Disabled, Logger);
            var templateRepository = new TemplateRepository(scopeAccessor, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock());
            var tagRepository      = new TagRepository(scopeAccessor, AppCaches.Disabled, Logger);
            var commonRepository   = new ContentTypeCommonRepository(scopeAccessor, templateRepository, AppCaches.Disabled);

            contentTypeRepository = new ContentTypeRepository(scopeAccessor, AppCaches.Disabled, Logger, commonRepository, langRepository);
            var languageRepository     = new LanguageRepository(scopeAccessor, AppCaches.Disabled, Logger);
            var relationTypeRepository = new RelationTypeRepository(scopeAccessor, AppCaches.Disabled, Logger);
            var entityRepository       = new EntityRepository(scopeAccessor);
            var relationRepository     = new RelationRepository(scopeAccessor, Logger, relationTypeRepository, entityRepository);
            var propertyEditors        = new Lazy <PropertyEditorCollection>(() => new PropertyEditorCollection(new DataEditorCollection(Enumerable.Empty <IDataEditor>())));
            var dataValueReferences    = new DataValueReferenceFactoryCollection(Enumerable.Empty <IDataValueReferenceFactory>());
            var repository             = new DocumentRepository(scopeAccessor, AppCaches.Disabled, Logger, contentTypeRepository, templateRepository, tagRepository, languageRepository, relationRepository, relationTypeRepository, propertyEditors, dataValueReferences);

            return(repository);
        }
コード例 #4
0
        public void deberia_poder_detener_el_proceso()
        {
            var filtros    = new List <FiltroDeDocumentos>();
            var reportador = new ReportadorDeDocumentosEnAlerta(filtros, "*****@*****.**", new EnviadorDeMails(), new RepositorioDeDocumentos(TestObjects.ConexionMockeada()));

            Assert.AreEqual("Idle", reportador.estado);
            reportador.start();
            Assert.AreEqual("Running", reportador.estado);
            reportador.stop();
            Assert.AreEqual("Idle", reportador.estado);
        }
コード例 #5
0
        private DomainRepository CreateRepository(IScopeProvider provider, out ContentTypeRepository contentTypeRepository, out DocumentRepository documentRepository, out LanguageRepository languageRepository)
        {
            var accessor           = (IScopeAccessor)provider;
            var templateRepository = new TemplateRepository(accessor, Core.Cache.AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock());
            var tagRepository      = new TagRepository(accessor, Core.Cache.AppCaches.Disabled, Logger);
            var commonRepository   = new ContentTypeCommonRepository(accessor, templateRepository, AppCaches);

            languageRepository    = new LanguageRepository(accessor, Core.Cache.AppCaches.Disabled, Logger);
            contentTypeRepository = new ContentTypeRepository(accessor, Core.Cache.AppCaches.Disabled, Logger, commonRepository, languageRepository);
            documentRepository    = new DocumentRepository(accessor, Core.Cache.AppCaches.Disabled, Logger, contentTypeRepository, templateRepository, tagRepository, languageRepository);
            var domainRepository = new DomainRepository(accessor, Core.Cache.AppCaches.Disabled, Logger);

            return(domainRepository);
        }
コード例 #6
0
        public void Can_Get_Tags_For_Entity_Type_For_Group()
        {
            var provider = TestObjects.GetScopeProvider(Logger);

            using (ScopeProvider.CreateScope())
            {
                var contentRepository = CreateContentRepository(provider, out var contentTypeRepository);
                var mediaRepository   = CreateMediaRepository(provider, out var mediaTypeRepository);

                //create data to relate to
                var contentType = MockedContentTypes.CreateSimpleContentType("test", "Test");
                ServiceContext.FileService.SaveTemplate(contentType.DefaultTemplate); // else, FK violation on contentType!
                contentTypeRepository.Save(contentType);

                var content1 = MockedContent.CreateSimpleContent(contentType);
                contentRepository.Save(content1);

                var mediaType = MockedContentTypes.CreateImageMediaType("image2");
                mediaTypeRepository.Save(mediaType);

                var media1 = MockedMedia.CreateMediaImage(mediaType, -1);
                mediaRepository.Save(media1);

                var repository = CreateRepository(provider);
                repository.Assign(
                    content1.Id,
                    contentType.PropertyTypes.First().Id,
                    new[]
                {
                    new Tag {
                        Text = "tag1", Group = "test"
                    },
                    new Tag {
                        Text = "tag2", Group = "test1"
                    },
                    new Tag {
                        Text = "tag3", Group = "test"
                    },
                    new Tag {
                        Text = "tag4", Group = "test1"
                    }
                }, false);

                repository.Assign(
                    media1.Id,
                    mediaType.PropertyTypes.Last().Id,
                    new[]
                {
                    new Tag {
                        Text = "tag1", Group = "test"
                    },
                    new Tag {
                        Text = "tag2", Group = "test1"
                    }
                }, false);

                var result1 = repository.GetTagsForEntityType(TaggableObjectTypes.Content, "test1").ToArray();
                var result2 = repository.GetTagsForEntityType(TaggableObjectTypes.Media, "test1").ToArray();

                Assert.AreEqual(2, result1.Length);
                Assert.AreEqual(1, result2.Length);
            }
        }
コード例 #7
0
        public void deberia_saber_si_una_materia_esta_asignada_a_un_curso()
        {
            Curso        curso  = TestObjects.UnCursoConAlumnos();
            List <Curso> cursos = new List <Curso>();

            cursos.Add(curso);
            Expect.AtLeastOnce.On(TestObjects.RepoCursosMockeado()).Method("GetCursos").WithAnyArguments().Will(Return.Value(cursos));

            IConexionBD conexion = TestObjects.ConexionMockeada();

            RepositorioDeMaterias repo = new RepositorioDeMaterias(conexion, TestObjects.RepoCursosMockeado(), TestObjects.RepoModalidadesMockeado());

            Assert.IsTrue(repo.MateriaAsignadaACurso(TestObjects.MateriaCens()));
        }
コード例 #8
0
 public void SetUp()
 {
     conexionMock = TestObjects.ConexionMockeada();
 }
コード例 #9
0
        private UserRepository CreateRepository(IScopeProvider provider)
        {
            var accessor   = (IScopeAccessor)provider;
            var repository = new UserRepository(accessor, CacheHelper.Disabled, Logger, Mappers, TestObjects.GetGlobalSettings());

            return(repository);
        }
コード例 #10
0
        public void deberia_poder_obtener_un_viatico_sin_estadias_pasajes_ni_transiciones()
        {
            Expect.AtLeastOnce.On(conexionMock).Method("Ejecutar").WithAnyArguments().Will(Return.Value(TestObjects.TablaViaticoSinEstadiasPasajesNiTransiciones()));
            var una_comision = repoViaticos.ObtenerViaticoPorId(1);

            Assert.AreEqual(1, una_comision.Id);
            Assert.AreEqual(0, una_comision.Estadias.Count);
            Assert.AreEqual(0, una_comision.Pasajes.Count);
            Assert.AreEqual(0, una_comision.TransicionesRealizadas.Count);
        }
コード例 #11
0
 public void SetUp()
 {
     conexionMock = TestObjects.ConexionMockeada();
     repoViaticos = new RepositorioDeComisionesDeServicio(conexionMock);
 }
コード例 #12
0
        public void ControllerContextExtensions_GetUmbracoContext_From_Current()
        {
            var umbCtx = new UmbracoContext(
                Mock.Of <HttpContextBase>(),
                Mock.Of <IPublishedSnapshotService>(),
                new WebSecurity(Mock.Of <HttpContextBase>(), Current.Services.UserService, TestObjects.GetGlobalSettings()),
                TestObjects.GetUmbracoSettings(),
                new List <IUrlProvider>(),
                TestObjects.GetGlobalSettings(),
                new TestVariationContextAccessor());

            var httpContext = Mock.Of <HttpContextBase>();

            var r1   = new RouteData();
            var ctx1 = CreateViewContext(new ControllerContext(httpContext, r1, new MyController()));
            var r2   = new RouteData();

            r2.DataTokens.Add("ParentActionViewContext", ctx1);
            var ctx2 = CreateViewContext(new ControllerContext(httpContext, r2, new MyController()));
            var r3   = new RouteData();

            r3.DataTokens.Add("ParentActionViewContext", ctx2);
            var ctx3 = CreateViewContext(new ControllerContext(httpContext, r3, new MyController()));

            Current.UmbracoContextAccessor = new TestUmbracoContextAccessor();
            Current.UmbracoContextAccessor.UmbracoContext = umbCtx;

            var result = ctx3.GetUmbracoContext();

            Assert.IsNotNull(result);
            Assert.AreSame(umbCtx, result);
        }
コード例 #13
0
        public void RouteDataExtensions_GetUmbracoContext()
        {
            var umbCtx = new UmbracoContext(
                Mock.Of <HttpContextBase>(),
                Mock.Of <IPublishedSnapshotService>(),
                new WebSecurity(Mock.Of <HttpContextBase>(), Current.Services.UserService, TestObjects.GetGlobalSettings()),
                TestObjects.GetUmbracoSettings(),
                new List <IUrlProvider>(),
                TestObjects.GetGlobalSettings(),
                new TestVariationContextAccessor());
            var r1 = new RouteData();

            r1.DataTokens.Add(Core.Constants.Web.UmbracoContextDataToken, umbCtx);

            Assert.IsTrue(r1.DataTokens.ContainsKey(Core.Constants.Web.UmbracoContextDataToken));
            Assert.AreSame(umbCtx, r1.DataTokens[Core.Constants.Web.UmbracoContextDataToken]);
        }
コード例 #14
0
 public Data(int hours, int minutes, int seconds, bool negative)
     : this(negative ? TestObjects.CreateNegativeOffset(hours, minutes, seconds) :
            TestObjects.CreatePositiveOffset(hours, minutes, seconds))
 {
 }
コード例 #15
0
 public Data(int hours, int minutes, int seconds)
     : this(TestObjects.CreatePositiveOffset(hours, minutes, seconds))
 {
 }
コード例 #16
0
 private static void InvokeSendMessageMethod(TestObjects testData)
 {
     testData.Coordinator.SendMessage(testData.Message, testData.Recipients);
 }
コード例 #17
0
        public void PathTests()
        {
            // unless noted otherwise, no changes / 7.2.8

            var fileSystems = Mock.Of <IFileSystems>();

            Mock.Get(fileSystems).Setup(x => x.PartialViewsFileSystem).Returns(_fileSystem);

            var provider = TestObjects.GetScopeProvider(Logger);

            using (var scope = provider.CreateScope())
            {
                var repository = new PartialViewRepository(fileSystems);

                var partialView = new PartialView(PartialViewType.PartialView, "test-path-1.cshtml")
                {
                    Content = "// partialView"
                };
                repository.Save(partialView);
                Assert.IsTrue(_fileSystem.FileExists("test-path-1.cshtml"));
                Assert.AreEqual("test-path-1.cshtml", partialView.Path);
                Assert.AreEqual("/Views/Partials/test-path-1.cshtml", partialView.VirtualPath);

                partialView = new PartialView(PartialViewType.PartialView, "path-2/test-path-2.cshtml")
                {
                    Content = "// partialView"
                };
                repository.Save(partialView);
                Assert.IsTrue(_fileSystem.FileExists("path-2/test-path-2.cshtml"));
                Assert.AreEqual("path-2\\test-path-2.cshtml", partialView.Path); // fixed in 7.3 - 7.2.8 does not update the path
                Assert.AreEqual("/Views/Partials/path-2/test-path-2.cshtml", partialView.VirtualPath);

                partialView = (PartialView)repository.Get("path-2/test-path-2.cshtml");
                Assert.IsNotNull(partialView);
                Assert.AreEqual("path-2\\test-path-2.cshtml", partialView.Path);
                Assert.AreEqual("/Views/Partials/path-2/test-path-2.cshtml", partialView.VirtualPath);

                partialView = new PartialView(PartialViewType.PartialView, "path-2\\test-path-3.cshtml")
                {
                    Content = "// partialView"
                };
                repository.Save(partialView);
                Assert.IsTrue(_fileSystem.FileExists("path-2/test-path-3.cshtml"));
                Assert.AreEqual("path-2\\test-path-3.cshtml", partialView.Path);
                Assert.AreEqual("/Views/Partials/path-2/test-path-3.cshtml", partialView.VirtualPath);

                partialView = (PartialView)repository.Get("path-2/test-path-3.cshtml");
                Assert.IsNotNull(partialView);
                Assert.AreEqual("path-2\\test-path-3.cshtml", partialView.Path);
                Assert.AreEqual("/Views/Partials/path-2/test-path-3.cshtml", partialView.VirtualPath);

                partialView = (PartialView)repository.Get("path-2\\test-path-3.cshtml");
                Assert.IsNotNull(partialView);
                Assert.AreEqual("path-2\\test-path-3.cshtml", partialView.Path);
                Assert.AreEqual("/Views/Partials/path-2/test-path-3.cshtml", partialView.VirtualPath);

                partialView = new PartialView(PartialViewType.PartialView, "\\test-path-4.cshtml")
                {
                    Content = "// partialView"
                };
                Assert.Throws <FileSecurityException>(() => // fixed in 7.3 - 7.2.8 used to strip the \
                {
                    repository.Save(partialView);
                });

                partialView = (PartialView)repository.Get("missing.cshtml");
                Assert.IsNull(partialView);

                // fixed in 7.3 - 7.2.8 used to...
                Assert.Throws <FileSecurityException>(() =>
                {
                    partialView = (PartialView)repository.Get("\\test-path-4.cshtml");  // outside the filesystem, does not exist
                });
                Assert.Throws <FileSecurityException>(() =>
                {
                    partialView = (PartialView)repository.Get("../../packages.config");  // outside the filesystem, exists
                });
            }
        }
コード例 #18
0
        public void Getting_1000_Cached_Items()
        {
            // Arrange
            var contentType = ServiceContext.ContentTypeService.Get(NodeDto.NodeIdSeed);
            var pages       = MockedContent.CreateTextpageContent(contentType, -1, 1000);

            ServiceContext.ContentService.Save(pages, 0);

            var provider = TestObjects.GetScopeProvider(Logger);

            using (var scope = provider.CreateScope())
            {
                var tRepository        = new TemplateRepository((IScopeAccessor)provider, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock());
                var tagRepo            = new TagRepository((IScopeAccessor)provider, AppCaches.Disabled, Logger);
                var ctRepository       = new ContentTypeRepository((IScopeAccessor)provider, AppCaches.Disabled, Logger, tRepository);
                var languageRepository = new LanguageRepository((IScopeAccessor)provider, AppCaches.Disabled, Logger);
                var repository         = new DocumentRepository((IScopeAccessor)provider, AppCaches.Disabled, Logger, ctRepository, tRepository, tagRepo, languageRepository);

                // Act
                var contents = repository.GetMany();

                Stopwatch watch          = Stopwatch.StartNew();
                var       contentsCached = repository.GetMany();
                watch.Stop();
                var elapsed = watch.ElapsedMilliseconds;

                Debug.Print("1000 content items retrieved in {0} ms with caching", elapsed);

                // Assert
                //Assert.That(contentsCached.Any(x => x.HasIdentity == false), Is.False);
                //Assert.That(contentsCached.Any(x => x == null), Is.False);
                //Assert.That(contentsCached.Count(), Is.EqualTo(contents.Count()));
            }
        }
コード例 #19
0
        public void deberia_poder_obtener_todos_los_edificios_que_no_estan_dados_de_baja_del_repositorio_de_espacios_fisicos()
        {
            string source = @"    |Id     |Nombre     |Calle          |Numero     |Piso      |Departamento    |idusuario     |Fecha                      |idBaja  |IdArea |NombreArea
                                    |01     |Evita      |9 de Julio     |1020       |PB        |0               |1111          |2012-10-13 21:36:35.077    |0       |0      |Ministerio de Desarrollo Social
                                    |02     |San Martín |Santa Fe       |504        |3         |A               |1111          |2012-10-13 21:36:35.077    |0       |1      |Unidad Ministrio
                                    |03     |Perón      |Santa Fe       |504        |4         |B               |1111          |2012-10-13 21:36:35.077    |0       |621    |Secretaría de Deportes";

            IConexionBD conexion     = TestObjects.ConexionMockeada();
            var         resultado_sp = TablaDeDatos.From(source);

            Expect.AtLeastOnce.On(conexion).Method("Ejecutar").WithAnyArguments().Will(Return.Value(resultado_sp));

            RepositorioDeEspaciosFisicos repo = new RepositorioDeEspaciosFisicos(conexion, TestObjects.RepoCursosMockeado());

            Assert.AreEqual(3, repo.GetEdificios().Count);
            Assert.AreEqual(repo.GetEdificios().First().Direccion, "9 de Julio 1020 Piso: PB Dto: 0");
        }
コード例 #20
0
        [Ignore]   //Para que funcione el teamcity
        public void deberia_poder_obtener_todas_materias()
        {
            Modalidad modalidad = TestObjects.ModalidadFinesPuro();

            Expect.AtLeastOnce.On(TestObjects.RepoModalidadesMockeado()).Method("GetModalidadById").WithAnyArguments().Will(Return.Value(modalidad));


            string source = @"  |Id     |Nombre             |IdModalidad  |idInstancia   |DescripcionInstancia     |idCiclo     |NombreCiclo
                                    |01     |Física             |1            |6	         |Calificación Final       |1           |Primer Ciclo
                                    |02     |Química            |1            |1	         |1° Evaluación            |1           |Primer Ciclo
                                    |03     |Historia           |1            |2	         |2° Evaluación            |1           |Primer Ciclo"    ;


            IConexionBD conexion     = TestObjects.ConexionMockeada();
            var         resultado_sp = TablaDeDatos.From(source);

            Expect.AtLeastOnce.On(conexion).Method("Ejecutar").WithAnyArguments().Will(Return.Value(resultado_sp));

            RepositorioDeMaterias repo = new RepositorioDeMaterias(conexion, TestObjects.RepoCursosMockeado(), TestObjects.RepoModalidadesMockeado());

            List <Materia> materias = repo.GetMaterias();

            Assert.AreEqual(3, materias.Count);
            Assert.IsTrue(materias.All(m => m.Modalidad.Equals(modalidad)));
        }
コード例 #21
0
        public void deberia_poder_obtener_el_id_de_area_y_el_nombre_al_que_pertenece_un_edificio()
        {
            string source = @"    |Id     |Nombre     |Calle          |Numero     |Piso      |Departamento    |idusuario     |Fecha                      |idBaja  |IdArea |NombreArea
                                    |01     |Evita      |9 de Julio     |1020       |PB        |0               |1111          |2012-10-13 21:36:35.077    |0       |0      |Ministerio de Desarrollo Social
                                    |02     |San Martín |Santa Fe       |504        |3         |A               |1111          |2012-10-13 21:36:35.077    |0       |1      |Unidad Ministrio
                                    |03     |Perón      |Santa Fe       |504        |4         |B               |1111          |2012-10-13 21:36:35.077    |0       |621    |Secretaría de Deportes";

            IConexionBD conexion     = TestObjects.ConexionMockeada();
            var         resultado_sp = TablaDeDatos.From(source);

            Expect.AtLeastOnce.On(conexion).Method("Ejecutar").WithAnyArguments().Will(Return.Value(resultado_sp));

            RepositorioDeEspaciosFisicos repo = new RepositorioDeEspaciosFisicos(conexion, TestObjects.RepoCursosMockeado());

            Assert.IsTrue(repo.GetEdificios().Exists(e => e.Area.Id.Equals(621)));
            Assert.IsTrue(repo.GetEdificios().Exists(e => e.Area.Nombre.Equals("Secretaría de Deportes")));
        }
コード例 #22
0
        private DocumentRepository CreateContentRepository(IScopeProvider provider, out ContentTypeRepository contentTypeRepository)
        {
            var accessor           = (IScopeAccessor)provider;
            var templateRepository = new TemplateRepository(accessor, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock());
            var tagRepository      = new TagRepository(accessor, AppCaches.Disabled, Logger);

            contentTypeRepository = new ContentTypeRepository(accessor, AppCaches.Disabled, Logger, templateRepository);
            var languageRepository = new LanguageRepository(accessor, AppCaches.Disabled, Logger);
            var repository         = new DocumentRepository(accessor, AppCaches.Disabled, Logger, contentTypeRepository, templateRepository, tagRepository, languageRepository);

            return(repository);
        }
コード例 #23
0
        public void al_obtener_los_espacios_fisico_deberia_poder_saber_a_que_area_pertenece_el_edificio_de_dicho_espacio()
        {
            string source = @"  |Id     |Aula   |idEdificio     |NombreEdificio     |DireccionEdificio      |NumeroEdificio     |Capacidad  |idusuario     |Fecha                      |idBaja  |IdArea |NombreArea
                                    |01     |03     |01             |Evita              |9 de Julio             |1020               |30         |1111          |2012-10-13 21:36:35.077    |0       |0      |Ministerio de Desarrollo Social
                                    |02     |Magna  |10             |San Martín         |Santa Fe 504           |504                |100        |1111          |2012-10-13 21:36:35.077    |0       |1      |Unidad Ministrio
                                    |03     |315    |03             |Perón              |Santa Fe 504           |504                |25         |1111          |2012-10-13 21:36:35.077    |0       |621    |Secretaría de Deportes";

            IConexionBD conexion     = TestObjects.ConexionMockeada();
            var         resultado_sp = TablaDeDatos.From(source);

            Expect.AtLeastOnce.On(conexion).Method("Ejecutar").WithAnyArguments().Will(Return.Value(resultado_sp));

            RepositorioDeEspaciosFisicos repo = new RepositorioDeEspaciosFisicos(conexion, TestObjects.RepoCursosMockeado());

            Assert.IsTrue(repo.GetEspaciosFisicos().Exists(e => e.Edificio.Area.Id.Equals(621)));
            Assert.IsTrue(repo.GetEspaciosFisicos().Exists(e => e.Edificio.Area.Nombre.Equals("Secretaría de Deportes")));
        }
コード例 #24
0
        public void Can_Get_Tagged_Entities_For_Tag_Group()
        {
            var provider = TestObjects.GetScopeProvider(Logger);

            using (ScopeProvider.CreateScope())
            {
                var contentRepository = CreateContentRepository(provider, out var contentTypeRepository);
                var mediaRepository   = CreateMediaRepository(provider, out var mediaTypeRepository);

                //create data to relate to
                var contentType = MockedContentTypes.CreateSimpleContentType("test", "Test");
                ServiceContext.FileService.SaveTemplate(contentType.DefaultTemplate); // else, FK violation on contentType!
                contentTypeRepository.Save(contentType);

                var content1 = MockedContent.CreateSimpleContent(contentType);
                contentRepository.Save(content1);

                var content2 = MockedContent.CreateSimpleContent(contentType);
                contentRepository.Save(content2);

                var mediaType = MockedContentTypes.CreateImageMediaType("image2");
                mediaTypeRepository.Save(mediaType);

                var media1 = MockedMedia.CreateMediaImage(mediaType, -1);
                mediaRepository.Save(media1);

                var repository = CreateRepository(provider);
                repository.Assign(
                    content1.Id,
                    contentType.PropertyTypes.First().Id,
                    new[]
                {
                    new Tag {
                        Text = "tag1", Group = "test"
                    },
                    new Tag {
                        Text = "tag2", Group = "test1"
                    },
                    new Tag {
                        Text = "tag3", Group = "test"
                    }
                }, false);

                repository.Assign(
                    content2.Id,
                    contentType.PropertyTypes.Last().Id,
                    new[]
                {
                    new Tag {
                        Text = "tag1", Group = "test"
                    },
                    new Tag {
                        Text = "tag2", Group = "test1"
                    },
                    new Tag {
                        Text = "tag3", Group = "test"
                    }
                }, false);

                repository.Assign(
                    media1.Id,
                    mediaType.PropertyTypes.Last().Id,
                    new[]
                {
                    new Tag {
                        Text = "tag1", Group = "test"
                    },
                    new Tag {
                        Text = "tag2", Group = "test1"
                    }
                }, false);

                var contentTestIds = repository.GetTaggedEntitiesByTagGroup(TaggableObjectTypes.Content, "test").ToArray();
                //there are two content items tagged against the 'test' group
                Assert.AreEqual(2, contentTestIds.Length);
                //there are a total of two property types tagged against the 'test' group
                Assert.AreEqual(2, contentTestIds.SelectMany(x => x.TaggedProperties).Count());
                //there are a total of 2 tags tagged against the 'test' group
                Assert.AreEqual(2, contentTestIds.SelectMany(x => x.TaggedProperties).SelectMany(x => x.Tags).Select(x => x.Id).Distinct().Count());

                var contentTest1Ids = repository.GetTaggedEntitiesByTagGroup(TaggableObjectTypes.Content, "test1").ToArray();
                //there are two content items tagged against the 'test1' group
                Assert.AreEqual(2, contentTest1Ids.Length);
                //there are a total of two property types tagged against the 'test1' group
                Assert.AreEqual(2, contentTest1Ids.SelectMany(x => x.TaggedProperties).Count());
                //there are a total of 1 tags tagged against the 'test1' group
                Assert.AreEqual(1, contentTest1Ids.SelectMany(x => x.TaggedProperties).SelectMany(x => x.Tags).Select(x => x.Id).Distinct().Count());

                var mediaTestIds = repository.GetTaggedEntitiesByTagGroup(TaggableObjectTypes.Media, "test");
                Assert.AreEqual(1, mediaTestIds.Count());

                var mediaTest1Ids = repository.GetTaggedEntitiesByTagGroup(TaggableObjectTypes.Media, "test1");
                Assert.AreEqual(1, mediaTest1Ids.Count());
            }
        }
コード例 #25
0
        public void al_obtener_el_espacios_fisico_asignado_a_un_curso()
        {
            List <Curso> cursos = new List <Curso>();
            Curso        curso  = TestObjects.UnCursoConAlumnos();

            cursos.Add(curso);
            Expect.AtLeastOnce.On(TestObjects.RepoCursosMockeado()).Method("GetCursos").WithAnyArguments().Will(Return.Value(cursos));

            IConexionBD conexion = TestObjects.ConexionMockeada();

            RepositorioDeEspaciosFisicos repo = new RepositorioDeEspaciosFisicos(conexion, TestObjects.RepoCursosMockeado());

            Assert.IsTrue(repo.EspacioFisicoAsignadoACurso(TestObjects.UnEspacioFisico()));
        }
コード例 #26
0
        public void deberia_poder_iniciar_un_proceso_que_verifique_periodicamente_si_hay_documentos_en_alerta_e_informe_por_mail_si_los_hay()
        {
            var filtros    = new List <FiltroDeDocumentos>();
            var reportador = new ReportadorDeDocumentosEnAlerta(filtros, "*****@*****.**", new EnviadorDeMails(), new RepositorioDeDocumentos(TestObjects.ConexionMockeada()));

            Assert.AreEqual("Idle", reportador.estado);
            reportador.start();
            Assert.AreEqual("Running", reportador.estado);
        }
コード例 #27
0
        private MediaTypeRepository CreateMediaTypeRepository(IScopeAccessor scopeAccessor)
        {
            var templateRepository    = new TemplateRepository(scopeAccessor, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock());
            var commonRepository      = new ContentTypeCommonRepository(scopeAccessor, templateRepository, AppCaches.Disabled);
            var contentTypeRepository = new MediaTypeRepository(scopeAccessor, AppCaches.Disabled, Logger, commonRepository);

            return(contentTypeRepository);
        }
コード例 #28
0
        public void Can_Update_Variation_Of_Element_Type_Property()
        {
            var provider = TestObjects.GetScopeProvider(Logger);

            using (var scope = provider.CreateScope())
            {
                ContentTypeRepository repository;
                var contentRepository = CreateRepository((IScopeAccessor)provider, out repository);

                // Create elementType
                var elementType = new ContentType(-1)
                {
                    Alias       = "elementType",
                    Name        = "Element type",
                    Description = "Element type to use as compositions",
                    Icon        = ".sprTreeDoc3",
                    Thumbnail   = "doc.png",
                    SortOrder   = 1,
                    CreatorId   = 0,
                    Trashed     = false,
                    IsElement   = true,
                    Variations  = ContentVariation.Nothing
                };

                var contentCollection = new PropertyTypeCollection(true);
                contentCollection.Add(new PropertyType("test", ValueStorageType.Ntext)
                {
                    Alias       = "title",
                    Name        = "Title",
                    Description = "",
                    Mandatory   = false,
                    SortOrder   = 1,
                    DataTypeId  = Constants.DataTypes.Textbox,
                    LabelOnTop  = true,
                    Variations  = ContentVariation.Nothing
                });
                elementType.PropertyGroups.Add(new PropertyGroup(contentCollection)
                {
                    Name = "Content", SortOrder = 1
                });
                elementType.ResetDirtyProperties(false);
                elementType.SetDefaultTemplate(new Template("ElementType", "elementType"));
                repository.Save(elementType);

                // Create the basic "home" doc type that uses element type as comp
                var docType = new ContentType(-1)
                {
                    Alias       = "home",
                    Name        = "Home",
                    Description = "Home containing elementType",
                    Icon        = ".sprTreeDoc3",
                    Thumbnail   = "doc.png",
                    SortOrder   = 1,
                    CreatorId   = 0,
                    Trashed     = false,
                    Variations  = ContentVariation.Nothing
                };
                var comp = new List <IContentTypeComposition>();
                comp.Add(elementType);
                docType.ContentTypeComposition = comp;
                repository.Save(docType);

                // Create "home" content
                var content = new Content("Home", -1, docType)
                {
                    Level = 1, SortOrder = 1, CreatorId = 0, WriterId = 0
                };
                object obj = new { title = "test title" };
                content.PropertyValues(obj);
                content.ResetDirtyProperties(false);
                contentRepository.Save(content);

                // Update variation on element type
                elementType.Variations = ContentVariation.Culture;
                elementType.PropertyTypes.First().Variations = ContentVariation.Culture;
                repository.Save(elementType);

                // Update variation on doc type
                docType.Variations = ContentVariation.Culture;
                repository.Save(docType);

                // Re fetch renewedContent and make sure that the culture has been set.
                var renewedContent = ServiceContext.ContentService.GetById(content.Id);
                var hasCulture     = renewedContent.Properties["title"].Values.First().Culture != null;
                Assert.That(hasCulture, Is.True);
            }
        }
コード例 #29
0
        public void Maps_Templates_Correctly()
        {
            // Arrange
            var provider = TestObjects.GetScopeProvider(Logger);

            using (var scope = provider.CreateScope())
            {
                var templateRepo = new TemplateRepository((IScopeAccessor)provider, AppCaches.Disabled, Logger, TestObjects.GetFileSystemsMock());
                var repository   = CreateRepository((IScopeAccessor)provider);
                var templates    = new[]
                {
                    new Template("test1", "test1"),
                    new Template("test2", "test2"),
                    new Template("test3", "test3")
                };
                foreach (var template in templates)
                {
                    templateRepo.Save(template);
                }


                var contentType = MockedContentTypes.CreateSimpleContentType();
                contentType.AllowedTemplates = new[] { templates[0], templates[1] };
                contentType.SetDefaultTemplate(templates[0]);
                repository.Save(contentType);


                //re-get
                var result = repository.Get(contentType.Id);

                Assert.AreEqual(2, result.AllowedTemplates.Count());
                Assert.AreEqual(templates[0].Id, result.DefaultTemplate.Id);
            }
        }
コード例 #30
0
        public void Can_Perform_Update_On_ContentTypeRepository_After_Model_Mapping()
        {
            // Arrange
            var provider = TestObjects.GetScopeProvider(Logger);

            using (var scope = provider.CreateScope())
            {
                var repository = CreateRepository((IScopeAccessor)provider);
                // Act
                var contentType = repository.Get(NodeDto.NodeIdSeed + 1);

                // there is NO mapping from display to contentType, but only from save
                // to contentType, so if we want to test, let's to it properly!
                var display = Mapper.Map <DocumentTypeDisplay>(contentType);
                var save    = MapToContentTypeSave(display);

                // modify...
                save.Thumbnail = "Doc2.png";
                var contentGroup = save.Groups.Single(x => x.Name == "Content");
                contentGroup.Properties = contentGroup.Properties.Concat(new[]
                {
                    new PropertyTypeBasic
                    {
                        Alias       = "subtitle",
                        Label       = "Subtitle",
                        Description = "Optional Subtitle",
                        Validation  = new PropertyTypeValidation
                        {
                            Mandatory = false,
                            Pattern   = ""
                        },
                        SortOrder  = 1,
                        DataTypeId = -88,
                        LabelOnTop = true
                    }
                });

                var mapped = Mapper.Map(save, contentType);

                // just making sure
                Assert.AreEqual(mapped.Thumbnail, "Doc2.png");
                Assert.IsTrue(mapped.PropertyTypes.Any(x => x.Alias == "subtitle"));
                Assert.IsTrue(mapped.PropertyTypes.Single(x => x.Alias == "subtitle").LabelOnTop);

                repository.Save(mapped);


                var dirty = mapped.IsDirty();

                //re-get
                contentType = repository.Get(NodeDto.NodeIdSeed + 1);

                // Assert
                Assert.That(contentType.HasIdentity, Is.True);
                Assert.That(dirty, Is.False);
                Assert.That(contentType.Thumbnail, Is.EqualTo("Doc2.png"));
                Assert.That(contentType.PropertyTypes.Any(x => x.Alias == "subtitle"), Is.True);

                Assert.That(contentType.PropertyTypes.Single(x => x.Alias == "subtitle").LabelOnTop, Is.True);

                foreach (var propertyType in contentType.PropertyTypes)
                {
                    Assert.IsTrue(propertyType.HasIdentity);
                    Assert.Greater(propertyType.Id, 0);
                }
            }
        }
コード例 #31
0
        public virtual void SetUp()
        {
            // should not need this if all other tests were clean
            // but hey, never know, better avoid garbage-in
            Reset();

            // get/merge the attributes marking the method and/or the classes
            Options = TestOptionAttributeBase.GetTestOptions <UmbracoTestAttribute>();

            // FIXME: align to runtimes & components - don't redo everything here !!!! Yes this is getting painful

            var loggerFactory = GetLoggerFactory(Options.Logger);

            _loggerFactory = loggerFactory;
            var profiler   = new LogProfiler(loggerFactory.CreateLogger <LogProfiler>());
            var msLogger   = loggerFactory.CreateLogger("msLogger");
            var proflogger = new ProfilingLogger(loggerFactory.CreateLogger <ProfilingLogger>(), profiler);

            IOHelper = TestHelper.IOHelper;

            TypeFinder = new TypeFinder(loggerFactory.CreateLogger <TypeFinder>(), new DefaultUmbracoAssemblyProvider(GetType().Assembly, loggerFactory), new VaryingRuntimeHash());
            var appCaches      = GetAppCaches();
            var globalSettings = new GlobalSettings();
            var settings       = new WebRoutingSettings();

            IBackOfficeInfo backOfficeInfo = new AspNetBackOfficeInfo(globalSettings, IOHelper, loggerFactory.CreateLogger <AspNetBackOfficeInfo>(), Microsoft.Extensions.Options.Options.Create(settings));
            IIpResolver     ipResolver     = new AspNetIpResolver();

            UmbracoVersion = new UmbracoVersion();


            LocalizedTextService = new LocalizedTextService(new Dictionary <CultureInfo, Lazy <XDocument> >(), loggerFactory.CreateLogger <LocalizedTextService>());
            var typeLoader = GetTypeLoader(IOHelper, TypeFinder, appCaches.RuntimeCache, HostingEnvironment, loggerFactory.CreateLogger <TypeLoader>(), proflogger, Options.TypeLoader);

            var services = TestHelper.GetRegister();

            Builder = new UmbracoBuilder(services, Mock.Of <IConfiguration>(), typeLoader);

            //TestHelper.GetConfigs().RegisterWith(register);
            services.AddUnique(typeof(ILoggerFactory), loggerFactory);
            services.AddTransient(typeof(ILogger <>), typeof(Logger <>));
            services.AddSingleton <ILogger>(msLogger);
            services.AddUnique(IOHelper);
            services.AddUnique(UriUtility);
            services.AddUnique(UmbracoVersion);
            services.AddUnique(TypeFinder);
            services.AddUnique(LocalizedTextService);
            services.AddUnique(typeLoader);
            services.AddUnique <IProfiler>(profiler);
            services.AddUnique <IProfilingLogger>(proflogger);
            services.AddUnique(appCaches);
            services.AddUnique(HostingEnvironment);
            services.AddUnique(backOfficeInfo);
            services.AddUnique(ipResolver);
            services.AddUnique <IPasswordHasher, AspNetPasswordHasher>();
            services.AddUnique(TestHelper.ShortStringHelper);
            //services.AddUnique<IPublicAccessChecker, PublicAccessChecker>();


            var memberService     = Mock.Of <IMemberService>();
            var memberTypeService = Mock.Of <IMemberTypeService>();

            TestObjects = new TestObjects();
            Compose();
            Current.Factory = Factory = TestHelper.CreateServiceProvider(Builder);
            Initialize();
        }
コード例 #32
0
        private TestObjects Setup()
        {
            var vReturn = new TestObjects
                              {
                                  SignInPersistance = new Mock<ISignInPersistance>(),
                                  DocumentStore = new EmbeddableDocumentStore {RunInMemory = true}
                              };

            vReturn.DocumentStore.Initialize();
            vReturn.DocumentStore.RegisterListener(new RavenDbNoStaleData());
            var vAccountCommandFactory = new Mock<IAccountCommandFactory>();
            var vSendConfirmationCommand = new Mock<ISendConfirmationCommand>();
            vAccountCommandFactory
                .Setup(t => t.CreateSendConfirmationCommand(It.IsAny<Account>()))
                .Returns(vSendConfirmationCommand.Object);

            //Make sure there is an account to get. Since this deals with getting an account.
            var vNewAccount = new CreateAccountCommand(vReturn.DocumentStore, new CustomHashProvider(), vAccountCommandFactory.Object, new CryptoRandomProvider(),
                                                    new CreateAccount
                                                        {
                                                            Email = "*****@*****.**",
                                                            Name = cTestName,
                                                            Password = "******"
                                                        });
            vNewAccount.Execute();

            vReturn.Query = new CheckLoginQuery(vReturn.SignInPersistance.Object, vReturn.DocumentStore);
            return vReturn;
        }
コード例 #33
0
        protected virtual void ComposeApplication(bool withApplication)
        {
            ComposeSettings();

            if (withApplication == false)
            {
                return;
            }

            // default Datalayer/Repositories/SQL/Database/etc...
            Builder.AddRepositories();

            Builder.Services.AddUnique <IExamineManager, ExamineManager>();

            Builder.Services.AddUnique <IJsonSerializer, JsonNetSerializer>();
            Builder.Services.AddUnique <IConfigurationEditorJsonSerializer, ConfigurationEditorJsonSerializer>();
            Builder.Services.AddUnique <IMenuItemCollectionFactory, MenuItemCollectionFactory>();
            Builder.Services.AddUnique <InstallStatusTracker>();

            // register filesystems
            Builder.Services.AddUnique(factory => TestObjects.GetFileSystemsMock());


            var scheme = Mock.Of <IMediaPathScheme>();

            var mediaFileManager = new MediaFileManager(Mock.Of <IFileSystem>(), scheme, Mock.Of <ILogger <MediaFileManager> >(), Mock.Of <IShortStringHelper>());

            Builder.Services.AddUnique(factory => mediaFileManager);

            // no factory (noop)
            Builder.Services.AddUnique <IPublishedModelFactory, NoopPublishedModelFactory>();

            // register application stuff (database factory & context, services...)
            Builder.WithCollectionBuilder <MapperCollectionBuilder>()
            .AddCoreMappers();

            Builder.Services.AddUnique <IEventMessagesFactory>(_ => new TransientEventMessagesFactory());

            var globalSettings    = Microsoft.Extensions.Options.Options.Create(new GlobalSettings());
            var connectionStrings = Microsoft.Extensions.Options.Options.Create(new ConnectionStrings());

            Builder.Services.AddUnique <IUmbracoDatabaseFactory>(f => new UmbracoDatabaseFactory(_loggerFactory.CreateLogger <UmbracoDatabaseFactory>(),
                                                                                                 LoggerFactory,
                                                                                                 globalSettings,
                                                                                                 connectionStrings,
                                                                                                 new Lazy <IMapperCollection>(f.GetRequiredService <IMapperCollection>),
                                                                                                 TestHelper.DbProviderFactoryCreator,
                                                                                                 new DatabaseSchemaCreatorFactory(LoggerFactory.CreateLogger <DatabaseSchemaCreator>(), LoggerFactory, UmbracoVersion, Mock.Of <IEventAggregator>())));

            Builder.Services.AddUnique(f => f.GetService <IUmbracoDatabaseFactory>().SqlContext);

            Builder.WithCollectionBuilder <UrlSegmentProviderCollectionBuilder>(); // empty

            Builder.Services.AddUnique(factory
                                       => TestObjects.GetScopeProvider(_loggerFactory, factory.GetService <FileSystems>(), factory.GetService <IUmbracoDatabaseFactory>()));
            Builder.Services.AddUnique(factory => (IScopeAccessor)factory.GetRequiredService <IScopeProvider>());

            Builder.AddServices();

            // composition root is doing weird things, fix
            Builder.Services.AddUnique <ITreeService, TreeService>();
            Builder.Services.AddUnique <ISectionService, SectionService>();

            // somehow property editor ends up wanting this
            Builder.WithCollectionBuilder <ManifestValueValidatorCollectionBuilder>();

            Builder.Services.AddUnique <IManifestParser, ManifestParser>();

            // note - don't register collections, use builders
            Builder.WithCollectionBuilder <DataEditorCollectionBuilder>();
            Builder.Services.AddUnique <PropertyEditorCollection>();
            Builder.Services.AddUnique <ParameterEditorCollection>();


            Builder.Services.AddUnique <IHttpContextAccessor>(TestHelper.GetHttpContextAccessor(GetHttpContextFactory("/").HttpContext));
        }
コード例 #34
0
ファイル: UITests.cs プロジェクト: CxihuGames/InputSystem
    // Set up a UIActionInputModule with a full roster of actions and inputs
    // and then see if we can generate all the various events expected by the UI
    // from activity on input devices.
    TestObjects CreateScene()
    {
        TestObjects objects = new TestObjects();

        // Set up GameObject with EventSystem.
        var systemObject = new GameObject("System");

        objects.eventSystem = systemObject.AddComponent <TestEventSystem>();
        var uiModule = systemObject.AddComponent <UIActionInputModule>();

        uiModule.sendEventsWhenInBackground = true;
        objects.uiModule = uiModule;
        objects.eventSystem.UpdateModules();
        objects.eventSystem.InvokeUpdate(); // Initial update only sets current module.

        // Set up camera and canvas on which we can perform raycasts.
        var cameraObject = new GameObject("Camera");
        var camera       = cameraObject.AddComponent <Camera>();

        camera.stereoTargetEye = StereoTargetEyeMask.None;
        camera.pixelRect       = new Rect(0, 0, 640, 480);

        var canvasObject = new GameObject("Canvas");
        var canvas       = canvasObject.AddComponent <Canvas>();

        canvas.renderMode = RenderMode.ScreenSpaceCamera;
        canvasObject.AddComponent <GraphicRaycaster>();
        canvasObject.AddComponent <TrackedDeviceRaycaster>();
        canvas.worldCamera = camera;

        // Set up a GameObject hierarchy that we send events to. In a real setup,
        // this would be a hierarchy involving UI components.
        var parentGameObject = new GameObject("Parent");
        var parentTransform  = parentGameObject.AddComponent <RectTransform>();

        parentGameObject.AddComponent <UICallbackReceiver>();

        var leftChildGameObject = new GameObject("Left Child");
        var leftChildTransform  = leftChildGameObject.AddComponent <RectTransform>();

        leftChildGameObject.AddComponent <Image>();
        leftChildGameObject.AddComponent <UICallbackReceiver>();
        objects.leftGameObject = leftChildGameObject;

        var rightChildGameObject = new GameObject("Right Child");
        var rightChildTransform  = rightChildGameObject.AddComponent <RectTransform>();

        rightChildGameObject.AddComponent <Image>();
        rightChildGameObject.AddComponent <UICallbackReceiver>();
        objects.rightGameObject = rightChildGameObject;

        parentTransform.SetParent(canvas.transform, worldPositionStays: false);
        leftChildTransform.SetParent(parentTransform, worldPositionStays: false);
        rightChildTransform.SetParent(parentTransform, worldPositionStays: false);

        // Parent occupies full space of canvas.
        parentTransform.sizeDelta = new Vector2(640, 480);

        // Left child occupies left half of parent.
        leftChildTransform.anchoredPosition = new Vector2(-(640 / 4), 0);
        leftChildTransform.sizeDelta        = new Vector2(320, 480);

        // Right child occupies right half of parent.
        rightChildTransform.anchoredPosition = new Vector2(640 / 4, 0);
        rightChildTransform.sizeDelta        = new Vector2(320, 480);

        return(objects);
    }
コード例 #35
0
        private void RunTestCodeWithServerAndClientConnection(TestCodeDelegate deleg)
        {
            var mouse = new RemoteMouse();
            var touch = new RemoteTouch();
            var keyboard = new RemoteKeyboard();
            var analyser = new InputPacketsAnalyser();
            analyser.SetActiveMouse(mouse);
            analyser.SetActiveTouch(touch);
            analyser.SetActiveKeyboard(keyboard);
            var server = new RemoteServer(analyser, TestPort);
            RemoteClient client = CreateTestClient();
            Task connection = client.ConnectToServerAsync();
            connection.Wait();

            var data = new TestObjects
            { Client = client, Mouse = mouse, Touch = touch, Keyboard = keyboard };
            server.Received += delegate
            {
                data.NumberOfReceivedMessages++;
            };

            try
            {
                if (deleg != null)
                    deleg(data);
            }
            catch (Exception ex)
            {
                Assert.Fail(ex.ToString());
            }
            finally
            {
                client.Dispose();
                server.Dispose();
            }
        }