fork(3) download
  1. def xmlString = """<root>
  2. <ns1:LimitAndUsageDetailsList xmlns:ns1="test">
  3. <ns2:LimitAndUsageDetails xmlns:ns2="http://www.">
  4. <ns2:LimitCode>022</ns2:LimitCode>
  5. <ns2:LimitCodeDesc>APPLIANCES</ns2:LimitCodeDesc>
  6. <ns2:LimitType>N</ns2:LimitType>
  7. <ns2:LimitBenefit>500.0</ns2:LimitBenefit>
  8. <ns2:LimitBenefitUsed>0.0</ns2:LimitBenefitUsed>
  9. <ns2:LimitBenefitAvailable>500.0</ns2:LimitBenefitAvailable>
  10. <ns2:LimitBenefitService>0</ns2:LimitBenefitService>
  11. <ns2:LimitBenefitUsedService>0</ns2:LimitBenefitUsedService>
  12. <ns2:LimitBenefitAvailableService>0</ns2:LimitBenefitAvailableService>
  13. <ns2:QualifyingPeriodIndicator/>
  14. <ns2:ClaimIndicator>B</ns2:ClaimIndicator>
  15. <ns2:LimitPeriod>1</ns2:LimitPeriod>
  16. <ns2:LimitPeriodType>C</ns2:LimitPeriodType>
  17. <ns2:LimitScale>INDIV</ns2:LimitScale>
  18. </ns2:LimitAndUsageDetails>
  19. <ns2:LimitAndUsageDetails xmlns:ns2="http://www.">
  20. <ns2:LimitCode>023</ns2:LimitCode>
  21. <ns2:LimitCodeDesc>NEBULISER</ns2:LimitCodeDesc>
  22. <ns2:LimitType>N</ns2:LimitType>
  23. <ns2:LimitBenefit>0.0</ns2:LimitBenefit>
  24. <ns2:LimitBenefitUsed>0.0</ns2:LimitBenefitUsed>
  25. <ns2:LimitBenefitAvailable>0.0</ns2:LimitBenefitAvailable>
  26. <ns2:LimitBenefitService>1</ns2:LimitBenefitService>
  27. <ns2:LimitBenefitUsedService>0</ns2:LimitBenefitUsedService>
  28. <ns2:LimitBenefitAvailableService>1</ns2:LimitBenefitAvailableService>
  29. <ns2:QualifyingPeriodIndicator/>
  30. <ns2:ClaimIndicator>B</ns2:ClaimIndicator>
  31. <ns2:LimitPeriod>3</ns2:LimitPeriod>
  32. <ns2:LimitPeriodType>R</ns2:LimitPeriodType>
  33. <ns2:LimitScale>INDIV</ns2:LimitScale>
  34. </ns2:LimitAndUsageDetails>
  35. </ns1:LimitAndUsageDetailsList>
  36. </root>"""
  37.  
  38. def expected = [
  39. [ LimitCode: '022', LimitType: 'N', LimitPeriod: 1, LimitPeriodType: 'C'],
  40. [ LimitCode: '023', LimitType: 'N', LimitPeriod: 3, LimitPeriodType: 'R']
  41. ]
  42.  
  43.  
  44. def xml = new XmlSlurper().parseText(xmlString)
  45. def actual = xml.'**'.findAll{it.name() == 'LimitAndUsageDetails'}.collect{ [
  46. LimitCode : it.LimitCode.text(),
  47. LimitType : it.LimitType.text(),
  48. LimitPeriod : it.LimitPeriod.text() as Integer,
  49. LimitPeriodType : it.LimitPeriodType.text()
  50. ]
  51. }.sort {it.LimitCode}
  52. assert expected == actual
Success #stdin #stdout 1.01s 4456448KB
stdin
Standard input is empty
stdout
Standard output is empty