@@ -0,0 +1,1243 @@
+package com.ksoichiro.task.config;%0A%0Aimport org.junit.Test;%0A%0Aimport static org.hamcrest.Matchers.is;%0Aimport static org.hamcrest.Matchers.nullValue;%0Aimport static org.junit.Assert.assertThat;%0A%0Apublic class MiddleVersionPathStrategyTests %7B%0A    @Test%0A    public void addVersion() %7B%0A        MiddleVersionPathStrategy strategy = new MiddleVersionPathStrategy(%22lib/%22, %22abc%22);%0A        assertThat(strategy.addVersion(%22foo.js%22, %22whatever%22), is(%22foo.js%22));%0A        assertThat(strategy.addVersion(%22lib/foo.js%22, %22whatever%22), is(%22lib/abc/foo.js%22));%0A        assertThat(strategy.addVersion(%22/lib/foo.js%22, %22whatever%22), is(%22lib/abc/foo.js%22));%0A        assertThat(strategy.addVersion(%22.config%22, %22whatever%22), is(%22.config%22));%0A    %7D%0A%0A    @Test%0A    public void removeVersion() %7B%0A        MiddleVersionPathStrategy strategy = new MiddleVersionPathStrategy(%22lib/%22, %22abc%22);%0A        assertThat(strategy.removeVersion(%22lib/abc/foo.js%22, %22whatever%22), is(%22lib/foo.js%22));%0A    %7D%0A%0A    @Test%0A    public void extractVersion() %7B%0A        MiddleVersionPathStrategy strategy = new MiddleVersionPathStrategy(%22lib/%22, %22abc%22);%0A        assertThat(strategy.extractVersion(%22lib/abc/foo.js%22), is(%22abc%22));%0A        assertThat(strategy.extractVersion(%22lib/def/foo.js%22), is(nullValue()));%0A    %7D%0A%7D%0A

Add tests for MiddleVersionPathStrategy