Skip to content

Criteria or toEquals fail if contains regex [DATAMONGO-2559] #3414

Closed
@spring-projects-issues

Description

@spring-projects-issues

Tera opened DATAMONGO-2559 and commented

Hi

I've found that Criteria object fails equality check if multiple regex criteria are chained into an "orOperator"

 

Here the test i wrote to verify (written in kotlin)

 

class TestCriteriaEquality {
    
    @Test
    fun testSingleRegExEquality() {
        val expected = Criteria("foo").regex("value", "i")
        val actual = Criteria("foo").regex("value", "i")               assertEquals(expected, actual)
    }

    @Test
    fun checkCriteriaOrRegExEquality() {
        val expected = Criteria("a").orOperator(
                Criteria("foo").regex("value", "i"),
                Criteria("bar").regex("value")
        )        val actual = Criteria("a").orOperator(
                Criteria("foo").regex("value", "i"),
                Criteria("bar").regex("value")
        )        Assert.assertEquals(expected, actual)
    }    

    @Test
    fun checkCriteriaOrIsEqualToEquality() {
        val expected = Criteria("a").orOperator(
                Criteria("foo").isEqualTo("value"),
                Criteria("bar").isEqualTo("value")
        )        val actual = Criteria("a").orOperator(
                Criteria("foo").isEqualTo("value"),
                Criteria("bar").isEqualTo("value")
        )        Assert.assertEquals(expected, actual)
    }
}

 

 


Affects: 2.2.7 (Moore SR7)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions