package Ġuk . n hs . n hs x . high risk post codes upload Ċ Ċ import Ġorg . assertj . core . api . Assertions . assertThat Ċ import Ġorg . assertj . core . api . Assertions . assertThat Thrown By Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġuk . n hs . n hs x . core . exceptions . ApiResponse Exception Ċ Ċ class ĠR is ky Post Codes Mapper Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġmapper Ġ= ĠR is ky Post Codes Mapper ( R is ky PostCode TestData . tier Metadata ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` transforms Ġdata Ġcorrectly Ġboth Ġversions `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 2 " Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 2 " Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost District s , Ġlocal Author ities ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġmapper . map OrThrow ( request ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( result ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky Post Codes Result ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky Post Codes V 1 ( map Of (" CODE 1 " Ġto Ġ" H ", Ġ" CODE 2 " Ġto Ġ" M ", Ġ" CODE 3 " Ġto Ġ" L ")), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky Post Codes V 2 ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmap Of (" CODE 1 " Ġto Ġ" EN . Tier 3 ", Ġ" CODE 2 " Ġto Ġ" WA . Tier 2 ", Ġ" CODE 3 " Ġto Ġ" EN . Tier 1 "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmap Of (" A 1 " Ġto Ġ" EN . Tier 3 ", Ġ" A 2 " Ġto Ġ" WA . Tier 2 ", Ġ" A 3 " Ġto Ġ" EN . Tier 1 "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky PostCode TestData . tier Metadata ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` transforms Ġhandling Ġempty Ġcollections `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( empty Map (), Ġempty Map ()) ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġmapper . map OrThrow ( request ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( result ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky Post Codes Result ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky Post Codes V 1 ( empty Map ()), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky Post Codes V 2 ( empty Map (), Ġempty Map (), ĠR is ky PostCode TestData . tier Metadata ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` transforms Ġhandling Ġpost Ġdistrict Ġindicators Ġand Ġno Ġlocal Ġauthor ities Ġindicators `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 2 " Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( post District s , Ġempty Map ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġmapper . map OrThrow ( request ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( result ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky Post Codes Result ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky Post Codes V 1 ( map Of (" CODE 1 " Ġto Ġ" H ", Ġ" CODE 2 " Ġto Ġ" M ", Ġ" CODE 3 " Ġto Ġ" L ")), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky Post Codes V 2 ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmap Of (" CODE 1 " Ġto Ġ" EN . Tier 3 ", Ġ" CODE 2 " Ġto Ġ" WA . Tier 2 ", Ġ" CODE 3 " Ġto Ġ" EN . Tier 1 "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġempty Map (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky PostCode TestData . tier Metadata ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` transforms Ġhandling Ġempty Ġpost Ġdistrict Ġindicators Ġand Ġlocal Ġauthor ities Ġindicators `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 2 " Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( empty Map (), Ġlocal Author ities ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġmapper . map OrThrow ( request ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( result ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky Post Codes Result ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky Post Codes V 1 ( empty Map ()), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky Post Codes V 2 ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġempty Map (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmap Of (" A 1 " Ġto Ġ" EN . Tier 3 ", Ġ" A 2 " Ġto Ġ" WA . Tier 2 ", Ġ" A 3 " Ġto Ġ" EN . Tier 1 "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR is ky PostCode TestData . tier Metadata ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` throws Ġif Ġpost Ġdistrict s Ġcontains Ġan Ġempty Ġrisk `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators ("", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 2 " Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 2 " Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( post District s , Ġlocal Author ities ) ĊĊĠĠĠĠĠĠĠ ĠassertThat Thrown By Ġ{ Ġmapper . map OrThrow ( request ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isInstanceOf ( ApiResponse Exception :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Message (" validation Ġerror : ĠInvalid Ġrisk Ġindicator : Ġ Ġfor Ġpost Ġdistrict : ĠCODE 1 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` throws Ġif Ġpost Ġdistrict s Ġcontains Ġnull Ġrisk `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 2 " Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators ( null , Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 2 " Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( post District s , Ġlocal Author ities ) ĊĊĠĠĠĠĠĠĠ ĠassertThat Thrown By Ġ{ Ġmapper . map OrThrow ( request ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isInstanceOf ( ApiResponse Exception :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Message (" validation Ġerror : ĠInvalid Ġrisk Ġindicator : Ġnull Ġfor Ġpost Ġdistrict : ĠCODE 3 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` throws Ġif Ġpost Ġdistrict s Ġcontains Ġan Ġempty Ġtier `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 2 " Ġto ĠPost District Indicators (" M ", Ġ""), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 2 " Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( post District s , Ġlocal Author ities ) ĊĊĠĠĠĠĠĠĠ ĠassertThat Thrown By Ġ{ Ġmapper . map OrThrow ( request ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isInstanceOf ( ApiResponse Exception :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Message (" validation Ġerror : ĠInvalid Ġtier Ġindicator : Ġ Ġfor Ġpost Ġdistrict : ĠCODE 2 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` throws Ġif Ġpost Ġdistrict s Ġcontains Ġa Ġnull Ġtier `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 2 " Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġnull ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 2 " Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( post District s , Ġlocal Author ities ) ĊĊĠĠĠĠĠĠĠ ĠassertThat Thrown By Ġ{ Ġmapper . map OrThrow ( request ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isInstanceOf ( ApiResponse Exception :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Message (" validation Ġerror : ĠInvalid Ġtier Ġindicator : Ġnull Ġfor Ġpost Ġdistrict : ĠCODE 3 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` throws Ġif Ġpost Ġdistrict s Ġcontains Ġnull Ġkey `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 2 " Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( post District s , Ġlocal Author ities ) ĊĊĠĠĠĠĠĠĠ ĠassertThat Thrown By Ġ{ Ġmapper . map OrThrow ( request ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isInstanceOf ( ApiResponse Exception :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Message (" validation Ġerror : ĠInvalid Ġpost Ġdistrict Ġ- Ġno Ġvalue ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` throws Ġif Ġpost Ġdistrict s Ġcontains Ġempty Ġkey `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ" Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 2 " Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( post District s , Ġlocal Author ities ) ĊĊĠĠĠĠĠĠĠ ĠassertThat Thrown By Ġ{ Ġmapper . map OrThrow ( request ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isInstanceOf ( ApiResponse Exception :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Message (" validation Ġerror : ĠInvalid Ġpost Ġdistrict Ġ- Ġno Ġvalue ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` throws Ġif Ġpost Ġdistrict Ġlarger Ġthan Ġ 2 0 Ġcharacters `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 " Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 2 " Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( post District s , Ġlocal Author ities ) ĊĊĠĠĠĠĠĠĠ ĠassertThat Thrown By Ġ{ Ġmapper . map OrThrow ( request ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isInstanceOf ( ApiResponse Exception :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Message (" validation Ġerror : ĠInvalid Ġpost Ġdistrict Ġlonger Ġthan Ġ 2 0 Ġcharacters : Ġ 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` throws Ġif Ġlocal Ġauthor ities Ġcontains Ġan Ġempty Ġkey `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 2 " Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Ġ" Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( post District s , Ġlocal Author ities ) ĊĊĠĠĠĠĠĠĠ ĠassertThat Thrown By Ġ{ Ġmapper . map OrThrow ( request ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isInstanceOf ( ApiResponse Exception :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Message (" validation Ġerror : ĠInvalid Ġlocal Ġauthority Ġ- Ġno Ġvalue ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` throws Ġif Ġlocal Ġauthor ities Ġcontains Ġa Ġnull Ġkey `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 2 " Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( post District s , Ġlocal Author ities ) ĊĊĠĠĠĠĠĠĠ ĠassertThat Thrown By Ġ{ Ġmapper . map OrThrow ( request ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isInstanceOf ( ApiResponse Exception :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Message (" validation Ġerror : ĠInvalid Ġlocal Ġauthority Ġ- Ġno Ġvalue ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` throws Ġif Ġlocal Ġauthor ities Ġcontains Ġan Ġempty Ġtier `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 2 " Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 2 " Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" Ġ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( post District s , Ġlocal Author ities ) ĊĊĠĠĠĠĠĠĠ ĠassertThat Thrown By Ġ{ Ġmapper . map OrThrow ( request ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isInstanceOf ( ApiResponse Exception :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Message (" validation Ġerror : ĠInvalid Ġtier Ġindicator : ĠĠ Ġfor Ġlocal Ġauthority : ĠA 3 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` throws Ġif Ġlocal Ġauthor ities Ġcontains Ġa Ġnull Ġtier `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 2 " Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 2 " Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators ( null ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( post District s , Ġlocal Author ities ) ĊĊĠĠĠĠĠĠĠ ĠassertThat Thrown By Ġ{ Ġmapper . map OrThrow ( request ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isInstanceOf ( ApiResponse Exception :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Message (" validation Ġerror : ĠInvalid Ġtier Ġindicator : Ġnull Ġfor Ġlocal Ġauthority : ĠA 3 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` con verts Ġv 2 Ġpost Ġdistrict Ġindicators Ġinto Ġraw Ġcsv `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost District s Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 " Ġto ĠPost District Indicators (" H ", Ġ" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 2 " Ġto ĠPost District Indicators (" M ", Ġ" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 " Ġto ĠPost District Indicators (" L ", Ġ" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġlocal Author ities Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 1 " Ġto ĠLocal Authority Indicators (" EN . Tier 3 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 2 " Ġto ĠLocal Authority Indicators (" WA . Tier 2 "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A 3 " Ġto ĠLocal Authority Indicators (" EN . Tier 1 ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpost District s , Ġlocal Author ities ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġmapper . convertTo Analytics Csv ( request ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( result ). isEqualTo (""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ# Ġpostal _ district _ code , Ġrisk _ indicator , Ġtier _ indicator ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 1 ", Ġ" H ", Ġ" EN . Tier 3 " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 2 ", Ġ" M ", Ġ" WA . Tier 2 " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" CODE 3 ", Ġ" L ", Ġ" EN . Tier 1 " ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` con verts Ġem tp y Ġv 2 Ġpost Ġdistrict Ġindicators Ġinto Ġraw Ġcsv `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠR is ky Post District sRequest ( map Of (), Ġmap Of ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġmapper . convertTo Analytics Csv ( request ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( result ). isEqualTo (""" # Ġpostal _ district _ code , Ġrisk _ indicator , Ġtier _ indicator """) ĊĠĠĠ Ġ} Ċ Ċ }