add created; use special saved handling for first backup
This commit is contained in:
parent
6e7029b74d
commit
39adb48044
1 changed files with 15 additions and 8 deletions
|
@ -41,10 +41,14 @@ class Save(NamedTuple):
|
||||||
def __hash__(self):
|
def __hash__(self):
|
||||||
return hash(self.sid)
|
return hash(self.sid)
|
||||||
|
|
||||||
|
@cproperty
|
||||||
|
def created(self) -> datetime:
|
||||||
|
return self.dt
|
||||||
|
|
||||||
@cproperty
|
@cproperty
|
||||||
def save_dt(self) -> datetime:
|
def save_dt(self) -> datetime:
|
||||||
assert self.dt <= self.backup_dt
|
# TODO not exactly precise... but whatever I guess
|
||||||
return max(self.dt, self.backup_dt)
|
return self.backup_dt
|
||||||
|
|
||||||
@cproperty
|
@cproperty
|
||||||
def url(self) -> str:
|
def url(self) -> str:
|
||||||
|
@ -101,6 +105,9 @@ Url = str
|
||||||
# TODO shit. there does seem to be a difference...
|
# TODO shit. there does seem to be a difference...
|
||||||
# TODO do it in multiple threads??
|
# TODO do it in multiple threads??
|
||||||
def get_state(bfile: Path) -> Dict[Sid, Save]:
|
def get_state(bfile: Path) -> Dict[Sid, Save]:
|
||||||
|
logger = get_logger()
|
||||||
|
logger.debug('handling %s', bfile)
|
||||||
|
|
||||||
RE = re.compile(r'reddit-(\d{14})')
|
RE = re.compile(r'reddit-(\d{14})')
|
||||||
match = RE.search(bfile.stem)
|
match = RE.search(bfile.stem)
|
||||||
assert match is not None
|
assert match is not None
|
||||||
|
@ -159,7 +166,7 @@ def get_events(all_=True, parallel=True) -> List[Event]:
|
||||||
# TODO use backup date, that is more precise...
|
# TODO use backup date, that is more precise...
|
||||||
# eh. I guess just take max and it will always be correct?
|
# eh. I guess just take max and it will always be correct?
|
||||||
events.append(Event(
|
events.append(Event(
|
||||||
dt=ps.save_dt,
|
dt=ps.created if first else ps.save_dt,
|
||||||
text=f"unfavorited",
|
text=f"unfavorited",
|
||||||
kind=ps,
|
kind=ps,
|
||||||
eid=f'unf-{ps.sid}',
|
eid=f'unf-{ps.sid}',
|
||||||
|
@ -169,7 +176,7 @@ def get_events(all_=True, parallel=True) -> List[Event]:
|
||||||
else: # in saves
|
else: # in saves
|
||||||
s = saves[key]
|
s = saves[key]
|
||||||
events.append(Event(
|
events.append(Event(
|
||||||
dt=s.save_dt,
|
dt=s.created if first else s.save_dt,
|
||||||
text=f"favorited{' [initial]' if first else ''}",
|
text=f"favorited{' [initial]' if first else ''}",
|
||||||
kind=s,
|
kind=s,
|
||||||
eid=f'fav-{s.sid}',
|
eid=f'fav-{s.sid}',
|
||||||
|
@ -217,10 +224,10 @@ def test_unfav():
|
||||||
uf = uevents[1]
|
uf = uevents[1]
|
||||||
assert uf.text == 'unfavorited'
|
assert uf.text == 'unfavorited'
|
||||||
|
|
||||||
# def test_get_all_saves():
|
def test_get_all_saves():
|
||||||
# saves = get_saves(all_=True)
|
saves = get_saves(all_=True)
|
||||||
# # just check that they are unique..
|
# just check that they are unique..
|
||||||
# make_dict(saves, key=lambda s: s.sid)
|
make_dict(saves, key=lambda s: s.sid)
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
|
|
Loading…
Add table
Reference in a new issue