@@ -78,6 +78,8 @@ public function testTransWithCaching()
78
78
79
79
// do it another time as the cache is primed now
80
80
$ loader = $ this ->getMock ('Symfony\Component\Translation\Loader\LoaderInterface ' );
81
+ $ loader ->expects ($ this ->never ())->method ('load ' );
82
+
81
83
$ translator = $ this ->getTranslator ($ loader , array ('cache_dir ' => $ this ->tmpDir ));
82
84
$ translator ->setLocale ('fr ' );
83
85
$ translator ->setFallbackLocales (array ('en ' , 'es ' , 'pt-PT ' , 'pt_BR ' , 'fr.UTF-8 ' , 'sr@latin ' ));
@@ -91,6 +93,27 @@ public function testTransWithCaching()
91
93
$ this ->assertEquals ('other choice 1 (PT-BR) ' , $ translator ->transChoice ('other choice ' , 1 ));
92
94
$ this ->assertEquals ('foobarbaz (fr.UTF-8) ' , $ translator ->trans ('foobarbaz ' ));
93
95
$ this ->assertEquals ('foobarbax (sr@latin) ' , $ translator ->trans ('foobarbax ' ));
96
+
97
+ // refresh cache again when resource file resources file change
98
+ $ resource = $ this ->getMock ('Symfony\Component\Config\Resource\ResourceInterface ' );
99
+ $ resource
100
+ ->expects ($ this ->at (0 ))
101
+ ->method ('isFresh ' )
102
+ ->will ($ this ->returnValue (false ))
103
+ ;
104
+ $ catalogue = $ this ->getCatalogue ('fr ' , array ('foo ' => 'foo fresh ' ));
105
+ $ catalogue ->addResource ($ resource );
106
+
107
+ $ loader = $ this ->getMock ('Symfony\Component\Translation\Loader\LoaderInterface ' );
108
+ $ loader
109
+ ->expects ($ this ->at (0 ))
110
+ ->method ('load ' )
111
+ ->will ($ this ->returnValue ($ catalogue ))
112
+ ;
113
+
114
+ $ translator = $ this ->getTranslator ($ loader , array ('cache_dir ' => $ this ->tmpDir ));
115
+ $ translator ->setLocale ('fr ' );
116
+ $ this ->assertEquals ('foo fresh ' , $ translator ->trans ('foo ' ));
94
117
}
95
118
96
119
public function testTransWithCachingWithInvalidLocale ()
0 commit comments