public void IfCreateEventSourceFailsUseDefaultPropertyBag()
        {
            config.ContainsReturnValue = true;
            config.GetBykeyReturnValue = "MyLog";
            Isolate.Fake.StaticMethods <EventLog>(Members.CallOriginal);
            Isolate.WhenCalled(() => EventLog.SourceExists("MyLog")).WithExactArguments().WillReturn(false);
            Isolate.WhenCalled(() => EventLog.CreateEventSource("MyLog", "Application")).WithExactArguments().DoInstead(
                delegate
            {
                throw new InvalidOperationException("TestException");
            });

            bool originalMessageCalled = false;

            Isolate.WhenCalled(() => EventLog.WriteEntry("Office SharePoint Server", "Category: Category1\nMessage", EventLogEntryType.SuccessAudit, 0))
            .WithExactArguments().DoInstead((context) => originalMessageCalled = true);

            string logError = string.Empty;

            Isolate.WhenCalled(() => EventLog.WriteEntry("Office SharePoint Server", "Could not create eventsource 'MyLog'.", EventLogEntryType.Error, 0))
            .DoInstead((context) => logError = context.Parameters[1] as string);

            EventLogLogger target = new TestableEventLogger();

            target.Log("Message", 99, EventLogEntryType.SuccessAudit, "Category1");

            Assert.IsTrue(originalMessageCalled);
            Assert.IsTrue(logError.Contains("'MyLog'"));
            Assert.IsTrue(logError.Contains("InvalidOperationException"));
            Assert.IsTrue(logError.Contains("TestException"));
        }
        public void CanSetAndGetValues()
        {
            SPSite    spSite    = new SPSite("http://localhost:9001/sites/pssportal");
            SPContext spContext = SPContext.GetContext(spSite.RootWeb);

            Isolate.WhenCalled(() => SPContext.Current.Site).WillReturn(spSite);
            Isolate.WhenCalled(() => SPContext.Current).WillReturn(spContext);

            //Set Values at levels of hierarchy
            HierarchicalConfig target1 = new HierarchicalConfig();

            target1.SetInPropertyBag("IntegrationTest-FarmLevelKey", "FarmLevelValue", new SPFarmPropertyBag());
            target1.SetInPropertyBag("IntegrationTest-WebAppLevelKey", "WebAppLevelValue", new SPWebAppPropertyBag());
            target1.SetInPropertyBag("IntegrationTest-SiteLevelKey", "SiteLevelValue", new SPSitePropertyBag());
            target1.SetInPropertyBag("IntegrationTest-WebLevelKey", "WebLevelValue", new SPWebPropertyBag());

            HierarchicalConfig target2 = new HierarchicalConfig();

            Assert.AreEqual("FarmLevelValue", target2.GetByKey <string>("IntegrationTest-FarmLevelKey"));
            Assert.AreEqual("WebAppLevelValue", target2.GetByKey <string>("IntegrationTest-WebAppLevelKey"));
            Assert.AreEqual("SiteLevelValue", target2.GetByKey <string>("IntegrationTest-SiteLevelKey"));
            Assert.AreEqual("WebLevelValue", target2.GetByKey <string>("IntegrationTest-WebLevelKey"));

            Assert.AreEqual("FarmLevelValue", SPFarm.Local.Properties["IntegrationTest-FarmLevelKey"]);
            Assert.AreEqual("WebAppLevelValue", SPContext.Current.Site.WebApplication.Properties["IntegrationTest-WebAppLevelKey"]);
            Assert.AreEqual("SiteLevelValue", SPContext.Current.Site.RootWeb.AllProperties["IntegrationTest-SiteLevelKey"]);
            Assert.AreEqual("WebLevelValue", SPContext.Current.Web.AllProperties["IntegrationTest-WebLevelKey"]);
        }
Beispiel #3
0
        public void IsolateTheWebSettingSource()
        {
            _settingName   = "Test";
            _configuration = Isolate.Fake.Instance <Configuration>();

            _settings = Isolate.Fake.Instance <KeyValueConfigurationCollection>();
            // Note: have to fake the keyvalueconfiguration element, when actually creating it
            // using constructor(key, value), after creation element.key returns empty string???
            var fakeElement = Isolate.Fake.Instance <KeyValueConfigurationElement>();

            Isolate.WhenCalled(() => fakeElement.Key).WillReturn(_settingName);
            Isolate.WhenCalled(() => _settings[_settingName]).WillReturn(fakeElement);
            var empty = new[] { _settingName };

            Isolate.WhenCalled(() => _settings.AllKeys).WillReturn(empty);

            _connections = Isolate.Fake.Instance <ConnectionStringSettingsCollection>();
            var fakeConnection = Isolate.Fake.Instance <ConnectionStringSettings>();

            Isolate.WhenCalled(() => fakeConnection.Name).WillReturn(_settingName);
            Isolate.WhenCalled(() => _connections[_settingName]).WillReturn(fakeConnection);

            Isolate.WhenCalled(() => _configuration.AppSettings.Settings).WillReturn(_settings);
            Isolate.WhenCalled(() => _configuration.ConnectionStrings.ConnectionStrings).WillReturn(_connections);

            _factory = Isolate.Fake.Instance <ConfigurationFactory>();
            Isolate.WhenCalled(() => _factory.GetConfiguration()).WillReturn(_configuration);

            _configSettingSource = new ConfigurationSettingSource(_factory);
        }
Beispiel #4
0
        private T createController <T>(Type objectType, bool activate, XPObjectSpace XPObjectSpace, HandleInfo handleInfo) where T : ViewController
        {
            XafTypesInfo.Instance.RegisterEntity(objectType);
            var source     = new CollectionSource(XPObjectSpace, objectType);
            var listEditor = Isolate.Fake.Instance <ListEditor>();

            Isolate.WhenCalled(() => listEditor.RequiredProperties).WillReturn(new string[0]);
            var listView = new ListView(source, listEditor);

            Isolate.WhenCalled(() => listView.ObjectTypeInfo).WillReturn(XafTypesInfo.CastTypeToTypeInfo(objectType));
            Isolate.WhenCalled(() => listView.ObjectSpace).WillReturn(XPObjectSpace);
            var controller = Isolate.Fake.Instance <T>(Members.CallOriginal, ConstructorWillBe.Called);

            Isolate.WhenCalled(() => controller.Application).WillReturn(Isolate.Fake.Instance <XafApplication>());

            controller.Active[""] = false;
            controller.SetView(listView);
            View view = controller.View;

            Isolate.WhenCalled(() => view.ObjectSpace).WillReturn(XPObjectSpace);
            if (activate)
            {
                Activate(controller, handleInfo);
            }

            return(controller);
        }
Beispiel #5
0
        IEnumerator _loadCoroutine(string key, Completer completer, Isolate isolate)
        {
            var url = new Uri(key);

            using (var www = UnityWebRequest.Get(url)) {
                if (headers != null)
                {
                    foreach (var header in headers)
                    {
                        www.SetRequestHeader(header.Key, header.Value);
                    }
                }

                yield return(www.SendWebRequest());

                if (www.isNetworkError || www.isHttpError)
                {
                    completer.completeError(new Exception($"Failed to load from url \"{url}\": {www.error}"));
                    yield break;
                }

                var data = www.downloadHandler.data;

                using (Isolate.getScope(isolate)) {
                    completer.complete(data);
                }
            }
        }
        public void OpenAConnectionThatIsClosed()
        {
            Isolate.WhenCalled(() => _connection.State).WillReturn(ConnectionState.Closed);

            _config.GetConnection();
            Isolate.Verify.WasCalledWithAnyArguments(() => _connection.Open());
        }
        public void TestNoTuningDetailsChannel()
        {
            Dictionary <int, ITvCardHandler> cards = new Dictionary <int, ITvCardHandler>();
            List <IChannel> tuningDetails          = new List <IChannel>();

            IUser           user          = Fakes.FakeUser();
            TvBusinessLayer businessLayer = Fakes.FakeTvBusinessLayer();;
            TVController    controller    = Fakes.FakeTVController();

            DVBCardMocks   dvbCardMocks = GetCardMockByCardType(CardType.DvbC, tuningDetails, user);
            ITvCardHandler cardHandler1 = dvbCardMocks.GetMockedCardHandler();

            cards.Add(dvbCardMocks.CardId, cardHandler1);


            ChannelMap channelMap;
            Channel    channel = ChannelMocks.GetChannel(out channelMap);

            Isolate.WhenCalled(() => businessLayer.GetTuningChannelsByDbChannel(channel)).WillReturn(tuningDetails);
            TVControllerMocks.CardPresent(cardHandler1.DataBaseCard.IdCard, controller);

            SetupChannelMapping(cardHandler1, channelMap, businessLayer, channel);

            AdvancedCardAllocation allocation = new AdvancedCardAllocation(businessLayer, controller);

            TvResult          result;
            List <CardDetail> availCards = allocation.GetFreeCardsForChannel(cards, channel, ref user, out result);

            Assert.AreEqual(0, availCards.Count, "The number of cards returned is not as expected");
        }
Beispiel #8
0
        public void AddOneItem_Test_ReturnsTrue()
        {
            // arrange
            var expenseData     = new ExpenseData();
            var expenseItem     = new ExpenseItem();
            var expenseItem1    = new ExpenseItem(0, "dateString", 0.0, "tag");
            var expenseItemList = new List <ExpenseItem> {
                expenseItem1
            };

            expenseItemList = new List <ExpenseItem> {
                expenseItem1, expenseItem
            };
            var handleExpenseItem = Isolate.Fake.AllInstances <ExpenseItem>(Members.CallOriginal);

            Isolate.WhenCalled(() => handleExpenseItem.ID).WillReturn((-1));
            Isolate.WhenCalled(() => handleExpenseItem.Validate()).WillReturn(true);
            var boolean = expenseData.LoadFromList(expenseItemList);

            // act
            var result = expenseData.AddOneItem(0, "dateString", 0.1, "tag");

            // assert
            Assert.AreEqual(true, result);
            // side affects on expenseData
            Assert.AreEqual(2, expenseData.Items.Count);
            Assert.AreEqual("dateString", expenseData.Items[1].DateString);
            Assert.AreEqual(0.1, expenseData.Items[1].Amount, 0.01);
            Assert.AreEqual("tag", expenseData.Items[1].Tag);
            Assert.AreEqual("<Item><ID>0</ID><Date>dateString</Date><Amount>0.1</Amount><Tag>tag</Tag></Item>", expenseData.Items[1].ToXMLString());
            Assert.AreEqual("0,dateString,0.1,tag", expenseData.Items[1].ToTextString());
        }
Beispiel #9
0
        private XPMemberInfo GetCollectionMemberInfo()
        {
            var collectionMemberInfo = Isolate.Fake.Instance <XPMemberInfo>();

            Isolate.WhenCalled(() => collectionMemberInfo.IsCollection).WillReturn(true);
            return(collectionMemberInfo);
        }
        public void TestWriteFrameFileContent()
        {
            Frame frame = Isolate.Fake.Instance <Frame>();

            frame.ID = 1;

            ushort[] initDepthValues = { 1, 2, 3 };
            byte[]   initColorValues = { 1, 2, 3 };
            Isolate.WhenCalled(() => frame.DepthData).WillReturn(initDepthValues);
            Isolate.WhenCalled(() => frame.ColorData).WillReturn(initColorValues);

            binFrameWriter.WriteFrame(frame);
            Assert.IsTrue(File.Exists("Scans\\Frame1.bin"));

            BinaryReader binaryReader = new BinaryReader(new FileStream("Scans\\Frame1.bin", FileMode.Open));
            int          depthLength  = binaryReader.ReadInt32();

            ushort[] depthValues = { binaryReader.ReadUInt16(), binaryReader.ReadUInt16(), binaryReader.ReadUInt16() };

            int colorLength = binaryReader.ReadInt32();

            byte[] colorValues = binaryReader.ReadBytes(3);

            binaryReader.Close();

            Assert.AreEqual(3, depthLength);
            Assert.AreEqual(3, colorLength);
            Assert.IsTrue(initDepthValues.SequenceEqual(depthValues));
            Assert.IsTrue(initColorValues.SequenceEqual(colorValues));
        }
        private static Card CreateCardMock(int priority)
        {
            Card fakeCard = Isolate.Fake.Instance <Card>();

            Isolate.WhenCalled(() => fakeCard.Priority).WillReturn(priority);
            return(fakeCard);
        }
Beispiel #12
0
        public void WhenCreatingEntityMissingPropertyFailsWithClearException()
        {
            Guid       fieldId1   = new Guid("{95C7711D-E2B5-42f9-B0DB-4C840BED0C74}");
            SPListItem spListItem = Isolate.Fake.Instance <SPListItem>();

            Isolate.WhenCalled(() => spListItem[fieldId1]).WithExactArguments().WillReturn("teststring");
            Isolate.WhenCalled(() => spListItem.Name).WillReturn("ItemName");

            var target = new ListItemFieldMapper <TestEntity>();

            target.AddMapping(fieldId1, "NonExistingProperty");

            try
            {
                target.CreateEntity(spListItem);
                Assert.Fail();
            }
            catch (ListItemFieldMappingException ex)
            {
                Assert.AreEqual(
                    "Type 'Microsoft.Practices.SPG.Common.Tests.ListRepository.TestEntity' does not have a property 'NonExistingProperty' which was mapped to FieldID: '95c7711d-e2b5-42f9-b0db-4c840bed0c74' for SPListItem 'ItemName'."
                    , ex.Message);
            }
            catch (Exception)
            {
                Assert.Fail();
            }
        }
Beispiel #13
0
        public void CanFillSPListItemFromEntity()
        {
            Guid       fieldId1   = Guid.NewGuid();
            Guid       fieldId2   = Guid.NewGuid();
            TestEntity testEntity = new TestEntity()
            {
                Property1String = "teststring", Property2Integer = 321
            };
            SPListItem spListItem  = Isolate.Fake.Instance <SPListItem>();
            object     field1Value = null;
            object     field2Value = null;

            Isolate.WhenCalled(() => spListItem[fieldId1] = "teststring").DoInstead((context) => field1Value = context.Parameters[1]);
            Isolate.WhenCalled(() => spListItem[fieldId2] = 321).DoInstead((context) => field2Value = context.Parameters[1]);


            ListItemFieldMapper <TestEntity> target = new ListItemFieldMapper <TestEntity>();

            target.AddMapping(fieldId1, "Property1String");
            target.AddMapping(fieldId2, "Property2Integer");

            target.FillSPListItemFromEntity(spListItem, testEntity);

            Assert.AreEqual("teststring", field1Value);
            Assert.AreEqual(321, field2Value);
        }
        public void DocTypeMarkupLanguageBuilderTest_DataContextName()
        {
            var dtob = Isolate.Fake.Instance <DocTypeObjectBuilder>(Members.MustSpecifyReturnValues);

            Isolate.WhenCalled(() => dtob.DocumentTypes).WillReturn(new List <DocType>
            {
                new DocType {
                    Alias        = "DocType1",
                    Name         = "Document Type 1",
                    Description  = "Document Type 1 description",
                    Id           = 1,
                    ParentId     = -1,
                    Associations = null,
                    Properties   = null,
                }
            });

            var dtmlGen = new DocTypeMarkupLanguageBuilder(dtob.DocumentTypes, string.Empty, false);

            dtmlGen.BuildXml();
            Assert.AreEqual <string>("umbraco", (string)dtmlGen.DocTypeMarkupLanguage.Root.Attribute("DataContextName"));

            dtmlGen = new DocTypeMarkupLanguageBuilder(dtob.DocumentTypes, "Myumbraco", false);
            dtmlGen.BuildXml();
            Assert.AreEqual <string>("Myumbraco", (string)dtmlGen.DocTypeMarkupLanguage.Root.Attribute("DataContextName"));
        }
 public void TVHomeSetUp()
 {
     Isolate.Fake.StaticMethods <Log>(Members.MustSpecifyReturnValues);
     Isolate.WhenCalled(() => Log.Info("test", null)).DoInstead(callContext =>
     {
         string format     = callContext.Parameters[0] as string;
         object[] arg      = callContext.Parameters[1] as object[];
         string logLine    = string.Format(format, arg);
         string threadName = Thread.CurrentThread.Name;
         int threadId      = Thread.CurrentThread.ManagedThreadId;
         Console.WriteLine("{0:yyyy-MM-dd HH:mm:ss.ffffff} [{1}({2})]: {3}", DateTime.Now, threadName, threadId, logLine);
     });
     Isolate.WhenCalled(() => Log.Debug("test", null)).DoInstead(callContext =>
     {
         string format     = callContext.Parameters[0] as string;
         object[] arg      = callContext.Parameters[1] as object[];
         string logLine    = string.Format(format, arg);
         string threadName = Thread.CurrentThread.Name;
         int threadId      = Thread.CurrentThread.ManagedThreadId;
         Console.WriteLine("{0:yyyy-MM-dd HH:mm:ss.ffffff} [{1}({2})]: {3}", DateTime.Now, threadName, threadId, logLine);
     });
     Isolate.WhenCalled(() => Log.Error("test", null)).DoInstead(callContext =>
     {
         string format     = callContext.Parameters[0] as string;
         object[] arg      = callContext.Parameters[1] as object[];
         string logLine    = string.Format(format, arg);
         string threadName = Thread.CurrentThread.Name;
         int threadId      = Thread.CurrentThread.ManagedThreadId;
         Console.WriteLine("{0:yyyy-MM-dd HH:mm:ss.ffffff} [{1}({2})]: {3}", DateTime.Now, threadName, threadId, logLine);
     });
 }
        public void GetCurrentPartnerIdReturnPartnerId()
        {
            SharePointServiceLocator.ReplaceCurrentServiceLocator(new ActivatingServiceLocator()
                                                                  .RegisterTypeMapping <IHierarchicalConfig, MockConfigManager>()
                                                                  .RegisterTypeMapping <ILogger, MockLogger>());
            SPFarm fakeFarm = Isolate.Fake.Instance <SPFarm>();

            Isolate.WhenCalled(() => SPFarm.Local).WillReturn(fakeFarm);
            Isolate.WhenCalled(() => ServerContext.GetContext(new SPSite(null))).WillReturn(null);
            Isolate.WhenCalled(() => SPContext.Current.Site).WillReturn(null);
            UserProfileManager fakeUserProfileManager = Isolate.Fake.Instance <UserProfileManager>();

            Isolate.Swap.NextInstance <UserProfileManager>().With(fakeUserProfileManager);
            UserProfile fakeUserProfile = Isolate.Fake.Instance <UserProfile>();

            Isolate.WhenCalled(() => fakeUserProfileManager.GetUserProfile(string.Empty)).WillReturn(fakeUserProfile);
            Isolate.WhenCalled(() => SPContext.Current.Web.CurrentUser.LoginName).WillReturn("User1");
            Isolate.WhenCalled(() => fakeUserProfileManager.UserExists("User1")).WithExactArguments().WillReturn(true);
            Isolate.WhenCalled(() => fakeUserProfile["PartnerId"].Value).WillReturn("TestPartnerId");


            PartnerSiteDirectory target = new PartnerSiteDirectory();
            string actualPartnerId      = target.GetCurrentPartnerId();

            Assert.AreEqual("TestPartnerId", actualPartnerId);
        }
        private IChannel GetScrambledTuningDetailBasedOnCardType(CardType cardType)
        {
            IChannel channel = GetTuningDetailBasedOnCardType(cardType);

            Isolate.WhenCalled(() => channel.FreeToAir).WillReturn(false);
            return(channel);
        }
        public void ExecuteEmptyTopLevelSiteRelativeUrlTest()
        {
            SPSite fakeSite = Isolate.Fake.Instance <SPSite>(Members.ReturnRecursiveFakes);

            Isolate.Swap.NextInstance <SPSite>().With(fakeSite);
            SPWeb fakeWeb = fakeSite.RootWeb.Webs.Add("", "", "", uint.MinValue, "", false, false);

            Isolate.WhenCalled(() => fakeWeb.Url).WillReturn("http://localhost/unittest");
            SPPropertyBag fakePropertyBag = fakeWeb.Properties;

            CreateSubSiteActivity_Accessor target = new CreateSubSiteActivity_Accessor();

            target.BusinessEvent      = "unittest";
            target.BusinessEventId    = "1";
            target.BusinessEventIdKey = "unittestid";
            target.SiteCollectionUrl  = "http://localhost";
            target.SiteTemplateName   = "testtemplate";

            ActivityExecutionContext executionContext = null;

            ActivityExecutionStatus expected = new ActivityExecutionStatus();

            expected = ActivityExecutionStatus.Closed;
            ActivityExecutionStatus actual;

            actual = target.Execute(executionContext);

            Isolate.Verify.WasCalledWithAnyArguments(() => fakeSite.RootWeb.Webs.Add("", "", "", uint.MinValue, "", false, false));
            Isolate.Verify.WasCalledWithExactArguments(() => fakePropertyBag["unittestid"] = "1");
            Isolate.Verify.WasCalledWithAnyArguments(() => fakePropertyBag.Update());
            Assert.AreEqual(target.SubSiteUrl, "http://localhost/unittest");
            Assert.AreEqual(expected, actual);
        }
Beispiel #19
0
        public void PluginEnabled_Invoked_UpdateUIControlsVisibilityAndSelectInitialOption()
        {
            IView  viewOrg       = Isolate.Fake.Instance <IView>();
            IView  viewSurrogate = Isolate.Fake.Instance <IView>();
            IModel model         = Isolate.Fake.Instance <IModel>();

            Isolate.Fake.StaticMethods <Utilities>();
            Isolate.WhenCalled(() => Utilities.InvokeIfNeeded(viewOrg, null, null)).DoInstead(
                callContext =>
                viewSurrogate.GetType().GetMethod((string)callContext.Parameters[1]).Invoke(viewSurrogate, new[] { callContext.Parameters[2] }));
            Isolate.WhenCalled(() => Utilities.InvokeIfNeeded(viewOrg, (string)null)).DoInstead(
                callContext =>
                viewSurrogate.GetType().GetMethod((string)callContext.Parameters[1]).Invoke(viewSurrogate, new object[] { }));


            // Act
            new PresenterWithReflection(viewOrg, model);

            Isolate.Invoke.Event(() => model.PluginEnabled += null, model, EventArgs.Empty);

            // Assert
            Isolate.Verify.WasCalledWithExactArguments(() => viewSurrogate.SetWarningVisible(false));
            Isolate.Verify.WasCalledWithExactArguments(() => viewSurrogate.SetOptionsVisible(true));
            Isolate.Verify.WasCalledWithExactArguments(() => viewSurrogate.SetInitialOption());
        }
Beispiel #20
0
        private async Task Run(string directory, CancellationToken token)
        {
            var applicationBase = Environment.CurrentDirectory;
            var abPrefix = applicationBase.Length + 1;
            var relBoot = Path.GetDirectoryName(Path.GetFullPath(typeof(Boot).Assembly.Location).Substring(abPrefix));
            var relDir = Path.GetFullPath(directory).Substring(abPrefix);

            if (!token.IsCancellationRequested)
            {
                // ReSharper disable AccessToDisposedClosure
                var isolated = new Isolate<IsolatedRunner, IIsolatedRunner>(null, new AppDomainSetup { ApplicationBase = applicationBase, PrivateBinPath = relDir + Path.PathSeparator + relBoot });
                using(isolated)
                {
                    var reg = token.Register(() => isolated.Value.Cancel());using (reg)
                    try
                    {
                        Debug.WriteLine("Start " + directory);
                        await Task.Factory.StartNew(() => isolated.Value.Run(), token);
                    }
                    catch (TaskCanceledException)
                    {
                        
                    }
                    catch (Exception ex)
                    {
                        _log.Log(2, "Boot Run: " + ex.ToString());
                    }
                    Debug.WriteLine("Finish " + directory);
                }
                // ReSharper restore AccessToDisposedClosure
            }
        }
 public void TestStartAvailable()
 {
     isOpen = true;
     Isolate.WhenCalled(() => kinectSensor.IsAvailable).WillReturn(true);
     kinect.Start();
     Assert.IsTrue(isOpen);
 }
        public void UseAConnectionCacheToGetTheConnectionIfHasConnection()
        {
            Isolate.WhenCalled(() => _cache.HasNoConnection).WillReturn(false);

            Assert.AreEqual(_connection, _config.GetConnection());
            Isolate.Verify.WasCalledWithAnyArguments(() => _cache.GetConnection());
        }
 public void TestStopNotAvailable()
 {
     isOpen = false;
     Isolate.WhenCalled(() => kinectSensor.IsAvailable).WillReturn(false);
     kinect.Stop();
     Assert.IsFalse(isOpen);
 }
Beispiel #24
0
        public TController Create(ViewType viewType)
        {
            XafTypesInfo.Instance.RegisterEntity(typeof(TObject));

            _controller = new TController();
            _controller.Active[STR_ControllerFactory] = false;

            var unitOfWork    = new UnitOfWork(Session.DefaultSession.DataLayer);
            var XPObjectSpace = new XPObjectSpace(unitOfWork, XafTypesInfo.Instance);

            var xafApplication = Isolate.Fake.Instance <XafApplication>();

            Isolate.WhenCalled(() => _controller.Application).WillReturn(xafApplication);
            Isolate.WhenCalled(() => xafApplication.CreateObjectSpace()).WillReturn(XPObjectSpace);

            var  currentObject = (TObject)XPObjectSpace.CreateObject(typeof(TObject));
            View view          = viewType == ViewType.DetailView ? (View)createDetailView(XPObjectSpace, currentObject) : createListView(XPObjectSpace);

            view.CurrentObject = currentObject;
            _controller.SetView(view);

            var frame = new Frame(_controller.Application, TemplateContext.View);

            frame.SetView(_controller.View);
            Isolate.WhenCalled(() => _controller.Frame).WillReturn(frame);
            return(_controller);
        }
Beispiel #25
0
        public static Future <R> compute <Q, R>(ComputeCallback <Q, R> callback, Q message, string debugLabel = null)
        {
            var completer = Completer.create();
            var isolate   = Isolate.current;

            var backgroundWorker = new BackgroundWorker();

            backgroundWorker.DoWork             += (sender, args) => { args.Result = callback((Q)args.Argument); };
            backgroundWorker.RunWorkerCompleted += (o, a) => {
                if (!isolate.isValid)
                {
                    return;
                }

                using (Isolate.getScope(isolate)) {
                    if (a.Error != null)
                    {
                        completer.completeError(a.Error);
                    }
                    else
                    {
                        completer.complete(FutureOr.value((R)a.Result));
                    }
                }
            };
            backgroundWorker.RunWorkerAsync(message);
            return(completer.future.to <R>());
        }
        IEnumerator _loadCoroutine(string key, Completer completer, Isolate isolate)
        {
            var url = _urlFromKey(key);

            using (var www = UnityWebRequest.Get(url)) {
                if (headers != null)
                {
                    foreach (var header in headers)
                    {
                        www.SetRequestHeader(header.Key, header.Value);
                    }
                }

                yield return(www.SendWebRequest());

                if (www.isNetworkError || www.isHttpError)
                {
                    completer.completeError(new UIWidgetsError(new List <DiagnosticsNode>()
                    {
                        new ErrorSummary($"Unable to load asset: {key}"),
                        new StringProperty("HTTP status code", www.error)
                    }));
                    yield break;
                }

                var data = www.downloadHandler.data;

                using (Isolate.getScope(isolate)) {
                    completer.complete(data);
                }
            }
        }
Beispiel #27
0
        void _handleMethodCall(string method, List <JSONNode> args)
        {
            if (TextInput._currentConnection == null)
            {
                return;
            }
            int client = args[0].AsInt;

            if (client != TextInput._currentConnection._id)
            {
                return;
            }

            using (Isolate.getScope(TextInput._currentConnection.isolate)) {
                switch (method)
                {
                case "TextInputClient.updateEditingState":
                    TextInput._updateEditingState(client, TextEditingValue.fromJSON(args[1].AsObject));
                    break;

                case "TextInputClient.performAction":
                    TextInput._performAction(client, TextInputUtils._toTextInputAction(args[1].Value));
                    break;

                default:
                    throw new UIWidgetsError($"unknown method ${method}");
                }
            }
        }
        public void Cleanup()
        {
            SPSite    spSite    = new SPSite("http://localhost:9001/sites/pssportal");
            SPContext spContext = SPContext.GetContext(spSite.RootWeb);

            Isolate.WhenCalled(() => SPContext.Current.Site).WillReturn(spSite);
            Isolate.WhenCalled(() => SPContext.Current).WillReturn(spContext);

            List <string> keys = new List <string>()
            {
                "IntegrationTest-FarmLevelKey", "IntegrationTest-WebAppLevelKey", "IntegrationTest-SiteLevelKey", "IntegrationTest-WebLevelKey"
            };

            HierarchicalConfig hierarchicalConfig = new HierarchicalConfig();

            foreach (string key in keys)
            {
                hierarchicalConfig.RemoveKeyFromPropertyBag(key, SPContext.Current.Web);
                hierarchicalConfig.RemoveKeyFromPropertyBag(key, SPContext.Current.Site);
                hierarchicalConfig.RemoveKeyFromPropertyBag(key, SPContext.Current.Site.WebApplication);
                hierarchicalConfig.RemoveKeyFromPropertyBag(key, SPFarm.Local);
            }

            Isolate.CleanUp();
        }
        public void GetPartnerSiteCollectionUrl()
        {
            SharePointServiceLocator.ReplaceCurrentServiceLocator(new ActivatingServiceLocator()
                                                                  .RegisterTypeMapping <IHierarchicalConfig, MockConfigManager>()
                                                                  .RegisterTypeMapping <ILogger, MockLogger>(InstantiationType.AsSingleton));

            SPFarm fakeFarm = Isolate.Fake.Instance <SPFarm>();

            Isolate.WhenCalled(() => SPFarm.Local).WillReturn(fakeFarm);
            SPSite fakeSite = Isolate.Fake.Instance <SPSite>();

            Isolate.Swap.NextInstance <SPSite>().With(fakeSite);
            SPWeb fakeWeb = fakeSite.OpenWeb();


            SPList fakeList = fakeWeb.Lists["Sites"];
            SPListItemCollection fakeItems = fakeList.GetItems(new SPQuery());

            Isolate.WhenCalled(() => fakeItems.Count).WillReturn(1);
            SPListItem fakeItem = fakeItems[0];

            Isolate.WhenCalled(() => fakeItem["URL"]).WillReturn("http://localhost, http://localhost");

            PartnerSiteDirectory target = new PartnerSiteDirectory();

            string expected = "http://localhost";
            string actual;

            actual = target.GetPartnerSiteCollectionUrl("TestPartnerId");
            MockLogger logger = SharePointServiceLocator.Current.GetInstance <ILogger>() as MockLogger;


            Assert.AreEqual(logger.loggedMessage, string.Format("PartnerSiteDirectory FindPartnerMappingForCurrentPartner CAML: <Where><Eq><FieldRef ID='{0}'/><Value Type='Text'>TestPartnerId</Value></Eq></Where>", FieldIds.PartnerFieldId));
            Assert.AreEqual(expected, actual);
        }
        public void CanSetValueAndOverrideAtLowerLevel()
        {
            SPSite    spSite    = new SPSite("http://localhost:9001/sites/pssportal");
            SPContext spContext = SPContext.GetContext(spSite.RootWeb);

            Isolate.WhenCalled(() => SPContext.Current.Site).WillReturn(spSite);
            Isolate.WhenCalled(() => SPContext.Current).WillReturn(spContext);

            //Set Values at levels of hierarchy
            HierarchicalConfig target = new HierarchicalConfig();

            target.SetInPropertyBag("IntegrationTest-FarmLevelKey", "FarmLevelValue", new SPFarmPropertyBag());
            Assert.AreEqual("FarmLevelValue", target.GetByKey <string>("IntegrationTest-FarmLevelKey"));

            target.SetInPropertyBag("IntegrationTest-FarmLevelKey", "Over-riddenValue1", new SPWebAppPropertyBag());
            Assert.AreEqual("Over-riddenValue1", target.GetByKey <string>("IntegrationTest-FarmLevelKey"));

            target.SetInPropertyBag("IntegrationTest-FarmLevelKey", "Over-riddenValue2", new SPWebAppPropertyBag());
            Assert.AreEqual("Over-riddenValue2", target.GetByKey <string>("IntegrationTest-FarmLevelKey"));

            target.SetInPropertyBag("IntegrationTest-FarmLevelKey", "Over-riddenValue3", new SPSitePropertyBag());
            Assert.AreEqual("Over-riddenValue3", target.GetByKey <string>("IntegrationTest-FarmLevelKey"));

            target.SetInPropertyBag("IntegrationTest-FarmLevelKey", "Over-riddenValue4", new SPWebPropertyBag());
            Assert.AreEqual("Over-riddenValue4", target.GetByKey <string>("IntegrationTest-FarmLevelKey"));
        }
        public void DocTypeMarkupLanguageBuilderTest_DocTypeWithAssociations()
        {
            var dtob = Isolate.Fake.Instance <DocTypeObjectBuilder>(Members.MustSpecifyReturnValues);

            Isolate.WhenCalled(() => dtob.DocumentTypes).WillReturn(new List <DocType>
            {
                new DocType {
                    Alias        = "DocType1",
                    Name         = "Document Type 1",
                    Description  = "Document Type 1 description",
                    Id           = 1,
                    ParentId     = -1,
                    Associations = new List <DocTypeAssociation> {
                        new DocTypeAssociation {
                            AllowedId = 1
                        }
                    },
                    Properties = null,
                }
            });

            var dtmlGen = new DocTypeMarkupLanguageBuilder(dtob.DocumentTypes, string.Empty, false);

            dtmlGen.BuildXml();

            Assert.AreEqual <int>(1, dtmlGen.DocTypeMarkupLanguage.Descendants("Associations").Count());

            var association = dtmlGen.DocTypeMarkupLanguage.Descendants("Associations").First();

            Assert.AreEqual <int>(1, (int)association.Element("Association"));
        }