@@ -172,11 +172,27 @@ class TestPath : public TestFixture {
172172 }
173173
174174 void join () const {
175+ ASSERT_EQUALS (" " , Path::join (" " , " " ));
176+ ASSERT_EQUALS (" b" , Path::join (" " , " b" ));
177+ ASSERT_EQUALS (" /b" , Path::join (" " , " /b" ));
178+ ASSERT_EQUALS (" /b" , Path::join (" " , " \\ b" ));
179+
175180 ASSERT_EQUALS (" a" , Path::join (" a" , " " ));
176- ASSERT_EQUALS (" a" , Path::join (" " , " a" ));
177181 ASSERT_EQUALS (" a/b" , Path::join (" a" , " b" ));
178- ASSERT_EQUALS (" a/b" , Path::join (" a/" , " b" ));
179182 ASSERT_EQUALS (" /b" , Path::join (" a" , " /b" ));
183+ ASSERT_EQUALS (" /b" , Path::join (" a" , " \\ b" ));
184+
185+ ASSERT_EQUALS (" a/" , Path::join (" a/" , " " ));
186+ ASSERT_EQUALS (" a/b" , Path::join (" a/" , " b" ));
187+ ASSERT_EQUALS (" /b" , Path::join (" a/" , " /b" ));
188+ ASSERT_EQUALS (" /b" , Path::join (" a/" , " \\ b" ));
189+
190+ ASSERT_EQUALS (" a/" , Path::join (" a\\ " , " " ));
191+ ASSERT_EQUALS (" a/b" , Path::join (" a\\ " , " b" ));
192+ ASSERT_EQUALS (" /b" , Path::join (" a\\ " , " /b" ));
193+ ASSERT_EQUALS (" /b" , Path::join (" a\\ " , " \\ b" ));
194+
195+ // ASSERT_EQUALS("", Path::join("a", "s:/path")); // TODO
180196 }
181197
182198 void isDirectory () const {
0 commit comments