Exemplo n.º 1
0
        public void RunCustomCypherQueryWithModelBinding()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user1 = new User {
                    Email = "*****@*****.**", FirstName = "FakeFirstName1", LastName = "FakeLastName2"
                };
                var user2 = new User {
                    Email = "*****@*****.**", FirstName = "FakeFirstName2", LastName = "FakeLastName2"
                };

                client.Add(user1);
                client.Add(user2);

                string cypherQuery = @"MATCH (n:User) RETURN n";

                IList <User> result = client.RunCustomQuery <User>(
                    query: cypherQuery
                    );

                result.Should().NotBeNullOrEmpty();
            }
        }
Exemplo n.º 2
0
        public void CreateRelationshipWithProperties()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user1 = client.Add(new User {
                    Email = "FakeEmail1", FirstName = "FakeFirstName1", LastName = "FakeLastName1"
                });
                var user2 = client.Add(new User {
                    Email = "FakeEmail2", FirstName = "FakeFirstName2", LastName = "FakeLastName2"
                });

                var isCreated1 = client.CreateRelationship(
                    user1.Uuid,
                    user2.Uuid,
                    new RelationshipAttribute
                {
                    Direction = DIRECTION.INCOMING,
                    Name      = "BROTHER"
                },
                    new Dictionary <string, object>()
                {
                    { "CreatedAt", DateTime.UtcNow },
                    { "Kinship_Level", 1 },
                    { "Name", "FakeName" }
                }
                    );

                isCreated1.Should().BeTrue();
            }
        }
Exemplo n.º 3
0
        public void MatchRelationship()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                User user1 = client.Add(new User {
                    Email = "FakeEmail1", FirstName = "FakeFirstName1", LastName = "FakeLastName1"
                });
                User user2 = client.Add(new User {
                    Email = "FakeEmail2", FirstName = "FakeFirstName2", LastName = "FakeLastName2"
                });

                var relationship = new RelationshipAttribute
                {
                    Direction = DIRECTION.INCOMING,
                    Name      = "BROTHER"
                };

                bool isCreatedRelationship = client.CreateRelationship(
                    user1.Uuid,
                    user2.Uuid,
                    relationship
                    );

                bool isUpdatedRelatiionship = client.MergeRelationship(
                    uuidFrom: user1.Uuid,
                    uuidTo: user2.Uuid,
                    relationshipAttribute: relationship
                    );

                isCreatedRelationship.Should().BeTrue();
                isUpdatedRelatiionship.Should().BeTrue();
            }
        }
Exemplo n.º 4
0
        public void DropRelationship()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user1 = client.Add(new User {
                    Email = "FakeEmail1", FirstName = "FakeFirstName1", LastName = "FakeLastName1"
                });
                var user2 = client.Add(new User {
                    Email = "FakeEmail2", FirstName = "FakeFirstName2", LastName = "FakeLastName2"
                });

                var relationship = new RelationshipAttribute
                {
                    Direction = DIRECTION.INCOMING,
                    Name      = "BROTHER"
                };

                client.CreateRelationship(
                    user1.Uuid,
                    user2.Uuid,
                    relationship);

                bool result = client.DropRelationshipBetweenTwoNodes(
                    user1.Uuid,
                    user2.Uuid,
                    relationship);

                result.Should().BeTrue();
            }
        }
Exemplo n.º 5
0
        public void CreateMultipleRelationship()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user1 = client.Add(new User {
                    Email = "FakeEmail1", FirstName = "FakeFirstName1", LastName = "FakeLastName1"
                });
                var user2 = client.Add(new User {
                    Email = "FakeEmail2", FirstName = "FakeFirstName2", LastName = "FakeLastName2"
                });

                var isCreated1 = client.CreateRelationship(
                    user1.Uuid,
                    user2.Uuid,
                    new RelationshipAttribute
                {
                    Direction = DIRECTION.INCOMING,
                    Name      = "BROTHER"
                });

                var isCreated2 = client.CreateRelationship(
                    user1.Uuid,
                    user2.Uuid,
                    new RelationshipAttribute
                {
                    Direction = DIRECTION.INCOMING,
                    Name      = "FAMILY"
                });

                isCreated1.Should().BeTrue();
                isCreated2.Should().BeTrue();
            }
        }
Exemplo n.º 6
0
        public void MergeOnUpdateNodes()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user1 = new User()
                {
                    Email = "FakeEmail1", FirstName = "FakeFirstName1", LastName = "FakeLastName1"
                };
                var user2 = new User()
                {
                    Email = "FakeEmail2", FirstName = "FakeFirstName2", LastName = "FakeLastName2"
                };

                var entity = client.Add(user1);

                User result = client.Merge(
                    entityOnCreate: user1,
                    entityOnUpdate: user2,
                    $"Uuid:\"{entity.Uuid}\""
                    );

                result.Should().NotBeNull();
                result.Uuid.Should().Be(entity.Uuid);
            }
        }
Exemplo n.º 7
0
        public void DropNodesByProperties()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var userList = new List <User>();

                for (int i = 0; i < 10; i++)
                {
                    userList.Add(new User
                    {
                        Email     = "*****@*****.**",
                        FirstName = $"FakeFirstName{i}",
                        LastName  = $"FakeLastName{i}"
                    });
                }

                var properties = new Dictionary <string, object>()
                {
                    { nameof(User.Email), "*****@*****.**" },
                };

                userList.ForEach((user) => client.Add(user));

                int nodesDeleted = client.DropByProperties <User>(properties);

                nodesDeleted.Should().Be(10);
            }
        }
Exemplo n.º 8
0
        public void GetAllNodes()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var userList = new List <User>();

                for (int i = 0; i < 10; i++)
                {
                    userList.Add(new User
                    {
                        Email     = "*****@*****.**",
                        FirstName = $"FakeFirstName{i}",
                        LastName  = $"FakeLastName{i}"
                    });
                }

                userList.ForEach((user) => client.Add(user));

                IList <User> entities = client.GetAll <User>();

                entities.Should().NotBeNullOrEmpty();
            }
        }
Exemplo n.º 9
0
        public void DropNodeById()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user = client.Add(new User {
                    Email = "*****@*****.**", FirstName = "Oktay", LastName = "Kýr"
                });

                bool result = client.Drop <User>(user.Uuid);

                result.Should().BeTrue();
            }
        }
Exemplo n.º 10
0
        public void GetNodesBySingleProperty()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user = client.Add(new User {
                    Email = "*****@*****.**", FirstName = "Oktay", LastName = "Kýr"
                });

                IList <User> entities = client.GetByProperty <User>(nameof(User.Email), user.Email);

                entities.Should().NotBeNullOrEmpty();
            }
        }
Exemplo n.º 11
0
        public void CreateLabel()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user = client.Add(new User {
                    Email = "*****@*****.**", FirstName = "Oktay", LastName = "Kýr"
                });

                bool result = client.AddLabel(user.Uuid, "Father");

                result.Should().BeTrue();
            }
        }
Exemplo n.º 12
0
        public void CreateNode()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user = new User {
                    Email = "*****@*****.**", FirstName = "Oktay", LastName = "Kýr"
                };

                client.Add(user);

                client.IsConnected.Should().BeTrue();
            }
        }
Exemplo n.º 13
0
        public void GetNodeByUuid()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user = client.Add(new User {
                    Email = "*****@*****.**", FirstName = "Oktay", LastName = "Kýr"
                });

                User entity = client.GetByUuidWithRelatedNodes <User>(user.Uuid);

                entity.Should().NotBeNull();
                user.Should().BeEquivalentTo(entity);
            }
        }
Exemplo n.º 14
0
        public void UpdateNodeAndFetchResult()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user = client.Add(new User {
                    Email = "*****@*****.**", FirstName = "Oktay", LastName = "Kýr"
                });

                user.FirstName = "UpdatedName";

                var updatedEntity = client.Update(user, user.Uuid, fetchResult: true);

                updatedEntity.Should().NotBeNull();
            }
        }
Exemplo n.º 15
0
        public void DeleteNode()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user = client.Add(new User {
                    Email = "*****@*****.**", FirstName = "Oktay", LastName = "Kýr"
                });

                var deletedEntity = client.Delete <User>(user.Uuid);

                var entity = client.GetByUuidWithRelatedNodes <User>(user.Uuid);

                deletedEntity.IsDeleted.Should().BeTrue();
                entity.Should().BeNull();
            }
        }
Exemplo n.º 16
0
        public void GetNodesByMultipleProperties()
        {
            using (var client = new NeoClient(URL, USER, PASSWORD, CONFIG))
            {
                client.Connect();

                var user = client.Add(new User {
                    Email = "*****@*****.**", FirstName = "Oktay", LastName = "Kýr"
                });

                var properties = new Dictionary <string, object>()
                {
                    { nameof(User.Email), user.Email },
                    { nameof(User.FirstName), user.FirstName },
                    { nameof(User.LastName), user.LastName }
                };

                IList <User> entities = client.GetByProperties <User>(properties);

                entities.Should().NotBeNullOrEmpty();
            }
        }