// Check the dashboard for expected properties.
        private static void CheckDashboard(MyProject project)
        {
            Dashboard dashboard = project.Dashboard;

            var property1 = CheckDashboardProperty(project, dashboard, 338, "PerformTask", "SimilarityOperator");

            var property2 = CheckDashboardProperty(project, dashboard, 331, "PerformTask", "SimilarityOperator");

            CheckDashboardProperty(project, dashboard, 451, "ShareWeightsTask", "SourceNodeName");

            MyWorkingNode nodeGroup = project.Network.GetChildNodeById(359) as MyWorkingNode;
            var           property4 = dashboard.Get(nodeGroup, "InputBranches");

            Assert.NotNull(property4);

            // Check the grouped dashboard for expected properties.
            GroupDashboard groupedDashboard = project.GroupedDashboard;

            var group = groupedDashboard.Get("f6af17f3-82b0-42b6-89b0-a4eaf6432316");

            Assert.NotNull(@group);

            Assert.True(@group.GroupedProperties.Contains(property1));
            Assert.True(@group.GroupedProperties.Contains(property2));
        }
 public DashboardGroupNameDialog(PropertyGrid sourceGrid, DashboardPropertyGroup group, GroupDashboard dashboard)
 {
     m_sourceGrid = sourceGrid;
     m_group      = @group;
     m_dashboard  = dashboard;
     InitializeComponent();
     groupNameText.Text = group.PropertyName;
 }
 public DashboardGroupNameDialog(PropertyGrid sourceGrid, DashboardPropertyGroup group, GroupDashboard dashboard)
 {
     m_sourceGrid = sourceGrid;
     m_group = @group;
     m_dashboard = dashboard;
     InitializeComponent();
     groupNameText.Text = group.PropertyName;
 }
示例#4
0
        public void BothDashboardsSerialize()
        {
            var project = new MyProject();

            project.CreateWorld(typeof(MyTestingWorld));
            project.Network = new MyNetwork();
            var node = project.CreateNode <Node>();

            node.Name = "Foo";
            project.Network.AddChild(node);

            var dashboard = new Dashboard();

            foreach (PropertySetup propertySetup in GetPropertyExamples(project))
            {
                dashboard.Add(propertySetup.Target, propertySetup.PropertyName);
            }

            var groupDashboard = new GroupDashboard();

            groupDashboard.Properties.Add(new DashboardPropertyGroup("Group 1"));
            groupDashboard.Properties[0].Add(dashboard.Properties[0]);

            YAXSerializer serializer               = MyProject.GetSerializer <Dashboard>();
            YAXSerializer groupSerializer          = MyProject.GetSerializer <GroupDashboard>();
            string        serializedDashboard      = serializer.Serialize(dashboard);
            string        serializedGroupDashboard = groupSerializer.Serialize(groupDashboard);

            Dashboard deserializedDashboard = (Dashboard)serializer.Deserialize(serializedDashboard);

            deserializedDashboard.RestoreFromIds(project);
            project.Dashboard = deserializedDashboard;

            GroupDashboard deserializedGroupDashboard =
                (GroupDashboard)groupSerializer.Deserialize(serializedGroupDashboard);

            deserializedGroupDashboard.RestoreFromIds(project);
            project.GroupedDashboard = deserializedGroupDashboard;

            var compareLogic = new CompareLogic(new ComparisonConfig
            {
                MaxDifferences  = 20,
                MembersToIgnore = new List <string> {
                    "Proxy", "GenericProxy"
                }
            });

            ComparisonResult result = compareLogic.Compare(dashboard, deserializedDashboard);

            m_output.WriteLine(result.DifferencesString);

            Assert.True(result.AreEqual);

            result = compareLogic.Compare(groupDashboard, deserializedGroupDashboard);
            m_output.WriteLine(result.DifferencesString);

            Assert.True(result.AreEqual);
        }
 public GroupDashboardDTO(GroupDashboard source)
 {
     GroupDashboardID = source.GroupDashboardID;
     GroupID          = source.GroupID;
     OrganizationID   = source.OrganizationID;
     DashboardURL     = source.DashboardURL;
     DateCreated      = source.DateCreated;
     CreatedByUserID  = source.CreatedByUserID;
 }
示例#6
0
        public void LooksUpGroupByName()
        {
            var dashboard = new GroupDashboard();

            dashboard.Add();
            dashboard.Add();

            var group1 = dashboard.Properties[0];
            var group2 = dashboard.Properties[1];

            group1.PropertyName = "a";
            group2.PropertyName = "b";

            Assert.Equal(group1, dashboard.GetByName(group1.PropertyName));
            Assert.Equal(group2, dashboard.GetByName(group2.PropertyName));
        }
示例#7
0
        public void ChecksNameUniqueness()
        {
            var dashboard = new GroupDashboard();

            dashboard.Add();
            dashboard.Add();

            var group1 = dashboard.Properties[0];
            var group2 = dashboard.Properties[1];

            group1.PropertyName = "a";
            group2.PropertyName = "b";

            Assert.True(dashboard.CanChangeName(group1, "a"));
            Assert.False(dashboard.CanChangeName(group1, "b"));
        }
示例#8
0
        private void RestoreDashboard()
        {
            if (Dashboard == null)
            {
                Dashboard = new Dashboard.Dashboard();
            }

            if (GroupedDashboard == null)
            {
                GroupedDashboard = new GroupDashboard();
            }

            // The order is important - the normal dashboard properties must be set up
            // before they're added to groups.
            Dashboard.RestoreFromIds(this);
            GroupedDashboard.RestoreFromIds(this);
        }
示例#9
0
        public void GroupDashboardFiresUpdateEvents()
        {
            var flag = new AutoResetEvent(false);

            var groupDashboard = new GroupDashboard();

            groupDashboard.PropertyChanged += (sender, args) => flag.Set();

            groupDashboard.Add();

            if (!flag.WaitOne(1000))
            {
                Assert.True(false, "Event not fired");
            }

            groupDashboard.Remove(groupDashboard.Properties[0]);

            if (!flag.WaitOne(1000))
            {
                Assert.True(false, "Event not fired");
            }
        }
        /// <summary>
        /// Copy constructor used to populate the object
        /// </summary>
        /// <param name="source">The source Person entity for the DTO</param>
        /// <param name="contacts">The list of contacts for the Person</param>
        /// <param name="externalIDs">The list of external IDs for the person</param>
        /// <param name="groups">The list of Groups the person belongs too</param>
        public PersonDetailsDTO(Person source, IList <Contact> contacts, IList <ExternalID> externalIDs, IList <Group> groups, IList <Permission> permissions, IList <OrganizationGroup> organizationgroups, IList <int> trustedorganizationsIDs, GroupDashboard groupDashboard, List <GroupProperty> groupProperties, string externalUserID, string image, IList <UserCustomProperty> userCustomProperties, Address personAddress = null, string companyName = null, Address mailingAddress = null)
            : base(source, image)
        {
            Contacts = new List <ContactDTO>();
            if (contacts != null && contacts.Any())
            {
                foreach (var contact in contacts)
                {
                    Contacts.Add(new ContactDTO(contact));
                }
            }

            ExternalIDs = new List <ExternalIDDTO>();
            if (externalIDs != null && externalIDs.Any())
            {
                foreach (var externalID in externalIDs)
                {
                    ExternalIDs.Add(new ExternalIDDTO(externalID));
                }
            }

            UserCustomProperties = new List <UserCustomPropertyDTO>();
            if (userCustomProperties != null && userCustomProperties.Any())
            {
                foreach (var customProperty in userCustomProperties)
                {
                    UserCustomProperties.Add(new UserCustomPropertyDTO(customProperty));
                }
            }

            Groups = new List <GroupDTO>();
            if (groups != null && groups.Any())
            {
                foreach (var group in groups)
                {
                    var organizationGroup = organizationgroups.Where(x => x.GroupID == group.GroupID && x.OrganizationID == source.SourceOrganizationID);
                    var groupDisplayName  = organizationGroup.Count() > 0 ? organizationGroup.SingleOrDefault().DisplayName : null;
                    Groups.Add(new GroupDTO(group, groupDisplayName));
                }
            }

            Permissions = new List <PermissionDTO>();
            if (permissions != null && permissions.Any())
            {
                foreach (var permission in permissions)
                {
                    Permissions.Add(new PermissionDTO(permission));
                }
            }
            TrustedOrganizationsIDs = trustedorganizationsIDs;

            PersonAddress = new AddressDTO();
            if (personAddress != null)
            {
                PersonAddress = new AddressDTO(personAddress);
            }

            MailingAddress = new AddressDTO();
            if (mailingAddress != null)
            {
                MailingAddress = new AddressDTO(mailingAddress);
            }

            GroupDashboard = new GroupDashboardDTO();
            if (groupDashboard != null)
            {
                GroupDashboard = new GroupDashboardDTO(groupDashboard);
            }

            GroupProperties = new List <GroupPropertyDTO>();
            if (groupProperties != null && groupProperties.Any())
            {
                foreach (var groupProperty in groupProperties)
                {
                    GroupProperties.Add(new GroupPropertyDTO(groupProperty));
                }
            }

            ExternalUserID = externalUserID;
            CompanyName    = companyName;
        }
示例#11
0
 public void SetDashboards(Dashboard dashboard, GroupDashboard groupedDashboard)
 {
     DashboardViewModel        = new DashboardViewModel(dashboard);
     GroupedDashboardViewModel = new GroupedDashboardViewModel(groupedDashboard);
 }