Skip to content

Commit 22ea595

Browse files
Remove useless System.Numerics.Vectors stuff
1 parent 91ca216 commit 22ea595

File tree

1 file changed

+0
-75
lines changed

1 file changed

+0
-75
lines changed

Neo4j.Driver/Neo4j.Vector.Examples/VectorExamples.cs

Lines changed: 0 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
namespace Neo4j.Vector.Examples;
1919

2020
using System;
21-
using System.Linq;
2221
using Xunit;
2322
using FluentAssertions;
2423
using Driver;
@@ -99,37 +98,6 @@ await _driver!
9998
longVectorRead.Should().BeEquivalentTo(record.LongVector);
10099
}
101100

102-
[Fact]
103-
public async Task ShouldBeEasyToUseWithDotNetVector()
104-
{
105-
// a dot net native vector
106-
var dotNetVector =
107-
new System.Numerics.Vector<double>([0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0]);
108-
109-
// Convert System.Numerics.Vector<double> to Neo4j vector
110-
var elements = new double[System.Numerics.Vector<double>.Count];
111-
dotNetVector.CopyTo(elements);
112-
var neo4jVector = new Vector<double>(elements);
113-
114-
// Write node with vector
115-
await _driver!
116-
.ExecutableQuery("CREATE (n:ShouldBeEasyToUseWithDotNetVector {vector: $vector}) RETURN n")
117-
.WithParameters(new { vector = neo4jVector })
118-
.ExecuteAsync();
119-
120-
// Read node with vector
121-
var result = await _driver
122-
.ExecutableQuery("MATCH (n:ShouldBeEasyToUseWithDotNetVector) RETURN n")
123-
.ExecuteAsync();
124-
125-
var record = result.Result[0];
126-
var node = (INode)record["n"];
127-
128-
node.Properties.Should().ContainKey("vector");
129-
var retrievedVector = (Vector<double>)node.Properties["vector"]!;
130-
retrievedVector.Values.Should().Equal(elements);
131-
}
132-
133101
public class ClassForMappingWithVector(Vector<double> doubleVector, Vector<long> longVector)
134102
{
135103
public Vector<double> DoubleVector { get; } = doubleVector;
@@ -165,47 +133,4 @@ await _driver!
165133
record.LongVector.Should().BeEquivalentTo(longVector);
166134
}
167135

168-
[Fact]
169-
public async Task ShouldWorkWithObjectMappingAndDotNetVectors()
170-
{
171-
var vectorSize = System.Numerics.Vector<double>.Count;
172-
var doubleVectorElements = Enumerable.Range(0, vectorSize).Select(i => (double)i).ToArray();
173-
var doubleVector = new Vector<double>(doubleVectorElements);
174-
175-
// write node with vectors
176-
await _driver!
177-
.ExecutableQuery("CREATE (n:ShouldWorkWithObjectMappingAndDotNetVectors $record) RETURN n")
178-
.WithParameters(new { record = new { doubleVector } })
179-
.ExecuteAsync();
180-
181-
// important - we set up a type conversion from a neo4j vector to a System.Numerics.Vector
182-
RecordObjectMapping.RegisterTypeConverter((Vector<double> v) => new System.Numerics.Vector<double>(v.Values));
183-
184-
// read node with vector
185-
var result = await _driver
186-
.ExecutableQuery(
187-
"""
188-
MATCH (n:ShouldWorkWithObjectMappingAndDotNetVectors)
189-
RETURN n.doubleVector AS doubleVector
190-
""")
191-
.ExecuteAsync()
192-
.AsObjectsAsync<ClassForMappingWithDotNetVector>();
193-
194-
var record = result[0];
195-
196-
for (var i = 0; i < vectorSize; i++)
197-
{
198-
record.DoubleVector[i].Should().BeApproximately(doubleVectorElements[i], 0.001);
199-
}
200-
}
201-
202-
public class ClassForMappingWithDotNetVector
203-
{
204-
public ClassForMappingWithDotNetVector(System.Numerics.Vector<double> doubleVector)
205-
{
206-
DoubleVector = doubleVector;
207-
}
208-
209-
public System.Numerics.Vector<double> DoubleVector { get; }
210-
}
211136
}

0 commit comments

Comments
 (0)