Data Type in Groovy: align with `Spock` testing framework
This commit is contained in:
parent
d2eb17077f
commit
c333a3f359
|
@ -2,13 +2,18 @@ package com.baeldung.determinedatatype
|
||||||
|
|
||||||
class Person {
|
class Person {
|
||||||
|
|
||||||
private int ageAsInt
|
int ageAsInt
|
||||||
private Double ageAsDouble
|
Double ageAsDouble
|
||||||
private String ageAsString
|
String ageAsString
|
||||||
|
|
||||||
Person() {}
|
Person() {}
|
||||||
|
|
||||||
Person(int ageAsInt) { this.ageAsInt = ageAsInt }
|
Person(int ageAsInt) { this.ageAsInt = ageAsInt }
|
||||||
|
|
||||||
Person(Double ageAsDouble) { this.ageAsDouble = ageAsDouble }
|
Person(Double ageAsDouble) { this.ageAsDouble = ageAsDouble }
|
||||||
|
|
||||||
Person(String ageAsString) { this.ageAsString = ageAsString }
|
Person(String ageAsString) { this.ageAsString = ageAsString }
|
||||||
}
|
}
|
||||||
class Student extends Person {}
|
|
||||||
|
class Student extends Person {
|
||||||
|
}
|
||||||
|
|
|
@ -1,56 +1,68 @@
|
||||||
package com.baeldung.determinedatatype
|
package com.baeldung.determinedatatype
|
||||||
|
|
||||||
import org.junit.Assert
|
import spock.lang.Specification
|
||||||
import org.junit.Test
|
|
||||||
import com.baeldung.determinedatatype.Person
|
|
||||||
|
|
||||||
public class PersonTest {
|
class PersonTest extends Specification {
|
||||||
|
|
||||||
@Test
|
def "givenWhenParameterTypeIsIntegerThenReturnTrue"() {
|
||||||
public void givenWhenParameterTypeIsInteger_thenReturnTrue() {
|
given:
|
||||||
Person personObj = new Person(10)
|
Person personObj = new Person(10)
|
||||||
Assert.assertTrue(personObj.ageAsInt instanceof Integer)
|
|
||||||
|
expect:
|
||||||
|
personObj.ageAsInt.class == Integer
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
def "givenWhenParameterTypeIsDouble_thenReturnTrue"() {
|
||||||
public void givenWhenParameterTypeIsDouble_thenReturnTrue() {
|
given:
|
||||||
Person personObj = new Person(10.0)
|
Person personObj = new Person(10.0)
|
||||||
Assert.assertTrue((personObj.ageAsDouble).getClass() == Double)
|
|
||||||
|
expect:
|
||||||
|
personObj.ageAsDouble.class == Double
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
def "givenWhenParameterTypeIsString_thenReturnTrue"() {
|
||||||
public void givenWhenParameterTypeIsString_thenReturnTrue() {
|
given:
|
||||||
Person personObj = new Person("10 years")
|
Person personObj = new Person("10 years")
|
||||||
Assert.assertTrue(personObj.ageAsString.class == String)
|
|
||||||
|
expect:
|
||||||
|
personObj.ageAsString.class == String
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
def "givenClassName_WhenParameterIsInteger_thenReturnTrue"() {
|
||||||
public void givenClassName_WhenParameterIsInteger_thenReturnTrue() {
|
expect:
|
||||||
Assert.assertTrue(Person.class.getDeclaredField('ageAsInt').type == int.class)
|
Person.class.getDeclaredField('ageAsInt').type == int.class
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
def "givenWhenObjectIsInstanceOfType_thenReturnTrue"() {
|
||||||
public void givenWhenObjectIsInstanceOfType_thenReturnTrue() {
|
given:
|
||||||
Person personObj = new Person()
|
Person personObj = new Person()
|
||||||
Assert.assertTrue(personObj instanceof Person)
|
|
||||||
|
expect:
|
||||||
|
personObj.class == Person
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
def "givenWhenInstanceIsOfSubtype_thenReturnTrue"() {
|
||||||
public void givenWhenInstanceIsOfSubtype_thenReturnTrue() {
|
given:
|
||||||
Student studentObj = new Student()
|
Student studentObj = new Student()
|
||||||
Assert.assertTrue(studentObj in Person)
|
|
||||||
|
expect:
|
||||||
|
studentObj.class.superclass == Person
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
def "givenGroovyList_WhenFindClassName_thenReturnTrue"() {
|
||||||
public void givenGroovyList_WhenFindClassName_thenReturnTrue() {
|
given:
|
||||||
def ageList = ['ageAsString', 'ageAsDouble', 10]
|
def ageList = ['ageAsString', 'ageAsDouble', 10]
|
||||||
Assert.assertTrue(ageList.class == ArrayList)
|
|
||||||
Assert.assertTrue(ageList.getClass() == ArrayList)
|
expect:
|
||||||
|
ageList.class == ArrayList
|
||||||
|
ageList.getClass() == ArrayList
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
def "givenGroovyMap_WhenFindClassName_thenReturnTrue"() {
|
||||||
public void givenGrooyMap_WhenFindClassName_thenReturnTrue() {
|
given:
|
||||||
def ageMap = [ageAsString: '10 years', ageAsDouble: 10.0]
|
def ageMap = [ageAsString: '10 years', ageAsDouble: 10.0]
|
||||||
Assert.assertFalse(ageMap.class == LinkedHashMap)
|
|
||||||
|
expect:
|
||||||
|
ageMap.getClass() == LinkedHashMap
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue