public void FilterAndMergeNotMatchedActivityMatrixAndApprovalMatrixTest() { SOARolePropertiesQueryParam queryParam = new SOARolePropertiesQueryParam(); queryParam.QueryName = "CostCenter"; queryParam.QueryValue = "1001"; WfActivityMatrixResourceDescriptor resource = ActivityMatrixHelper.PrepareActivityMatrixResourceDescriptor(); resource.Rows.ForEach(row => row.Values.FindByColumnName(SOARolePropertyDefinition.ActivityCodeColumn).Value = "NotMatched"); SOARolePropertyRowCollection activityRows = resource.Rows.Query(queryParam); int originalActivityCount = activityRows.Count; WfApprovalMatrix approvalMatrix = ApprovalMatrixHelper.PrepareApprovalMatrix(); SOARolePropertyRowCollection approvalRows = approvalMatrix.Rows.Query(queryParam); int originalApprovalCount = approvalMatrix.PropertyDefinitions.Count - 1; activityRows.MergeApprovalMatrix(resource.PropertyDefinitions, approvalRows, approvalMatrix.PropertyDefinitions); activityRows.AssertAndOutputMatrixOperators(); Assert.AreEqual(originalActivityCount + originalApprovalCount, activityRows.Count); }
public void ApprovalMatrixExistsTest() { WfApprovalMatrix matrix = ApprovalMatrixHelper.PrepareServerApprovalMatrix(); WfClientProcessDescriptorServiceProxy.Instance.ImportApprovalMatrix(matrix.ID, matrix.ToExcelStream()); Assert.IsTrue(WfClientProcessDescriptorServiceProxy.Instance.ApprovalMatrixExists(matrix.ID)); }
public void SimpleClientApprovalMatrixToServer() { WfClientApprovalMatrix client = ApprovalMatrixHelper.PrepareClientApprovalMatrix(); WfApprovalMatrix server = null; WfClientApprovalMatrixConverter.Instance.ClientToServer(client, ref server); client.AreSame(server); }
public void SimpleServerApprovalMatrixToClient() { WfApprovalMatrix server = ApprovalMatrixHelper.PrepareServerApprovalMatrix(); WfClientApprovalMatrix client = null; WfClientApprovalMatrixConverter.Instance.ServerToClient(server, ref client); client.AreSame(server); }
public void DeletelMatrixExistsTest() { InitPrincipal("Requestor"); WfApprovalMatrix matrix = ApprovalMatrixHelper.PrepareServerApprovalMatrix(); WfClientProcessDescriptorServiceProxy.Instance.ImportApprovalMatrix(matrix.ID, matrix.ToExcelStream()); WfClientProcessDescriptorServiceProxy.Instance.DeleteApprovalMatrix(matrix.ID); Assert.IsFalse(WfClientProcessDescriptorServiceProxy.Instance.ApprovalMatrixExists(matrix.ID)); }
public void MergeMatchedOneActivityMatrixAndApprovalMatrixTest() { WfActivityMatrixResourceDescriptor resource = ActivityMatrixHelper.PrepareOneRowActivityMatrixResourceDescriptor(); WfApprovalMatrix approvalMatrix = ApprovalMatrixHelper.PrepareOneRowApprovalMatrixResourceDescriptor(); resource.MergeApprovalMatrix(approvalMatrix); Assert.AreEqual(approvalMatrix.PropertyDefinitions.Count - 1, resource.Rows.Count); resource.AssertAndOutputMatrixOperators(); }
public void UpdateApprovalMatrixTest() { WfApprovalMatrix matrix = ApprovalMatrixHelper.PrepareApprovalMatrix(); Assert.AreEqual(WfMatrixType.ApprovalMatrix, matrix.PropertyDefinitions.MatrixType); WfApprovalMatrixAdapter.Instance.Update(matrix); WfApprovalMatrix loaded = WfApprovalMatrixAdapter.Instance.LoadByID(matrix.ID); Assert.AreEqual(matrix.PropertyDefinitions.Count, loaded.PropertyDefinitions.Count); Assert.AreEqual(matrix.Rows.Count, loaded.Rows.Count); }
public void MergeMatchedActivityMatrixAndApprovalMatrixTest() { WfActivityMatrixResourceDescriptor resource = ActivityMatrixHelper.PrepareActivityMatrixResourceDescriptor(); int originalCount = resource.Rows.Count; WfApprovalMatrix approvalMatrix = ApprovalMatrixHelper.PrepareApprovalMatrix(); resource.MergeApprovalMatrix(approvalMatrix); Assert.AreEqual(originalCount, resource.Rows.Count); resource.AssertAndOutputMatrixOperators(); }
public void ClientApprovalMatrixDescriptorSerializationTest() { WfClientJsonConverterHelper.Instance.RegisterConverters(); WfClientApprovalMatrix matrix = ApprovalMatrixHelper.PrepareClientApprovalMatrix(); string data = JSONSerializerExecute.Serialize(matrix); Console.WriteLine(data); WfClientApprovalMatrix deserialized = JSONSerializerExecute.Deserialize <WfClientApprovalMatrix>(data); matrix.AreSame(deserialized); }
public void ClientApprovalMatrixToExcelTest() { WfClientApprovalMatrix matrix = ApprovalMatrixHelper.PrepareClientApprovalMatrix(); WorkBook workBook = matrix.ToWorkBook(); workBook.Save("ClientApprovalMatrixToExcelTest.xlsx"); WfClientApprovalMatrix deserialized = workBook.ToApprovalMatrix(); deserialized.ID = matrix.ID; matrix.AreSame(deserialized); }
public void MergeNotMatchedOneActivityMatrixAndApprovalMatrixTest() { WfActivityMatrixResourceDescriptor resource = ActivityMatrixHelper.PrepareOneRowActivityMatrixResourceDescriptor(); int originalCount = resource.Rows.Count; resource.Rows[0].Values.FindByColumnName(SOARolePropertyDefinition.ActivityCodeColumn).Value = "NotMatched"; WfApprovalMatrix approvalMatrix = ApprovalMatrixHelper.PrepareOneRowApprovalMatrixResourceDescriptor(); resource.MergeApprovalMatrix(approvalMatrix); Assert.AreEqual(approvalMatrix.PropertyDefinitions.Count, resource.Rows.Count); resource.AssertAndOutputMatrixOperators(); }
public void ApprovalMatrixToExcelTest() { WfApprovalMatrix matrix = ApprovalMatrixHelper.PrepareApprovalMatrix(); WorkBook workBook = matrix.ToWorkBook(); workBook.Save("ApprovalMatrixToExcelTest.xlsx"); WfApprovalMatrix deserialized = workBook.ToApprovalMatrix(); deserialized.ID = matrix.ID; Assert.AreEqual(matrix.PropertyDefinitions.Count, deserialized.PropertyDefinitions.Count); Assert.AreEqual(matrix.Rows.Count, deserialized.Rows.Count); }
public void ImportApprovalMatrixTest() { InitPrincipal("Requestor"); WfApprovalMatrix matrix = ApprovalMatrixHelper.PrepareServerApprovalMatrix(); WfClientProcessDescriptorServiceProxy.Instance.ImportApprovalMatrix(matrix.ID, matrix.ToExcelStream()); Stream stream = WfClientProcessDescriptorServiceProxy.Instance.ExportApprovalMatrix(matrix.ID); WorkBook workBook = WorkBook.Load(stream); WfApprovalMatrix deserialized = workBook.ToApprovalMatrix(); deserialized.ID = matrix.ID; matrix.AreSame(deserialized); }
public void FilterAndMergeEmptyActivityMatrixAndApprovalMatrixTest() { WfActivityMatrixResourceDescriptor resource = new WfActivityMatrixResourceDescriptor(); SOARolePropertiesQueryParam queryParam = new SOARolePropertiesQueryParam(); queryParam.QueryName = "CostCenter"; queryParam.QueryValue = "1001"; WfApprovalMatrix approvalMatrix = ApprovalMatrixHelper.PrepareApprovalMatrix(); SOARolePropertyRowCollection approvalRows = approvalMatrix.Rows.Query(queryParam); resource.Rows.MergeApprovalMatrix(resource.PropertyDefinitions, approvalRows, approvalMatrix.PropertyDefinitions); //输出的只有RowNumber。因为活动矩阵没有列 resource.Rows.AssertAndOutputMatrixOperators(); Assert.AreEqual(3, resource.Rows.Count); }
public void ApprovalMatrixQueryParamMismatchProcessTest() { WfApprovalMatrix approvalMatrix = ApprovalMatrixHelper.PrepareApprovalMatrix(); WfApprovalMatrixAdapter.Instance.Update(approvalMatrix); IWfProcessDescriptor processDesp = ProcessHelper.GetDynamicProcessDesp(approvalMatrix.ID); IWfProcess process = ProcessHelper.StartupProcess(processDesp, new Dictionary <string, object>() { { "PayMethod", "1" }, { "Age", 30 } }); SOARoleContext context = SOARoleContext.CreateContext(approvalMatrix.PropertyDefinitions, process); context.QueryParams.Output(); Assert.AreEqual(1, context.QueryParams.Count); Assert.IsNull(context.QueryParams[0].QueryValue); }
public void MergeMatchedActivityMatrixAndApprovalMatrixProcessTest() { WfApprovalMatrix approvalMatrix = ApprovalMatrixHelper.PrepareApprovalMatrix(); WfApprovalMatrixAdapter.Instance.Update(approvalMatrix); IWfProcessDescriptor processDesp = ProcessHelper.GetDynamicProcessDesp(approvalMatrix.ID); IWfProcess process = ProcessHelper.StartupProcess(processDesp, new Dictionary <string, object>() { { "CostCenter", "1001" }, { "PayMethod", "1" }, { "Age", 30 } }); Console.WriteLine(process.Activities.Count); WfOutputHelper.OutputMainStream(process); WfOutputHelper.OutputEveryActivities(process); Assert.AreEqual(6, process.Activities.Count); }
public void MergeNotMatchedActivityMatrixAndApprovalMatrixProcessTest() { WfApprovalMatrix approvalMatrix = ApprovalMatrixHelper.PrepareApprovalMatrix(); WfApprovalMatrixAdapter.Instance.Update(approvalMatrix); WfActivityMatrixResourceDescriptor resource = ActivityMatrixHelper.PrepareActivityMatrixResourceDescriptor(); resource.Rows.ForEach(row => row.Values.FindByColumnName(SOARolePropertyDefinition.ActivityCodeColumn).Value = "NotMatched"); IWfProcessDescriptor processDesp = ProcessHelper.GetDynamicProcessDesp(resource, approvalMatrix.ID); IWfProcess process = ProcessHelper.StartupProcess(processDesp, new Dictionary <string, object>() { { "CostCenter", "1001" }, { "PayMethod", "1" }, { "Age", 30 } }); Console.WriteLine(process.Activities.Count); WfOutputHelper.OutputMainStream(process); WfOutputHelper.OutputEveryActivities(process); process.Activities.ForEach(act => { if (act.Descriptor.ActivityType == WfActivityType.NormalActivity) { if (act.Descriptor.Properties.GetValue("IsDynamic", false) == false) { Console.WriteLine(act.Descriptor.Name); Assert.IsTrue(act.Descriptor.Name.IndexOf("审批") >= 0); } } }); Assert.AreEqual(8, process.Activities.Count); }
public void MergeActivityMatrixWithDynamicActivityAndApprovalMatrixTest() { WfActivityMatrixResourceDescriptor resource = ActivityMatrixHelper.PrepareDynamicActivityMatrixResourceDescriptor(); WfApprovalMatrix approvalMatrix = ApprovalMatrixHelper.PrepareApprovalMatrix(); WfApprovalMatrixAdapter.Instance.Update(approvalMatrix); IWfProcessDescriptor processDesp = ProcessHelper.GetDynamicProcessDesp(resource, approvalMatrix.ID); IWfProcess process = ProcessHelper.StartupProcess(processDesp, new Dictionary <string, object>() { { "CostCenter", "1001" }, { "PayMethod", "1" }, { "Age", 30 }, { "ReportLine", new IUser[] { OguObjectSettings.GetConfig().Objects["approver1"].User, OguObjectSettings.GetConfig().Objects["cfo"].User } } }); Console.WriteLine(process.Activities.Count); WfOutputHelper.OutputMainStream(process); WfOutputHelper.OutputEveryActivities(process); }
public void FilterAndMergeMatchedActiveMatrixWithRoleAndApprovalMatrixTest() { SOARolePropertiesQueryParam queryParam = new SOARolePropertiesQueryParam(); queryParam.QueryName = "CostCenter"; queryParam.QueryValue = "1002"; WfActivityMatrixResourceDescriptor resource = ActivityMatrixHelper.PrepareActivityMatrixResourceDescriptor(); SOARolePropertyRowCollection activityRows = resource.Rows.Query(queryParam); int originalCount = activityRows.Count; WfApprovalMatrix approvalMatrix = ApprovalMatrixHelper.PrepareApprovalMatrix(); SOARolePropertyRowCollection approvalRows = approvalMatrix.Rows.Query(queryParam); activityRows.MergeApprovalMatrix(resource.PropertyDefinitions, approvalRows, approvalMatrix.PropertyDefinitions); activityRows.AssertAndOutputMatrixOperators(); Assert.AreEqual(3, activityRows.Count); }