### Question:
UniformIntVertex extends VertexImpl<IntegerTensor, IntegerVertex> implements IntegerVertex, ProbabilisticInteger, SamplableWithManyScalars<IntegerTensor>, LogProbGraphSupplier { @Override public double logProb(IntegerTensor value) { return UniformInt.withParameters(min.getValue(), max.getValue()).logProb(value).sumNumber(); } UniformIntVertex(@LoadShape long[] shape,
                            @LoadVertexParam(MIN_NAME) Vertex<IntegerTensor, ?> min,
                            @LoadVertexParam(MAX_NAME) Vertex<IntegerTensor, ?> max);  UniformIntVertex(long[] shape, int min, int max);  UniformIntVertex(long[] shape, IntegerTensor min, IntegerTensor max);  UniformIntVertex(long[] shape, Vertex<IntegerTensor, ?> min, int max);  UniformIntVertex(long[] shape, int min, Vertex<IntegerTensor, ?> max); @ExportVertexToPythonBindings  UniformIntVertex(Vertex<IntegerTensor, ?> min, Vertex<IntegerTensor, ?> max);  UniformIntVertex(Vertex<IntegerTensor, ?> min, int max);  UniformIntVertex(int min, Vertex<IntegerTensor, ?> max);  UniformIntVertex(int min, int max); @SaveVertexParam(MIN_NAME) IntegerVertex getMin(); @SaveVertexParam(MAX_NAME) IntegerVertex getMax(); @Override double logProb(IntegerTensor value); @Override LogProbGraph logProbGraph(); @Override Map<Vertex, DoubleTensor> dLogProb(IntegerTensor value, Set<? extends Vertex> withRespectTo); @Override IntegerTensor sampleWithShape(long[] shape, KeanuRandom random);  }### Answer:
@Test public void logProbUpperBoundIsNegativeInfinity() { UniformIntVertex testUniformVertex = new UniformIntVertex(new long[]{1, N}, lowerBound, upperBound); assertEquals(testUniformVertex.logProb(IntegerTensor.scalar(upperBound)), Double.NEGATIVE_INFINITY, 1e-6); }
@Test public void logProbLowerBoundIsNotNegativeInfinity() { UniformIntVertex testUniformVertex = new UniformIntVertex(new long[]{1, N}, lowerBound, upperBound); assertNotEquals(testUniformVertex.logProb(IntegerTensor.scalar(lowerBound)), Double.NEGATIVE_INFINITY, 1e-6); }