/* * #%L * Native ARchive plugin for Maven * %% * Copyright (C) 2002 - 2014 NAR Maven Plugin developers. * %% * 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. * #L% */ package com.github.maven_nar.cpptasks.msvc; import java.io.File; /** * Test for Microsoft Developer Studio linker * * Override create to test concrete compiler implementions */ public class TestInstalledMsvcLinker extends TestMsvcLinker { public TestInstalledMsvcLinker(final String name) { super(name); } public void failingtestGetLibraryPath() { final File[] libpath = MsvcLinker.getInstance().getLibraryPath(); // // unless you tweak the library path // it should have more thean three entries assertTrue(libpath.length >= 2); // // check if these files can be found // final String[] libnames = new String[] { "kernel32.lib", "advapi32.lib", "msvcrt.lib", "mfc42.lib", "mfc70.lib" }; final boolean[] libfound = new boolean[libnames.length]; for (final File element : libpath) { for (int j = 0; j < libnames.length; j++) { final File libfile = new File(element, libnames[j]); if (libfile.exists()) { libfound[j] = true; } } } assertTrue("kernel32 not found", libfound[0]); assertTrue("advapi32 not found", libfound[1]); assertTrue("msvcrt not found", libfound[2]); if (!(libfound[3] || libfound[4])) { fail("mfc42.lib or mfc70.lib not found"); } } }