aboutsummaryrefslogtreecommitdiffstats
path: root/config-lib/src/test/java/com/yahoo/config/FileNodeTest.java
blob: 49796c795a961f468daab20651bfe4c1671c337a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.config;

import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;

/**
 * @author Ulf Lilleengen
 */
public class FileNodeTest {

    @Test
    void testSetValue() {
        FileNode n = new FileNode();
        assertEquals("(null)", n.toString());
        assertTrue(n.doSetValue("foo.txt"));
        assertEquals("foo.txt", n.value().value());
        assertTrue(n.doSetValue("\"foo.txt\""));
        assertEquals("foo.txt", n.value().value());
        assertEquals("\"foo.txt\"", n.toString());

        assertEquals("Path may not start with '..' but got 'foo/../../boo'",
                assertThrows(IllegalArgumentException.class, () -> new FileNode("foo/../../boo")).getMessage());
    }

}