Esempio n. 1
0
 public void CheckForFailureOnZeroLengthResource()
 {
     Assert.Throws <ArgumentException>(() =>
     {
         Minter minter = new Minter();
         string stamp  = minter.Mint(string.Empty, 8, DateTimeOffset.UtcNow, StampFormat.Version0);
     });
 }
Esempio n. 2
0
 public void CheckForFailureOnZeroLengthDenomination()
 {
     Assert.Throws <ArgumentOutOfRangeException>(() =>
     {
         Minter minter = new Minter();
         string stamp  = minter.Mint("foo0123456789", 0, DateTimeOffset.UtcNow, StampFormat.Version0);
     });
 }
Esempio n. 3
0
 public void CheckForFailureOnUrlResource()
 {
     Assert.Throws <ArgumentOutOfRangeException>(() =>
     {
         Minter minter = new Minter();
         string stamp  = minter.Mint("http://notgartner.com", 8, DateTimeOffset.UtcNow, StampFormat.Version0);
     });
 }
Esempio n. 4
0
 public void GenerateAFormatVersionZeroStampWithADenominationOfSeventeenAndEnsureItValidatesUsingTheHashcashReferenceImplementation()
 {
     Given("a resource of '*****@*****.**'", x => Resource = "foo123456789")
     .And("an instance of the Minter class", x => Minter = new Minter())
     .And("a denomination of sixteen", x => Denomination = 17)
     .And("a stamp format version of 1", x => Format     = StampFormat.Version0)
     .When("the Mint method is called", x => Stamp       = Minter.Mint(Resource, Denomination, Format))
     .Then("it should generate a valid stamp", x => IsValidStamp(Denomination, Resource, Stamp, 0));
 }
Esempio n. 5
0
        static void TestNHashCash()
        {
            for (int i = 0; i < iterations; i++)
            {
                Minter minter = new Minter();
                string header = minter.Mint("*****@*****.**", Minter.StampFormat.Version1);
                bool   ret    = HashCash.Verify(header);

                Console.WriteLine((ret ? "Passed" : "Failed") + "   " + header);
            }
        }
Esempio n. 6
0
        private static void Main(string[] args)
        {
            string      resource     = args[0];
            int         denomination = int.Parse(args[1]);
            StampFormat format       = (StampFormat)Enum.Parse(typeof(StampFormat), $"Version{args[2]}");

            Minter minter = new Minter();
            string stamp  = minter.Mint(resource, denomination, DateTimeOffset.UtcNow, format);

            Console.WriteLine(stamp);

            Console.WriteLine("Press a key to exit...");
            Console.ReadKey();
        }
Esempio n. 7
0
 public void CheckForFailureOnZeroLengthDenomination()
 {
     Minter minter = new Minter();
     string stamp  = minter.Mint("foo0123456789", 0, DateTime.Now, StampFormat.Version0);
 }
Esempio n. 8
0
 public void CheckForFailureOnUrlResource()
 {
     Minter minter = new Minter();
     string stamp  = minter.Mint("http://notgartner.com", 8, DateTime.Now, StampFormat.Version0);
 }
Esempio n. 9
0
 public void CheckForFailureOnZeroLengthResource()
 {
     Minter minter = new Minter();
     string stamp  = minter.Mint(string.Empty, 8, DateTime.Now, StampFormat.Version0);
 }
Esempio n. 10
0
        public void CheckMint20BitVersion1Stamp()
        {
            Minter minter = new Minter();

            minter.Mint("foo0123456789", 20, DateTimeOffset.UtcNow, StampFormat.Version1);
        }
Esempio n. 11
0
        public void CheckMint16BitVersion0Stamp()
        {
            Minter minter = new Minter();

            minter.Mint("foo0123456789", 16, DateTimeOffset.UtcNow, StampFormat.Version0);
        }