public static void initIntegrationTest(TestContext context)
        {
            var cfp = new MongoDbConfigurationProvider()
            {
                env_name = nameof(IntegrationTests)
            };

            context.setGlobalObject <IConfigurationProvider>(cfp);

            //context.getMystery().AssemblyRegister.Register(typeof(MysteryTests.BaseMysteryTest).Assembly);
            context.getMystery().AssemblyRegister.Register(typeof(MysteryDMS.Model.DMSFolder).Assembly);
            context.getMystery().AssemblyRegister.Register(typeof(WebContentDispatcher).Assembly);

            MysterySession        session = context.getGlobalObject <MysterySession>();
            IGlobalContentCreator cc      = context.getGlobalObject <IGlobalContentCreator>();

            session.authenticated_user = cc.getNewContent <User>();
            session.authenticated_user.account_type = UserType.admin;

            context.setGlobalObject <IContentDispatcher>(new ContentMemory());
            context.setGlobalObject <INotifier>(new MongoMockNotifier());

            ContentsDatabase db = context.getGlobalObject <ContentsDatabase>();

            db.can_do_crazy = true;
            db.Clear();
            db.Add(session.authenticated_user);
        }
Beispiel #2
0
        protected override ActionResult <string> ActionImplemetation()
        {
            var session = this.getGlobalObject <MysterySession>();

            MysterySession.releaseSession(session.id);
            return(new ActionResult <string>(nameof(LogoutAction)));
        }
        public void SigleReferenceSuggestionsActionCanNotTest()
        {
            using (WebActionExecutor executor = new WebActionExecutor())
            {
                //we add Adriano in db
                TestContentType  adriano = TestContentType.getARandomTestContentType(enforce_a_reference: true);
                ContentsDatabase db      = this.getGlobalObject <ContentsDatabase>();
                db.Add(adriano);
                //we became not admin
                MysterySession session  = this.getGlobalObject <MysterySession>();
                var            was_adim = session.authenticated_user.account_type == UserType.admin;
                if (was_adim)
                {
                    session.authenticated_user.account_type = UserType.normal;
                }

                var result = executor.executeAction(
                    new SigleReferenceSuggestionsAction(),
                    new PropertyEditSuggestionsActionInput
                {
                    content_reference = new Mystery.Content.ContentReference(adriano),
                    property_name     = nameof(TestContentType.not_ediatable_reference),
                    search_text       = null
                });
                Assert.IsTrue(!result.isSuccessfull && result.UnAuthorized);
                if (was_adim)
                {
                    session.authenticated_user.account_type = UserType.admin;
                }
            }
        }
Beispiel #4
0
        public void ContentServiceHelloTest()
        {
            MysterySession session = this.getGlobalObject <MysterySession>();

            session.authenticated_user = new Mystery.Users.User();
            var s = new ContentService();

            Assert.IsFalse(string.IsNullOrEmpty(s.Hello()));
        }
Beispiel #5
0
        private string ExecuteTest(Func <string> test)
        {
            MysterySession session = this.getGlobalObject <MysterySession>();

            session.authenticated_user = new Mystery.Users.User();

            using (WebActionExecutor executor = new WebActionExecutor())
            {
                return(executor.executeAction(new TestMakingAction(test), "").message);
            }
        }
Beispiel #6
0
        private void ExecuteTest(Action test)
        {
            Func <string> to_test = () =>
            {
                test();
                return("cool");
            };
            MysterySession session = this.getGlobalObject <MysterySession>();

            session.authenticated_user = new Mystery.Users.User();

            using (WebActionExecutor executor = new WebActionExecutor())
            {
                executor.executeAction(new TestMakingAction(to_test), "");
            }
        }
Beispiel #7
0
        public static void initIntegrationTest(TestContext context)
        {
            var cfp = new MongoDbConfigurationProvider()
            {
                env_name = nameof(IntegrationTests)
            };

            context.setGlobalObject <IConfigurationProvider>(cfp);

            context.getMystery().AssemblyRegister.Register(typeof(MysteryTests.BaseMysteryTest).Assembly);
            context.getMystery().AssemblyRegister.Register(typeof(DatabaseTest).Assembly);
            context.getMystery().AssemblyRegister.Register(typeof(WebContentDispatcher).Assembly);

            MysterySession        session = context.getGlobalObject <MysterySession>();
            IGlobalContentCreator cc      = context.getGlobalObject <IGlobalContentCreator>();

            session.authenticated_user = cc.getNewContent <User>();
            session.authenticated_user.account_type = UserType.admin;

            context.setGlobalObject <IContentDispatcher>(new ContentMemory());
            context.setGlobalObject <INotifier>(new MongoMockNotifier());

            ContentsDatabase db = context.getGlobalObject <ContentsDatabase>();

            db.can_do_crazy = true;
            db.Add(session.authenticated_user);
            IContent c = cc.getNewContent <TestContentType>();

            db.Add(c);
            db.Clear();

            //cleaning for tests
            var test_folder_files = context.getGlobalObject <IConfigurationProvider>()
                                    .getConfiguration <MongoFsFileRepositoryConfiguration>()
                                    .files_root_folder;

            if (test_folder_files.Exists)
            {
                foreach (var sub_folder in test_folder_files.GetDirectories())
                {
                    sub_folder.Delete(true);
                }
            }

            var content_db = context.getGlobalObject <MysteryMongoDb>().content_db;

            content_db.DropCollection(nameof(MongoFsSingleCopyFileRepository));

            content_db.DropCollection(MongoDBHistoryRepository.collectionName);


            var client = new MongoClient();

            client.DropDatabase("testDb");
            var mongo_db = client.GetDatabase("testDb");

            collection = mongo_db.GetCollection <BsonDocument>(nameof(TestContentType));
            var converter = context.getGlobalObject <IMysteryJsonConverter>();

            collection.InsertOne(BsonDocument.Parse(converter.getJson(c)));
        }