Added
Link Here
|
1 |
/* |
2 |
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. |
3 |
* |
4 |
* Copyright 2011 Oracle and/or its affiliates. All rights reserved. |
5 |
* |
6 |
* Oracle and Java are registered trademarks of Oracle and/or its affiliates. |
7 |
* Other names may be trademarks of their respective owners. |
8 |
* |
9 |
* The contents of this file are subject to the terms of either the GNU |
10 |
* General Public License Version 2 only ("GPL") or the Common Development and |
11 |
* Distribution License("CDDL") (collectively, the "License"). You may not use |
12 |
* this file except in compliance with the License. You can obtain a copy of |
13 |
* the License at http://www.netbeans.org/cddl-gplv2.html or |
14 |
* nbbuild/licenses/CDDL-GPL-2-CP. See the License for the specific language |
15 |
* governing permissions and limitations under the License. When distributing |
16 |
* the software, include this License Header Notice in each file and include |
17 |
* the License file at nbbuild/licenses/CDDL-GPL-2-CP. Oracle designates this |
18 |
* particular file as subject to the "Classpath" exception as provided by |
19 |
* Oracle in the GPL Version 2 section of the License file that accompanied |
20 |
* this code. If applicable, add the following below the License Header, with |
21 |
* the fields enclosed by brackets [] replaced by your own identifying |
22 |
* information: "Portions Copyrighted [year] [name of copyright owner]" |
23 |
* |
24 |
* If you wish your version of this file to be governed by only the CDDL or |
25 |
* only the GPL Version 2, indicate your decision by adding "[Contributor] |
26 |
* elects to include this software in this distribution under the [CDDL or GPL |
27 |
* Version 2] license." If you do not indicate a single choice of license, a |
28 |
* recipient has the option to distribute your version of this file under |
29 |
* either the CDDL, the GPL Version 2 or to extend the choice of license to its |
30 |
* licensees as provided above. However, if you add GPL Version 2 code and |
31 |
* therefore, elected the GPL Version 2 license, then the option applies only |
32 |
* if the new code is made subject to such option by the copyright holder. |
33 |
* |
34 |
* Contributor(s): |
35 |
* |
36 |
* Portions Copyrighted 2011 Sun Microsystems, Inc. |
37 |
*/ |
38 |
package org.netbeans.modules.csl.core; |
39 |
|
40 |
import org.netbeans.junit.NbTestCase; |
41 |
import org.openide.cookies.EditorCookie; |
42 |
import org.openide.cookies.SaveCookie; |
43 |
import org.openide.filesystems.FileObject; |
44 |
import org.openide.filesystems.FileSystem; |
45 |
import org.openide.filesystems.FileUtil; |
46 |
import org.openide.loaders.DataObject; |
47 |
|
48 |
public class GsfDataObjectTest extends NbTestCase { |
49 |
static { |
50 |
FileUtil.setMIMEType("test", "text/x-test"); |
51 |
} |
52 |
|
53 |
public GsfDataObjectTest(String name) { |
54 |
super(name); |
55 |
} |
56 |
|
57 |
public void testSetModifiedRemovesSaveCookie() throws Exception { |
58 |
FileSystem fs = FileUtil.createMemoryFileSystem(); |
59 |
FileObject f = fs.getRoot().createData("index.test"); |
60 |
DataObject dob = DataObject.find(f); |
61 |
assertEquals("The right object", GsfDataObject.class, dob.getClass()); |
62 |
|
63 |
dob.getLookup().lookup(EditorCookie.class).openDocument().insertString(0, |
64 |
"modified", null); |
65 |
assertTrue("Should be modified.", dob.isModified()); |
66 |
dob.setModified(false); |
67 |
assertFalse("Should not be modified.", dob.isModified()); |
68 |
assertNull("Should not have SaveCookie.", |
69 |
dob.getLookup().lookup(SaveCookie.class)); |
70 |
} |
71 |
} |