コード例 #1
0
ファイル: BaseNHTests.cs プロジェクト: Jo1nes/SolrNet
 public void FixtureSetup() {
     var nhConfig = ConfigurationExtensions.GetNhConfig();
     mockSolr = new MSolrOperations<Entity>();
     var mapper = new MReadOnlyMappingManager();
     var provider = new MServiceProvider();
     provider.getService += t => {
         if (t == typeof(IReadOnlyMappingManager))
             return mapper;
         throw new ArgumentException("Unexpected");
     };
     NHHelper.SetListener(nhConfig, GetSolrNetListener(mockSolr));
     new SchemaExport(nhConfig).Execute(false, true, false);
     sessionFactory = nhConfig.BuildSessionFactory();
 }
コード例 #2
0
ファイル: CfgHelperTests.cs プロジェクト: FilipVV/SolrNet
        public void Configure_with_addparameters() {
            var nhConfig = ConfigurationExtensions.GetNhConfig();
            var mapper = new MReadOnlyMappingManager();
            mapper.getRegisteredTypes += () => new[] {typeof (Entity)};
            var solr = new MSolrOperations<Entity>();

            var provider = new MServiceProvider();
            provider.getService += MServiceLocator.Table(new Dictionary<System.Type, object> {
                {typeof(IReadOnlyMappingManager), mapper},
                {typeof(ISolrOperations<Entity>), solr},
            });

            var addParameters = new AddParameters {CommitWithin = 4343};
            var helper = new CfgHelper(provider);
            helper.Configure(nhConfig, true, addParameters);
            var listener = nhConfig.EventListeners.PostInsertEventListeners[0];
            Assert.IsInstanceOfType<SolrNetListener<Entity>>(listener);
            Assert.AreEqual(addParameters, ((IListenerSettings)listener).AddParameters);
        }
コード例 #3
0
ファイル: CfgHelperTests.cs プロジェクト: FilipVV/SolrNet
        public void Configure_from_serviceprovider() {
            var nhConfig = ConfigurationExtensions.GetNhConfig();

            var provider = new MServiceProvider();
            var mapper = new MReadOnlyMappingManager();
            mapper.getRegisteredTypes += () => new[] {typeof (Entity)};

            var solr = new MSolrOperations<Entity>();
            provider.getService += MServiceLocator.Table(new Dictionary<System.Type, object> {
                {typeof (IReadOnlyMappingManager), mapper},
                {typeof (ISolrOperations<Entity>), solr},
            });
            var helper = new CfgHelper(provider);
            helper.Configure(nhConfig, true);
            Assert.GreaterThan(nhConfig.EventListeners.PostInsertEventListeners.Length, 0);
            Assert.GreaterThan(nhConfig.EventListeners.PostUpdateEventListeners.Length, 0);
            Assert.GreaterThan(nhConfig.EventListeners.PostDeleteEventListeners.Length, 0);
            var listener = nhConfig.EventListeners.PostInsertEventListeners[0];
            Assert.IsInstanceOfType<SolrNetListener<Entity>>(listener);
        }
コード例 #4
0
ファイル: CfgHelperTests.cs プロジェクト: FilipVV/SolrNet
        public void Does_not_override_existing_listeners() {
            var nhConfig = ConfigurationExtensions.GetNhConfig();

            var mockListener = new MPostInsertEventListener();
            nhConfig.SetListener(ListenerType.PostInsert, mockListener);

            var mapper = new MReadOnlyMappingManager();
            mapper.getRegisteredTypes += () => new[] {typeof (Entity)};

            var solr = new MSolrOperations<Entity>();

            var provider = new MServiceProvider();
            provider.getService += MServiceLocator.Table(new Dictionary<System.Type, object> {
                {typeof(IReadOnlyMappingManager), mapper},
                {typeof(ISolrOperations<Entity>), solr},
            });

            var helper = new CfgHelper(provider);
            helper.Configure(nhConfig, true);
            Assert.AreEqual(2, nhConfig.EventListeners.PostInsertEventListeners.Length);
        }