21 import com.nokia.carbide.cpp.epoc.engine.DocumentFactory; |
21 import com.nokia.carbide.cpp.epoc.engine.DocumentFactory; |
22 import com.nokia.carbide.cpp.epoc.engine.model.*; |
22 import com.nokia.carbide.cpp.epoc.engine.model.*; |
23 import com.nokia.carbide.cpp.epoc.engine.preprocessor.*; |
23 import com.nokia.carbide.cpp.epoc.engine.preprocessor.*; |
24 import com.nokia.carbide.internal.api.cpp.epoc.engine.model.pkg.*; |
24 import com.nokia.carbide.internal.api.cpp.epoc.engine.model.pkg.*; |
25 import com.nokia.carbide.internal.cpp.epoc.engine.model.pkg.PKGView; |
25 import com.nokia.carbide.internal.cpp.epoc.engine.model.pkg.PKGView; |
26 import com.nokia.cpp.internal.api.utils.core.HostOS; |
|
27 import com.nokia.cpp.internal.api.utils.core.Logging; |
26 import com.nokia.cpp.internal.api.utils.core.Logging; |
|
27 import com.nokia.cpp.internal.api.utils.core.PathUtils; |
28 |
28 |
29 import org.eclipse.core.runtime.*; |
29 import org.eclipse.core.runtime.*; |
30 import org.eclipse.jface.text.IDocument; |
30 import org.eclipse.jface.text.IDocument; |
31 |
31 |
32 import java.util.*; |
32 import java.util.*; |
138 assertNotNull(installFileList); |
138 assertNotNull(installFileList); |
139 assertEquals(2, installFileList.size()); |
139 assertEquals(2, installFileList.size()); |
140 |
140 |
141 // first install file is language dependent |
141 // first install file is language dependent |
142 IPKGInstallFile installFile = installFileList.get(0); |
142 IPKGInstallFile installFile = installFileList.get(0); |
143 assertEquals(HostOS.createPathFromString(LANG_DEST_FILE), installFile.getDestintationFile()); |
143 assertEquals(PathUtils.createPath(LANG_DEST_FILE), installFile.getDestintationFile()); |
144 List<EPKGLanguage> langs = view.getLanguages(); |
144 List<EPKGLanguage> langs = view.getLanguages(); |
145 assertEquals(2, langs.size()); |
145 assertEquals(2, langs.size()); |
146 Map<EPKGLanguage, IPath> sourceFiles = installFile.getSourceFiles(); |
146 Map<EPKGLanguage, IPath> sourceFiles = installFile.getSourceFiles(); |
147 for (EPKGLanguage lang : langs) { |
147 for (EPKGLanguage lang : langs) { |
148 IPath srcFilePath = sourceFiles.get(lang); |
148 IPath srcFilePath = sourceFiles.get(lang); |
149 String srcFile = lang2SrcFileMap.get(lang.getCode()); |
149 String srcFile = lang2SrcFileMap.get(lang.getCode()); |
150 assertEquals(HostOS.createPathFromString(srcFile), srcFilePath); |
150 assertEquals(PathUtils.createPath(srcFile), srcFilePath); |
151 } |
151 } |
152 |
152 |
153 // second install file is language independent |
153 // second install file is language independent |
154 installFile = installFileList.get(1); |
154 installFile = installFileList.get(1); |
155 assertEquals(HostOS.createPathFromString(NO_LANG_DEST_FILE), installFile.getDestintationFile()); |
155 assertEquals(PathUtils.createPath(NO_LANG_DEST_FILE), installFile.getDestintationFile()); |
156 sourceFiles = installFile.getSourceFiles(); |
156 sourceFiles = installFile.getSourceFiles(); |
157 assertEquals(1, sourceFiles.size()); |
157 assertEquals(1, sourceFiles.size()); |
158 assertTrue(sourceFiles.containsKey(EPKGLanguage.INDEPENDENT)); |
158 assertTrue(sourceFiles.containsKey(EPKGLanguage.INDEPENDENT)); |
159 IPath srcFilePath = sourceFiles.get(EPKGLanguage.INDEPENDENT); |
159 IPath srcFilePath = sourceFiles.get(EPKGLanguage.INDEPENDENT); |
160 assertEquals(HostOS.createPathFromString(NO_LANG_SRC_FILE), srcFilePath); |
160 assertEquals(PathUtils.createPath(NO_LANG_SRC_FILE), srcFilePath); |
161 assertEquals(1, installFile.getOptions().size()); |
161 assertEquals(1, installFile.getOptions().size()); |
162 assertEquals(NO_LANG_OPTION, installFile.getOptions().get(0)); |
162 assertEquals(NO_LANG_OPTION, installFile.getOptions().get(0)); |
163 |
163 |
164 commitTest(view, modelText); |
164 commitTest(view, modelText); |
165 } |
165 } |
185 } |
185 } |
186 assertNotNull(conditionalInstallFile); |
186 assertNotNull(conditionalInstallFile); |
187 IPath destintationFile = conditionalInstallFile.getDestintationFile(); |
187 IPath destintationFile = conditionalInstallFile.getDestintationFile(); |
188 assertTrue(destintationFile.isEmpty()); |
188 assertTrue(destintationFile.isEmpty()); |
189 assertEquals(1, conditionalInstallFile.getSourceFiles().size()); |
189 assertEquals(1, conditionalInstallFile.getSourceFiles().size()); |
190 assertEquals(HostOS.createPathFromString(CONDITIONAL_SRC_FILE), conditionalInstallFile.getSourceFiles().get(EPKGLanguage.INDEPENDENT)); |
190 assertEquals(PathUtils.createPath(CONDITIONAL_SRC_FILE), conditionalInstallFile.getSourceFiles().get(EPKGLanguage.INDEPENDENT)); |
191 assertEquals(2, conditionalInstallFile.getOptions().size()); |
191 assertEquals(2, conditionalInstallFile.getOptions().size()); |
192 |
192 |
193 commitTest(view, modelText); |
193 commitTest(view, modelText); |
194 } |
194 } |
195 |
195 |
198 makeModel(modelText); |
198 makeModel(modelText); |
199 IPKGView view = getView(config); |
199 IPKGView view = getView(config); |
200 |
200 |
201 // fully create and add a language independent install file statement |
201 // fully create and add a language independent install file statement |
202 IPKGInstallFile installFile1 = view.createInstallFile(null); |
202 IPKGInstallFile installFile1 = view.createInstallFile(null); |
203 installFile1.getSourceFiles().put(EPKGLanguage.INDEPENDENT, HostOS.createPathFromString(NO_LANG_SRC_FILE)); |
203 installFile1.getSourceFiles().put(EPKGLanguage.INDEPENDENT, PathUtils.createPath(NO_LANG_SRC_FILE)); |
204 installFile1.getOptions().add(NO_LANG_OPTION); |
204 installFile1.getOptions().add(NO_LANG_OPTION); |
205 installFile1.setDestinationFile(HostOS.createPathFromString(NO_LANG_DEST_FILE)); |
205 installFile1.setDestinationFile(PathUtils.createPath(NO_LANG_DEST_FILE)); |
206 view.addInstallFile(installFile1); |
206 view.addInstallFile(installFile1); |
207 |
207 |
208 // create a language dependent install file and modify after add |
208 // create a language dependent install file and modify after add |
209 IPKGInstallFile installFile2 = view.createInstallFile(null); |
209 IPKGInstallFile installFile2 = view.createInstallFile(null); |
210 view.addInstallFile(installFile2); |
210 view.addInstallFile(installFile2); |
211 for (String[] lang2SrcFileArray : LANG_TO_SRC_FILES) { |
211 for (String[] lang2SrcFileArray : LANG_TO_SRC_FILES) { |
212 installFile2.getSourceFiles().put( |
212 installFile2.getSourceFiles().put( |
213 EPKGLanguage.forLangCode(lang2SrcFileArray[0]), HostOS.createPathFromString(lang2SrcFileArray[1])); |
213 EPKGLanguage.forLangCode(lang2SrcFileArray[0]), PathUtils.createPath(lang2SrcFileArray[1])); |
214 } |
214 } |
215 installFile2.setDestinationFile(HostOS.createPathFromString(LANG_DEST_FILE)); |
215 installFile2.setDestinationFile(PathUtils.createPath(LANG_DEST_FILE)); |
216 |
216 |
217 // NOTE: the newlines are lost and shouldn't be |
217 // NOTE: the newlines are lost and shouldn't be |
218 //String modifiedModelText = modelText + NO_LANG_INSTALL_FILE_STATEMENT + "\n" + LANG_INSTALL_FILE_STATEMENT; |
218 //String modifiedModelText = modelText + NO_LANG_INSTALL_FILE_STATEMENT + "\n" + LANG_INSTALL_FILE_STATEMENT; |
219 String modifiedModelText = |
219 String modifiedModelText = |
220 ";Languages\n" + |
220 ";Languages\n" + |
243 IPKGInstallFile[] installFiles = view.getAllInstallFiles(); |
243 IPKGInstallFile[] installFiles = view.getAllInstallFiles(); |
244 assertEquals(2, installFiles.length); |
244 assertEquals(2, installFiles.length); |
245 |
245 |
246 IPKGInstallFile file = installFiles[0]; |
246 IPKGInstallFile file = installFiles[0]; |
247 assertEquals(2, file.getSourceFiles().size()); |
247 assertEquals(2, file.getSourceFiles().size()); |
248 assertEquals(new Path("c:/users/E0192828/back.txt"), file.getSourceFiles().get(EPKGLanguage.EN)); |
248 assertEquals(PathUtils.createPath("c:/users/E0192828/back.txt"), file.getSourceFiles().get(EPKGLanguage.EN)); |
249 assertEquals(new Path("c:/users/E0FG/front.txt"), file.getSourceFiles().get(EPKGLanguage.FR)); |
249 assertEquals(PathUtils.createPath("c:/users/E0FG/front.txt"), file.getSourceFiles().get(EPKGLanguage.FR)); |
250 assertEquals(new Path("sp ac es.txt"), file.getDestintationFile()); |
250 assertEquals(PathUtils.createPath("sp ac es.txt"), file.getDestintationFile()); |
251 |
251 |
252 file = installFiles[1]; |
252 file = installFiles[1]; |
253 assertEquals(1, file.getSourceFiles().size()); |
253 assertEquals(1, file.getSourceFiles().size()); |
254 assertEquals(new Path("c:/users/E0192828/back.txt"), file.getSourceFiles().get(EPKGLanguage.INDEPENDENT)); |
254 assertEquals(PathUtils.createPath("c:/users/E0192828/back.txt"), file.getSourceFiles().get(EPKGLanguage.INDEPENDENT)); |
255 assertEquals(new Path("sp ac es.txt"), file.getDestintationFile()); |
255 assertEquals(PathUtils.createPath("sp ac es.txt"), file.getDestintationFile()); |
256 |
256 |
257 commitTest(view, ESCAPABLE_FILES); |
257 commitTest(view, ESCAPABLE_FILES); |
258 } |
258 } |
259 |
259 |
260 } |
260 } |