package Ġio . piv otal . intellij . jasmine Ċ Ċ import Ġcom . intellij . execution . configurations . Runtime Configuration Error Ċ import Ġcom . intellij . test Framework . fixtures . Light Platform Code Insight Fixture TestCase Ċ import Ġcom . intellij . util . io . system In dependent Path Ċ import Ġio . piv otal . intellij . jasmine . scope . J asmine Scope Ċ import Ġjava . io . File Ċ import Ġjava . nio . file . Files Ċ Ċ class ĠJ asmine Run Configuration Test Ġ: ĠLight Platform Code Insight Fixture TestCase () Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġsubject : ĠJ asmine Run Configuration ĊĊĠĠĠ Ġpublic Ġoverride Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . setUp () ĊĊĠĠĠĠĠĠĠ Ġval Ġconfig Factory Ġ= ĠJ asmine Configuration Type . getInstance (). configuration Factories [ 0 ] ĊĠĠĠĠĠĠĠ Ġsubject Ġ= Ġconfig Factory . create Template Configuration ( project ) Ġas ĠJ asmine Run Configuration ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġresolves Ġjasmine Ġpackage `() Ġ{ ĊĠĠĠĠĠĠĠ Ġmy Fixture . add File To Project (" node _ modules / jasmine / package . json ", Ġ"") ĊĊĠĠĠĠĠĠĠ ĠassertEquals ("/ src / node _ modules / jasmine ", Ġsubject . selected J asmine Package (). system In dependent Path ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġconfiguration Ġerror Ġwhen Ġjasmine Ġpackage Ġnot Ġset `() Ġ{ ĊĠĠĠĠĠĠĠ Ġassert Configuration Error Equals (" Unspecified Ġjasmine Ġpackage ", Ġsubject ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġconfiguration Ġerror Ġwhen Ġspec Ġfile Ġnot Ġset `() Ġ{ ĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( scope Ġ= ĠJ asmine Scope . SPEC _ FILE ) ĊĠĠĠĠĠĠĠ Ġassert Configuration Error Equals (" Unspecified Ġspec Ġfile ", Ġsubject ) ĊĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( scope Ġ= ĠJ asmine Scope . SUITE ) ĊĠĠĠĠĠĠĠ Ġassert Configuration Error Equals (" Unspecified Ġspec Ġfile ", Ġsubject ) ĊĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( scope Ġ= ĠJ asmine Scope . TEST ) ĊĠĠĠĠĠĠĠ Ġassert Configuration Error Equals (" Unspecified Ġspec Ġfile ", Ġsubject ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġconfiguration Ġerror Ġwhen Ġspec Ġfile Ġis Ġnot Ġa Ġfile `() Ġ{ ĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscope Ġ= ĠJ asmine Scope . SPEC _ FILE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġspec File Ġ= Ġ" does not exist " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġassert Configuration Error Equals (" No Ġsuch Ġspec Ġfile ", Ġsubject ) ĊĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscope Ġ= ĠJ asmine Scope . SPEC _ FILE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġspec File Ġ= ĠFiles . create Temp Directory (" temp - dir "). system In dependent Path ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġassert Configuration Error Equals (" No Ġsuch Ġspec Ġfile ", Ġsubject ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġconfiguration Ġerror Ġwhen Ġsuite Ġname Ġnot Ġset `() Ġ{ ĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscope Ġ= ĠJ asmine Scope . SUITE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġspec File Ġ= ĠFile . create TempFile (" App . spec ", Ġ". js "). absolute Path ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġassert Configuration Error Equals (" Unspecified Ġsuite Ġname ", Ġsubject ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġconfiguration Ġerror Ġwhen Ġtest Ġname Ġnot Ġset `() Ġ{ ĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscope Ġ= ĠJ asmine Scope . TEST , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġspec File Ġ= ĠFile . create TempFile (" App . spec ", Ġ". js "). absolute Path ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġassert Configuration Error Equals (" Unspecified Ġtest Ġname ", Ġsubject ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġassert Configuration Error Equals ( expected ErrorMessage : ĠString , Ġconfiguration : ĠJ asmine Run Configuration ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconfiguration . check Configuration () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfail (" should Ġthrow ĠRuntime Configuration Error ") ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( re : ĠRuntime Configuration Error ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( expected ErrorMessage , Ġre . message ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġsuggested Ġand Ġaction Ġname Ġis Ġ' All ĠTests ' Ġfor Ġall Ġscope `() Ġ{ ĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( scope Ġ= ĠJ asmine Scope . ALL ) ĊĠĠĠĠĠĠĠ Ġsubject . set Generated Name () ĊĊĠĠĠĠĠĠĠ ĠassertEquals (" All ĠTests ", Ġsubject . suggest ed Name ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" All ĠTests ", Ġsubject . action Name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġsuggested Ġand Ġaction Ġname Ġis Ġfile Ġname Ġfor Ġfile Ġscope `() Ġ{ ĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscope Ġ= ĠJ asmine Scope . SPEC _ FILE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġspec File Ġ= Ġ" spec / App . spec . js " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġsubject . set Generated Name () ĊĊĠĠĠĠĠĠĠ ĠassertEquals (" App . spec . js ", Ġsubject . suggest ed Name ()) ĊĠĠĠĠĠĠĠ ĠassertEquals (" App . spec . js ", Ġsubject . action Name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġsuggested Ġname Ġis Ġfull Ġtest Ġname Ġfor Ġsuite Ġscope `() Ġ{ ĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscope Ġ= ĠJ asmine Scope . SUITE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtest Names Ġ= ĠlistOf (" top Ġsuite ", Ġ" nested Ġsuite ") ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠassertEquals (" top Ġsuite . nested Ġsuite ", Ġsubject . suggest ed Name ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġsuggested Ġname Ġis Ġfull Ġtest Ġname Ġfor Ġtest Ġscope `() Ġ{ ĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscope Ġ= ĠJ asmine Scope . TEST , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtest Names Ġ= ĠlistOf (" suite Ġname ", Ġ" test Ġname ") ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠassertEquals (" suite Ġname . test Ġname ", Ġsubject . suggest ed Name ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġaction Ġname Ġis Ġsuite Ġname Ġfor Ġsuite Ġscope `() Ġ{ ĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscope Ġ= ĠJ asmine Scope . SUITE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtest Names Ġ= ĠlistOf (" top Ġsuite ", Ġ" nested Ġsuite ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġsubject . set Generated Name () ĊĊĠĠĠĠĠĠĠ ĠassertEquals (" nested Ġsuite ", Ġsubject . action Name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġaction Ġname Ġis Ġtest Ġname Ġfor Ġtest Ġscope `() Ġ{ ĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscope Ġ= ĠJ asmine Scope . TEST , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtest Names Ġ= ĠlistOf (" suite Ġname ", Ġ" test Ġname ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġsubject . set Generated Name () ĊĊĠĠĠĠĠĠĠ ĠassertEquals (" test Ġname ", Ġsubject . action Name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ` test Ġaction Ġname Ġis Ġnull Ġfor Ġempty Ġtest Ġnames `() Ġ{ ĊĠĠĠĠĠĠĠ Ġsubject . jasmine Run Settings Ġ= ĠJ asmine Run Settings ( scope Ġ= ĠJ asmine Scope . TEST ) ĊĠĠĠĠĠĠĠ Ġsubject . set Generated Name () ĊĊĠĠĠĠĠĠĠ ĠassertNull ( subject . action Name ) ĊĠĠĠ Ġ} Ċ } Ċ