<commit_before>package org.traccar.protocol;

import org.junit.Test;
import org.traccar.ProtocolTest;

public class Gps103ProtocolDecoderTest extends ProtocolTest {

    @Test
    public void testDecode() throws Exception {

        Gps103ProtocolDecoder decoder = new Gps103ProtocolDecoder(new Gps103Protocol());

        verifyAttributes(decoder, text(
                "imei:862106025092216,OBD,170612165656,196043,,145803.9,,000,0.0%,+,0.0%,00000,12.6,,,,;"));

        verifyAttributes(decoder, text(
                "imei:862106025092216,OBD,170605095949,195874,,370.8,808,066,30.0%,+87,13.0%,02444,14.3,,,,;"));
<commit_msg>Add GPS103 OBD test case<commit_after>package org.traccar.protocol;

import org.junit.Test;
import org.traccar.ProtocolTest;

public class Gps103ProtocolDecoderTest extends ProtocolTest {

    @Test
    public void testDecode() throws Exception {

        Gps103ProtocolDecoder decoder = new Gps103ProtocolDecoder(new Gps103Protocol());

        verifyNull(decoder, text(
                "imei:868683027825532,OBD,170613203014,,,,0,0,0.00%,0,0.00%,0,0.00,,,,;"));

        verifyAttributes(decoder, text(
                "imei:862106025092216,OBD,170612165656,196043,,145803.9,,000,0.0%,+,0.0%,00000,12.6,,,,;"));

        verifyAttributes(decoder, text(
                "imei:862106025092216,OBD,170605095949,195874,,370.8,808,066,30.0%,+87,13.0%,02444,14.3,,,,;"));

{'fraction_non_alphanumeric': 0.14949928469241774, 'fraction_numerical': 0.21101573676680974, 'mean_word_length': 4.2593984962406015, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2649384', 'n_tokens_mistral': 664, 'n_tokens_neox': 486, 'n_words': 63}