/* Ċ Ġ* ĠCopyright Ġ 2 0 1 9 ĠThe ĠAndroid ĠOpen ĠSource ĠProject Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġandroidx . compose . ui . test . junit 4 Ċ Ċ import Ġandroidx . compose . animation . core . Internal Animation Api Ċ import Ġandroidx . compose . animation . core . transitions Enabled Ċ import Ġandroidx . compose . ui . test . Internal Test Api Ċ import Ġorg . junit . rules . Test Rule Ċ import Ġorg . junit . runner . Description Ċ import Ġorg . junit . runners . model . Statement Ċ Ċ /** Ċ Ġ* ĠThis Ġrule Ġwill Ġdisable Ġall ĠTransition Ġanimations Ġfor Ġthe Ġtest . ĠAs Ġa Ġconvenience , Ġthe Ġrule Ċ Ġ* Ġcan Ġbe Ġturned Ġinto Ġa Ġno - op Ġby Ġsetting Ġ[ disable Transitions ] Ġto Ġ` false `, Ġallowing Ġyou Ġto Ġput Ġit Ċ Ġ* Ġinto Ġa Ġrule Ġchain Ġwithout Ġbranch ing Ġlogic . Ċ Ġ*/ Ċ @ Internal Test Api Ċ class ĠDisable Transitions Test Rule ( private Ġval Ġdisable Transitions : ĠBoolean Ġ= Ġfalse ) Ġ: ĠTest Rule Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġapply ( base : ĠStatement , Ġdescription : ĠDescription ?): ĠStatement Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( disable Transitions ) ĠDisable Transitions Statement ( base ) Ġelse Ġbase ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġclass ĠDisable Transitions Statement ( private Ġval Ġbase : ĠStatement ) Ġ: ĠStatement () Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Suppress (" DE PREC ATION _ ERROR ") ĊĠĠĠĠĠĠĠ Ġ@ Opt In ( Internal Animation Api :: class ) ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġevaluate () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtransitions Enabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase . evaluate () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransitions Enabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ