1*9c6edfabSespie#! /usr/bin/perl 2*9c6edfabSespie# $OpenBSD: check-beautify,v 1.1 2019/07/06 19:39:43 espie Exp $ 3*9c6edfabSespie# Written by Marc Espie 4*9c6edfabSespie# Public domain 5*9c6edfabSespieuse strict; 6*9c6edfabSespieuse warnings; 7*9c6edfabSespieuse OpenBSD::UpdateSet; 8*9c6edfabSespieuse OpenBSD::Handle; 9*9c6edfabSespieuse Test::Simple tests => 2; 10*9c6edfabSespie 11*9c6edfabSespiepackage MockRepo; 12*9c6edfabSespiesub installed 13*9c6edfabSespie{ 14*9c6edfabSespie return 'MockInstalled'; 15*9c6edfabSespie} 16*9c6edfabSespie 17*9c6edfabSespiepackage MockInstalled; 18*9c6edfabSespiesub find 19*9c6edfabSespie{ 20*9c6edfabSespie return undef; 21*9c6edfabSespie} 22*9c6edfabSespiepackage MockState; 23*9c6edfabSespie 24*9c6edfabSespiesub repo 25*9c6edfabSespie{ 26*9c6edfabSespie return 'MockRepo'; 27*9c6edfabSespie} 28*9c6edfabSespie 29*9c6edfabSespiepackage main; 30*9c6edfabSespie 31*9c6edfabSespiemy $state = "MockState"; 32*9c6edfabSespie 33*9c6edfabSespiesub create_set 34*9c6edfabSespie{ 35*9c6edfabSespie my ($older, $newer) = @_; 36*9c6edfabSespie my $u1 = OpenBSD::UpdateSet->new($state); 37*9c6edfabSespie for my $i (@$newer) { 38*9c6edfabSespie $u1->add_newer(OpenBSD::Handle->create_new($i)); 39*9c6edfabSespie } 40*9c6edfabSespie for my $i (@$older) { 41*9c6edfabSespie $u1->add_older(OpenBSD::Handle->create_old($i, $state)); 42*9c6edfabSespie } 43*9c6edfabSespie return $u1; 44*9c6edfabSespie 45*9c6edfabSespie} 46*9c6edfabSespie 47*9c6edfabSespiesub check_print 48*9c6edfabSespie{ 49*9c6edfabSespie my ($u, $r) = @_; 50*9c6edfabSespie if ($u->print eq $r) { 51*9c6edfabSespie return 1; 52*9c6edfabSespie } else { 53*9c6edfabSespie print STDERR $u->print, " vs ", $r, "\n"; 54*9c6edfabSespie return 0; 55*9c6edfabSespie } 56*9c6edfabSespie} 57*9c6edfabSespie 58*9c6edfabSespiemy $u1 = create_set([qw(cups-2.9 cups-libs-2.9 mupdf-2.5)], [qw(mupdf-2.5 cups-3.1 cups-libs-3.1)]); 59*9c6edfabSespie 60*9c6edfabSespieok(check_print($u1, 61*9c6edfabSespie 'cups-2.9+cups-libs-2.9+mupdf-2.5->cups-3.1+cups-libs-3.1+mupdf-2.5')); 62*9c6edfabSespie 63*9c6edfabSespie$u1->move_kept(OpenBSD::Handle->create_old('mupdf-2.5', $state)); 64*9c6edfabSespieok(check_print($u1, '[mupdf-2.5]cups+cups-libs-2.9->3.1')); 65