@Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (!(o instanceof BatchInstanceRedoData)) {
            return false;
        }
        if (!super.equals(o)) {
            return false;
        }
        BatchInstanceRedoData redoData = (BatchInstanceRedoData) o;
        return Objects.equals(instances, redoData.instances);
    }
@Test
    @SuppressWarnings("all")
    void testEquals() {
        BatchInstanceRedoData redoData1 = new BatchInstanceRedoData("a", "b");
        redoData1.setInstances(Collections.singletonList(new Instance()));
        BatchInstanceRedoData redoData2 = new BatchInstanceRedoData("a", "b");
        redoData2.setInstances(Collections.singletonList(new Instance()));
        assertEquals(redoData1, redoData1);
        assertEquals(redoData1, redoData2);
        redoData2.getInstances().get(0).setIp("1.1.1.1");
        assertNotEquals(null, redoData1);
        assertNotEquals(redoData1, redoData2);
        assertNotEquals(redoData1, redoData2);
        BatchInstanceRedoData redoData3 = new BatchInstanceRedoData("c", "b");
        assertNotEquals(redoData1, redoData3);
    }