]> git.basschouten.com Git - openhab-addons.git/blob
8d97a6c0128376b56e6cda98b58c74ec0c070033
[openhab-addons.git] /
1 /**
2  * Copyright (c) 2010-2023 Contributors to the openHAB project
3  *
4  * See the NOTICE file(s) distributed with this work for additional
5  * information.
6  *
7  * This program and the accompanying materials are made available under the
8  * terms of the Eclipse Public License 2.0 which is available at
9  * http://www.eclipse.org/legal/epl-2.0
10  *
11  * SPDX-License-Identifier: EPL-2.0
12  */
13 package org.openhab.binding.mybmw.internal.utils;
14
15 import static org.junit.jupiter.api.Assertions.assertEquals;
16 import static org.junit.jupiter.api.Assertions.assertTrue;
17
18 import java.time.ZoneId;
19
20 import org.eclipse.jdt.annotation.NonNullByDefault;
21 import org.junit.jupiter.api.Test;
22 import org.openhab.core.library.types.DateTimeType;
23 import org.openhab.core.types.State;
24 import org.openhab.core.types.UnDefType;
25
26 /**
27  * @author Martin Grassl - initial contribution
28  */
29 @NonNullByDefault
30 public class ConverterTest {
31     @Test
32     void testToTitleCase() {
33         assertEquals("Closed", Converter.toTitleCase("CLOSED"));
34         assertEquals("Secured", Converter.toTitleCase("SECURED"));
35         assertEquals("Undef", Converter.toTitleCase(null));
36         assertEquals("Undef", Converter.toTitleCase(""));
37         assertEquals("Secured", Converter.toTitleCase("SECURED"));
38         assertEquals("Secured", Converter.toTitleCase("SECURED"));
39         assertEquals("Test Data", Converter.toTitleCase("test_data"));
40         assertEquals("Test-Data", Converter.toTitleCase("test-data"));
41         assertEquals("Test Data", Converter.toTitleCase("test data"));
42     }
43
44     @Test
45     void testDateConversion() {
46         State state = Converter.zonedToLocalDateTime(null, ZoneId.systemDefault());
47         assertTrue(state instanceof UnDefType);
48         state = Converter.zonedToLocalDateTime("", ZoneId.systemDefault());
49         assertTrue(state instanceof UnDefType);
50         state = Converter.zonedToLocalDateTime("2023-01-18", ZoneId.systemDefault());
51         assertTrue(state instanceof UnDefType);
52         state = Converter.zonedToLocalDateTime("2023-01-18T18:07:59.076Z", ZoneId.systemDefault());
53         assertTrue(state instanceof DateTimeType);
54         state = Converter.zonedToLocalDateTime("2023-10-28T17:41:17Z", ZoneId.systemDefault());
55         assertTrue(state instanceof DateTimeType);
56     }
57 }