### Question:
UniformVertex extends VertexImpl<DoubleTensor, DoubleVertex> implements DoubleVertex, Differentiable, ProbabilisticDouble, SamplableWithManyScalars<DoubleTensor>, LogProbGraphSupplier { @Override public double logProb(DoubleTensor value) { return Uniform.withParameters(xMin.getValue(), xMax.getValue()).logProb(value).sumNumber(); } UniformVertex(@LoadShape long[] tensorShape,
                         @LoadVertexParam(X_MIN_NAME) Vertex<DoubleTensor, ?> xMin,
                         @LoadVertexParam(X_MAX_NAME) Vertex<DoubleTensor, ?> xMax); @ExportVertexToPythonBindings  UniformVertex(Vertex<DoubleTensor, ?> xMin, Vertex<DoubleTensor, ?> xMax);  UniformVertex(Vertex<DoubleTensor, ?> xMin, double xMax);  UniformVertex(double xMin, Vertex<DoubleTensor, ?> xMax);  UniformVertex(double xMin, double xMax);  UniformVertex(long[] tensorShape, Vertex<DoubleTensor, ?> xMin, double xMax);  UniformVertex(long[] tensorShape, double xMin, Vertex<DoubleTensor, ?> xMax);  UniformVertex(long[] tensorShape, double xMin, double xMax); @SaveVertexParam(X_MIN_NAME) DoubleVertex getXMin(); @SaveVertexParam(X_MAX_NAME) DoubleVertex getXMax(); @Override double logProb(DoubleTensor value); @Override LogProbGraph logProbGraph(); @Override Map<Vertex, DoubleTensor> dLogProb(DoubleTensor value, Set<? extends Vertex> withRespectTo); @Override DoubleTensor sampleWithShape(long[] shape, KeanuRandom random);  }### Answer:
@Test public void logProbUpperBoundIsNegativeInfinity() { UniformVertex testUniformVertex = new UniformVertex(new long[]{1, N}, lowerBound, upperBound); assertEquals(testUniformVertex.logProb(DoubleTensor.scalar(upperBound)), Double.NEGATIVE_INFINITY, 1e-6); }
@Test public void logProbLowerBoundIsNotNegativeInfinity() { UniformVertex testUniformVertex = new UniformVertex(new long[]{1, N}, lowerBound, upperBound); assertNotEquals(testUniformVertex.logProb(DoubleTensor.scalar(lowerBound)), Double.NEGATIVE_INFINITY, 1e-6); }