示例#1
0
        public void startTimerTest()
        {
            using (SPEmulators.SPEmulationContext ctx = new SPEmulators.SPEmulationContext(SPEmulators.IsolationLevel.Fake))
            {
                int opencon  = 0;
                int closecon = 0;
                ShimSqlConnection.AllInstances.Open = (instance) =>
                {
                    opencon++;
                };
                ShimSqlConnection.AllInstances.Close = (instance) =>
                {
                    closecon++;
                };

                ShimProcessorBase.GetWebApplications = () =>
                {
                    SPWebApplicationCollection webapp = new SPWebApplicationCollection(new SPWebService());
                    webapp.Add(new ShimSPWebApplication());
                    webapp.Add(new ShimSPWebApplication());
                    return(webapp);
                };

                TimerRunner tr = new TimerRunner();
                tr.startTimer();
                Thread.Sleep(60000);
                tr.stopTimer();
                Thread.Sleep(3000);
            }
        }
        public void ActivateTest_InvalidKey()
        {
            string result = String.Empty;
            string key    = "zbISHHWm7r4SPOusOCuPv6ybCkJF0I4wVN+I4M9TqZ72+ZWYGKL58/rTcQmItfLC";

            using (SPEmulators.SPEmulationContext ctx = new SPEmulators.SPEmulationContext(SPEmulators.IsolationLevel.Fake))
            {
                ActivateFeatureKey activateFeatureKey = new ActivateFeatureKey();

                ShimService.AllInstances.ActivateKeyString = (instance, a) =>
                {
                    return(1);
                };

                ShimActivateFeatureKey.AllInstances.insertKeyString = (instance, a) =>
                {
                    return(false);
                };

                ShimActivateFeatureKey.AllInstances.addKeyString = (instance, a) =>
                {
                    return(false);
                };

                result = activateFeatureKey.Activate(key);
                Assert.AreEqual(result, "Invalid Key");
            }
        }
        public void ActivateTest_ActivationFailed()
        {
            string result = String.Empty;
            string key    = "zbISHHWm7r4SPOusOCuPv2OaBNq0OftnXITUpfpjV39kJWXfdA1YUrXtornB0Wa6";

            using (SPEmulators.SPEmulationContext ctx = new SPEmulators.SPEmulationContext(SPEmulators.IsolationLevel.Fake))
            {
                ActivateFeatureKey activateFeatureKey = new ActivateFeatureKey();

                ShimService.AllInstances.ActivateKeyString = (instance, a) =>
                {
                    return(0);
                };

                ShimActivateFeatureKey.AllInstances.insertKeyString = (instance, a) =>
                {
                    return(false);
                };

                ShimActivateFeatureKey.AllInstances.addKeyString = (instance, a) =>
                {
                    return(false);
                };

                result = activateFeatureKey.Activate(key);
                Assert.AreEqual(result, "Activation Failed:<br>");
            }
        }
        public void BulkInsertTest()
        {
            using (SPEmulators.SPEmulationContext ctx = new SPEmulators.SPEmulationContext(SPEmulators.IsolationLevel.Fake))
            {
                ShimEPMData.ConstructorGuid = (instance, _guid) =>
                {
                };
                ShimEPMData.AllInstances.LogStatusStringStringStringStringInt32Int32String = (String1, String2, String3, String4, Int321, Int322, String5, _bool) => { return(true); };
                ShimSqlConnection.AllInstances.BeginTransaction = (instance) => { return(new ShimSqlTransaction()
                    {
                        Commit = () => { }, DisposeBoolean = (_bool) => { }, Rollback = () => { }
                    }); };
                ShimSqlBulkCopy.ConstructorSqlConnectionSqlBulkCopyOptionsSqlTransaction = (_a, _b, _c, _d) =>
                {
                };
                ShimSqlBulkCopy.AllInstances.Close                  = (instance) => { };
                ShimSqlBulkCopy.AllInstances.NotifyAfterGet         = (instance) => { return(0); };
                ShimSqlBulkCopy.AllInstances.WriteToServerDataTable = (instance, _dt) => { };
                ShimSqlBulkCopy.AllInstances.ColumnMappingsGet      = (instance) => { return(new ShimSqlBulkCopyColumnMappingCollection()
                    {
                        AddStringString = (_string, str) => { return new ShimSqlBulkCopyColumnMapping(); }
                    }); };
                DataSet   ds = new DataSet();
                DataTable dt = new DataTable();
                dt.Columns.Add("TestColumn");
                ds.Tables.Add(dt);
                EPMData epmdata = new EPMData(Guid.NewGuid());
                string  message = string.Empty;

                using (TestCheck.OpenCloseConnections)
                {
                    //Act
                    var result = epmdata.BulkInsert(ds, true, out message);
                    //Assert
                    Assert.AreEqual(true, result);
                }

                using (TestCheck.OpenCloseConnections)
                {
                    //Act
                    var result = epmdata.BulkInsert(ds, Guid.NewGuid());

                    //Assert
                    Assert.AreEqual(true, result);
                }
            }
        }
示例#5
0
        public void CreateEPMLiveDBTest_Fail()
        {
            using (SPEmulators.SPEmulationContext ctx = new SPEmulators.SPEmulationContext(SPEmulators.IsolationLevel.Fake))
            {
                Guid            webApplicationId = Guid.NewGuid();
                CreateEPMLiveDB createEPMLiveDB  = new CreateEPMLiveDB();

                ShimSPWebApplication.AllInstances.ApplicationPoolGet = (instance) =>
                {
                    return(new ShimSPApplicationPool());
                };

                ShimSPPersistedObject.AllInstances.IdGet = (instance) =>
                {
                    return(webApplicationId);
                };

                ShimSPProcessIdentity.AllInstances.UsernameGet = (instance) =>
                {
                    return("");
                };

                ShimCreateEPMLiveDB.AllInstances.GetWebApplicationGuid = (instance, a) =>
                {
                    return(new ShimSPWebApplication());
                };

                ShimSqlCommand.AllInstances.ExecuteNonQuery = (instance) =>
                {
                    return(1);
                };

                ShimCoreFunctions.setConnectionStringGuidStringStringOut = (Guid gWebApp, string cn, out string sError) =>
                {
                    sError = "Error";
                    return(false);
                };

                string error = "";
                Assert.IsFalse(createEPMLiveDB.CreateEPMLiveDatabase(webApplicationId, "win-6j09gf4nbp8", "EPMLive2", "", "", out error));
            }
        }
        public void ActivateTest_StarActivationFailed()
        {
            string result = String.Empty;
            string key    = "*";

            using (SPEmulators.SPEmulationContext ctx = new SPEmulators.SPEmulationContext(SPEmulators.IsolationLevel.Fake))
            {
                ActivateFeatureKey activateFeatureKey = new ActivateFeatureKey();

                ShimActivateFeatureKey.AllInstances.insertKeyString = (instance, a) =>
                {
                    return(false);
                };

                ShimActivateFeatureKey.AllInstances.addKeyString = (instance, a) =>
                {
                    return(false);
                };

                result = activateFeatureKey.Activate(key);
                Assert.AreEqual(result, "Activation Failed:<br>");
            }
        }
        public void BulkInsertTest_ExecuteCatch_2()
        {
            using (SPEmulators.SPEmulationContext ctx = new SPEmulators.SPEmulationContext(SPEmulators.IsolationLevel.Fake))
            {
                int Openconnection  = 0;
                int Closeconnection = 0;

                ShimEPMData.ConstructorGuid = (instance, _guid) =>
                {
                };
                ShimSqlConnection.ConstructorString = (instance, _string) => { };

                ShimEPMData.AllInstances.LogStatusStringStringStringStringInt32Int32String = (String1, String2, String3, String4, Int321, Int322, String5, _bool) => { return(true); };
                ShimSqlConnection.AllInstances.DisposeBoolean = (instance, _bool) => { Closeconnection++; };

                DataSet   ds = new DataSet();
                DataTable dt = new DataTable();
                dt.Columns.Add("TestColumn");
                ds.Tables.Add(dt);
                EPMData epmdata = new EPMData(Guid.NewGuid());
                string  message = string.Empty;
                //Act
                var result = epmdata.BulkInsert(ds, true, out message);

                //Assert
                Assert.AreEqual(false, result);
                Assert.AreNotEqual(Openconnection, Closeconnection);

                //Act
                result = epmdata.BulkInsert(ds, Guid.NewGuid());

                //Assert
                Assert.AreEqual(false, result);
                Assert.AreNotEqual(Openconnection, Closeconnection);
            }
        }
示例#8
0
        public void CreateEPMLiveDBTest_Sucess()
        {
            using (SPEmulators.SPEmulationContext ctx = new SPEmulators.SPEmulationContext(SPEmulators.IsolationLevel.Fake))
            {
                Guid            webApplicationId = Guid.NewGuid();
                CreateEPMLiveDB createEPMLiveDB  = new CreateEPMLiveDB();

                ShimSPWebApplication.AllInstances.ApplicationPoolGet = (instance) =>
                {
                    return(new ShimSPApplicationPool());
                };

                ShimSPPersistedObject.AllInstances.IdGet = (instance) =>
                {
                    return(webApplicationId);
                };

                ShimSPProcessIdentity.AllInstances.UsernameGet = (instance) =>
                {
                    return("epmldev\farmadmin");
                };

                ShimCreateEPMLiveDB.AllInstances.GetWebApplicationGuid = (instance, a) =>
                {
                    return(new ShimSPWebApplication());
                };

                var openedConnections = 0;
                var closedConnections = 0;

                ShimSqlConnection.ConstructorString = (instance, connString) =>
                {
                    var connection = new ShimSqlConnection(instance);
                    connection.Open  = () => { openedConnections++; };
                    connection.Close = () => { closedConnections++; };
                };

                ShimSqlCommand.ConstructorStringSqlConnection = (instance, cmdText, sqlConnection) =>
                {
                    ShimSqlCommand sqlCommand = new ShimSqlCommand(instance);
                    sqlCommand.ParametersGet = () =>
                    {
                        var realSqlCommand = new SqlCommand();
                        return(realSqlCommand.Parameters);
                    };
                    ShimSqlCommand.AllInstances.ExecuteNonQuery = (instance1) =>
                    {
                        return(1);
                    };
                };


                ShimCoreFunctions.setConnectionStringGuidStringStringOut = (Guid gWebApp, string cn, out string sError) =>
                {
                    sError = "";
                    return(true);
                };
                string error = "";
                Assert.IsTrue(createEPMLiveDB.CreateEPMLiveDatabase(webApplicationId, "win-6j09gf4nbp8", "EPMLive2", "", "", out error));
                Assert.AreEqual(openedConnections, closedConnections);
            }
        }
示例#9
0
        private void commonTest(Boolean groups)
        {
            try
            {
                SortedList    arrGTemp = new SortedList();
                PrivateObject objToTestPrivateMethod = new PrivateObject(typeof(getts));
                XmlDocument   docXml = new XmlDocument();

                using (SPEmulators.SPEmulationContext ctx = new SPEmulators.SPEmulationContext(SPEmulators.IsolationLevel.Fake))
                {
                    SPList list  = new ShimSPList();
                    SPWeb  spWeb = new ShimSPWeb();

                    docXml.LoadXml("<rows></rows>");
                    objToTestPrivateMethod.SetField("docXml", docXml);
                    objToTestPrivateMethod.SetField("period", "1");
                    objToTestPrivateMethod.SetField("ndMainParent", docXml.ChildNodes[0]);
                    objToTestPrivateMethod.SetField("list", list);

                    if (groups)
                    {
                        objToTestPrivateMethod.SetField("arrGroupFields", new string[] { "FirstName", "LastName" });

                        ShimSPField.AllInstances.IdGet = (instance) =>
                        {
                            return(Guid.NewGuid());
                        };

                        ShimSPList.AllInstances.FieldsGet = (instance) =>
                        {
                            ShimSPFieldCollection fcol = new ShimSPFieldCollection();
                            fcol.GetFieldByInternalNameString = (internalName) =>
                            {
                                ShimSPField field = new ShimSPField();
                                field.IdGet = () =>
                                {
                                    return(Guid.NewGuid());
                                };
                                field.GetFieldValueAsTextObject = (obj) =>
                                {
                                    return(internalName);
                                };
                                return(field);
                            };
                            return(fcol);
                        };
                    }

                    ShimSPList.AllInstances.GetItemsSPQuery = (instance, a) =>
                    {
                        SPListItemEnumerator sPListItemEnumerator = new SPListItemEnumerator();
                        return(new ShimSPListItemCollection()
                        {
                            GetEnumerator = () =>
                            {
                                return sPListItemEnumerator;
                            },
                            CountGet = () =>
                            {
                                return sPListItemEnumerator.sPListItems.Length;
                            }
                        });
                    };

                    objToTestPrivateMethod.Invoke("processList", spWeb, arrGTemp);
                }
            }
            catch (Exception ex)
            {
                Assert.Fail(ex.Message);
            }
        }