blob: bb7494c7de0c9c6393d7eba46bec6d4eddb5ade4 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you 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.
*/
package org.netbeans.modules.sampler;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import org.netbeans.junit.NbTestCase;
import org.openide.filesystems.FileObject;
import org.openide.filesystems.FileSystem;
/**
*
* @author Jaroslav Tulach <jtulach@netbeans.org>
*/
public class SelfSampleVFSTest extends NbTestCase {
private FileSystem fs;
public SelfSampleVFSTest(String s) {
super(s);
}
/** for subclass(es) in uihandler module
* @param array of names that shall be visible on the VFS
* @param files locations of real files that represent content of those names
*/
protected FileSystem createVFS(String[] names, File[] files) {
return new SelfSampleVFS(names, files);
}
@Override
protected void setUp() throws Exception {
clearWorkDir();
File a = new File(getWorkDir(), "A.txt");
File b = new File(getWorkDir(), "B.txt");
write(a, "Ahoj");
write(b, "Kuk");
fs = createVFS(new String[] { "x.pdf", "y.ps" }, new File[] { a, b });
}
public void testCanList() {
FileObject[] arr = fs.getRoot().getChildren();
assertEquals("Two", 2, arr.length);
assertEquals("x.pdf", arr[0].getNameExt());
assertEquals("y.ps", arr[1].getNameExt());
}
public void testCanReadContent() throws Exception {
FileObject fo = fs.findResource("x.pdf");
assertNotNull("File Object found", fo);
assertEquals("The right content for x.pdf", "Ahoj", fo.asText());
}
public void testGetAttribute() throws Exception {
FileObject fo = fs.findResource("x.pdf");
assertNull("No attribute value", fo.getAttribute("doesnotexist"));
}
private static void write(File f, String content) throws IOException {
FileOutputStream os = new FileOutputStream(f);
try {
os.write(content.getBytes());
} finally {
os.close();
}
}
}