added pattern for OSMAnd GPS track files

This commit is contained in:
Karl Voit 2017-12-08 15:24:11 +01:00
parent 02860695ab
commit 4bdf3b1bd5
2 changed files with 25 additions and 3 deletions

View file

@ -1,6 +1,6 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
PROG_VERSION = u"Time-stamp: <2017-12-02 13:27:40 vk>"
PROG_VERSION = u"Time-stamp: <2017-12-08 15:21:44 vk>"
# TODO:
@ -165,7 +165,8 @@ class GuessFilename(object):
# Screenshot_2017-11-07_07-52-59 my description.png
SCREENSHOT1_REGEX = re.compile('Screenshot_(' + DAY_REGEX + ')_' + TIME_FUZZY_REGEX + '(.*).png')
# 2017-12-07_09-23_Thu Went for a walk .gpx
OSMTRACK_REGEX = re.compile('(' + DAY_REGEX + ')_' + TIME_FUZZY_REGEX + '_(\w{3})( )?(.*).gpx')
logger = None
config = None
@ -598,6 +599,16 @@ class GuessFilename(object):
my_description = ''
return self.build_string_via_indexgroups(regex_match, [1, 'T', 2, '.', 3, '.', 5, my_description, ' -- screenshots.png'])
# 2017-12-07_09-23_Thu Went for a walk .gpx
regex_match = re.match(self.OSMTRACK_REGEX, oldfilename)
if regex_match:
if regex_match.group(8):
description = regex_match.group(8).strip()
return self.build_string_via_indexgroups(regex_match, [1, 'T', 2, '.', 3, ' ', description, '.gpx'])
else:
return self.build_string_via_indexgroups(regex_match, [1, 'T', 2, '.', 3, '.gpx'])
# FIXXME: more cases!

View file

@ -1,6 +1,6 @@
#!/usr/bin/env python3
# -*- coding: utf-8; mode: python; -*-
# Time-stamp: <2017-12-02 12:58:51 vk>
# Time-stamp: <2017-12-08 15:15:40 vk>
import unittest
import logging
@ -138,6 +138,17 @@ class TestGuessFilename(unittest.TestCase):
self.assertEqual(self.guess_filename.derive_new_filename_from_old_filename("Screenshot_2017-11-29_10-32-12 my description.png"),
"2017-11-29T10.32.12 my description -- screenshots.png")
self.assertEqual(self.guess_filename.derive_new_filename_from_old_filename("2017-11-14_16-10_Tue.gpx"),
"2017-11-14T16.10.gpx")
self.assertEqual(self.guess_filename.derive_new_filename_from_old_filename("2017-12-07_09-23_Thu Went for a walk .gpx"),
"2017-12-07T09.23 Went for a walk.gpx")
self.assertEqual(self.guess_filename.derive_new_filename_from_old_filename("2017-11-03_07-29_Fri Bicycling.gpx"),
"2017-11-03T07.29 Bicycling.gpx")
# self.assertEqual(self.guess_filename.derive_new_filename_from_old_filename(""),
# "")
def test_contains_one_of(self):
self.assertTrue(self.guess_filename.contains_one_of("foo bar baz", ['foo']))