@@ -675,7 +675,7 @@ public void NetSparkleCanParseHumanReadableAppCast()
675
675
maker . CreateSignatureFile ( appCastFileName , opts . SignatureFileExtension ) ;
676
676
}
677
677
// for debugging print out app cast
678
- Console . WriteLine ( File . ReadAllText ( appCastFileName ) ) ;
678
+ // Console.WriteLine(File.ReadAllText(appCastFileName));
679
679
// test NetSparkle reading file
680
680
var appCastHandler = new NetSparkleUpdater . AppCastHandlers . XMLAppCast ( ) ;
681
681
var publicKey = signatureManager . GetPublicKey ( ) ;
@@ -815,11 +815,11 @@ public void CanSetCriticalVersion()
815
815
SourceBinaryDirectory = tempDir ,
816
816
Extensions = "txt" ,
817
817
OutputDirectory = tempDir ,
818
- OperatingSystem = "windows" ,
818
+ OperatingSystem = GetOperatingSystemForAppCastString ( ) ,
819
819
BaseUrl = "https://example.com/downloads" ,
820
820
OverwriteOldItemsInAppcast = false ,
821
821
ReparseExistingAppCast = false ,
822
- CriticalVersions = "1.3"
822
+ CriticalVersions = "1.3" ,
823
823
} ;
824
824
825
825
try
@@ -830,13 +830,44 @@ public void CanSetCriticalVersion()
830
830
var maker = new XMLAppCastMaker ( signatureManager , opts ) ;
831
831
var appCastFileName = maker . GetPathToAppCastOutput ( opts . OutputDirectory , opts . SourceBinaryDirectory ) ;
832
832
var ( items , productName ) = maker . LoadAppCastItemsAndProductName ( opts . SourceBinaryDirectory , opts . ReparseExistingAppCast , appCastFileName ) ;
833
- // items should be null since this is a failure case
834
833
Assert . Equal ( 2 , items . Count ( ) ) ;
835
834
// 1.4 should not be marked critical; 1.3 should be
836
835
Assert . Equal ( "1.4" , items [ 0 ] . Version ) ;
837
836
Assert . False ( items [ 0 ] . IsCriticalUpdate ) ;
838
837
Assert . Equal ( "1.3" , items [ 1 ] . Version ) ;
839
838
Assert . True ( items [ 1 ] . IsCriticalUpdate ) ;
839
+ // make sure data ends up in file, too
840
+ if ( items != null )
841
+ {
842
+ maker . SerializeItemsToFile ( items , productName , appCastFileName ) ;
843
+ maker . CreateSignatureFile ( appCastFileName , opts . SignatureFileExtension ?? "signature" ) ;
844
+ }
845
+ // DEBUG: Console.WriteLine(File.ReadAllText(Path.Combine(tempDir, "appcast.xml")));
846
+ // test NetSparkle reading file
847
+ var appCastHandler = new NetSparkleUpdater . AppCastHandlers . XMLAppCast ( ) ;
848
+ var publicKey = signatureManager . GetPublicKey ( ) ;
849
+ var publicKeyString = Convert . ToBase64String ( publicKey ) ;
850
+ appCastHandler . SetupAppCastHandler (
851
+ new NetSparkleUpdater . Downloaders . LocalFileAppCastDownloader ( ) ,
852
+ appCastFileName ,
853
+ new EmptyTestDataConfguration (
854
+ new FakeTestDataAssemblyAccessor ( )
855
+ {
856
+ AssemblyVersion = "1.0"
857
+ } ) ,
858
+ new NetSparkleUpdater . SignatureVerifiers . Ed25519Checker (
859
+ NetSparkleUpdater . Enums . SecurityMode . Strict ,
860
+ publicKeyString ) ,
861
+ new NetSparkleUpdater . LogWriter ( true ) ) ;
862
+ var didSucceed = appCastHandler . DownloadAndParse ( ) ;
863
+ Assert . True ( didSucceed ) ;
864
+ var updates = appCastHandler . GetAvailableUpdates ( ) ;
865
+ Assert . Equal ( 2 , updates . Count ( ) ) ;
866
+ // 1.4 should not be marked critical; 1.3 should be
867
+ Assert . Equal ( "1.4" , updates [ 0 ] . Version ) ;
868
+ Assert . False ( updates [ 0 ] . IsCriticalUpdate ) ;
869
+ Assert . Equal ( "1.3" , updates [ 1 ] . Version ) ;
870
+ Assert . True ( updates [ 1 ] . IsCriticalUpdate ) ;
840
871
}
841
872
finally
842
873
{
0 commit comments