public void QueryCubeCaseOne() { var valueUpdate1 = 4; var valueUpdate2 = 23; Models.Cube cube = new Models.Cube(); cube.GenerateCube(4); var coordenate1 = new ValueObjects.Coordenate() { X = 2, Y = 2, Z = 2 }; cube.Update(coordenate1, valueUpdate1); var coordenateQuery11 = new ValueObjects.Coordenate() { X = 1, Y = 1, Z = 1 }; var coordenateQuery12 = new ValueObjects.Coordenate() { X = 3, Y = 3, Z = 3 }; var valueResult1 = cube.Query(coordenateQuery11, coordenateQuery12); Assert.IsTrue(valueResult1 == valueUpdate1); var coordenate2 = new ValueObjects.Coordenate() { X = 1, Y = 1, Z = 1 }; cube.Update(coordenate2, valueUpdate2); var coordenateQuery21 = new ValueObjects.Coordenate() { X = 2, Y = 2, Z = 2 }; var coordenateQuery22 = new ValueObjects.Coordenate() { X = 4, Y = 4, Z = 4 }; var valueResult2 = cube.Query(coordenateQuery21, coordenateQuery22); Assert.IsTrue(valueResult2 == valueUpdate1); var valueResult3 = cube.Query(coordenateQuery11, coordenateQuery12); Assert.IsTrue(valueResult3 == valueUpdate2 + valueUpdate1); }
public void UpdateCube() { var valueUpdate = 4; Models.Cube cube = new Models.Cube(); cube.GenerateCube(2); var coordenate = new ValueObjects.Coordenate() { X = 2, Y = 2, Z = 2 }; cube.Update(coordenate, valueUpdate); if (cube.Nodes.TryGetValue(coordenate, out long value)) { Assert.IsTrue(value == valueUpdate); } else { Assert.Fail(); } }
public void QueryCubeCaseTwo() { var valueUpdate = 1; Models.Cube cube = new Models.Cube(); cube.GenerateCube(2); var coordenate1 = new ValueObjects.Coordenate() { X = 2, Y = 2, Z = 2 }; cube.Update(coordenate1, valueUpdate); var coordenateQuery11 = new ValueObjects.Coordenate() { X = 1, Y = 1, Z = 1 }; var coordenateQuery12 = new ValueObjects.Coordenate() { X = 1, Y = 1, Z = 1 }; var valueResult1 = cube.Query(coordenateQuery11, coordenateQuery12); Assert.IsTrue(valueResult1 == 0); var coordenateQuery21 = new ValueObjects.Coordenate() { X = 1, Y = 1, Z = 1 }; var coordenateQuery22 = new ValueObjects.Coordenate() { X = 2, Y = 2, Z = 2 }; var valueResult2 = cube.Query(coordenateQuery21, coordenateQuery22); Assert.IsTrue(valueResult2 == valueUpdate); var valueResult3 = cube.Query(coordenateQuery22, coordenateQuery22); Assert.IsTrue(valueResult3 == valueUpdate); }