public static TsvDataSheet Download(AbsoluteUri location) { if (null == location) { throw new ArgumentNullException("location"); } TsvDataSheet tsv = null; var request = WebRequest.Create((Uri)location); using (var response = request.GetResponse()) { using (var stream = response.GetResponseStream()) { if (null != stream) { using (var reader = new StreamReader(stream)) { #if NET20 var file = new FileInfo(StringExtensionMethods.FormatWith("{0}.tsv", AlphaDecimal.Random())); FileInfoExtensionMethods.Create(file, reader.ReadToEnd()); #else var file = new FileInfo("{0}.tsv".FormatWith(AlphaDecimal.Random())); file.Create(reader.ReadToEnd()); #endif tsv = new TsvDataSheet(file); } } } } return(tsv); }
public PostalAddressFileKey(AlphaDecimal urn, AlphaDecimal umr) : this() { UniqueDeliveryPointReferenceNumber = urn; UniqueMultipleResidenceReferenceNumber = umr; }
public void op_Verify_IRepository_whenKeyIsDifferent() { var obj = new RepositorySelectUrn <RandomObject> { Record1 = { Key = AlphaDecimal.Random() } }; var repository = new Mock <IRepository <RandomObject> >(); repository .Setup(x => x.Insert(obj.Record1)) .Returns(obj.Record1) .Verifiable(); var record = new Mock <IRecord <RandomObject> >(); record .SetupGet(x => x.Key) .Returns(AlphaDecimal.Random()); record .SetupGet(x => x.Urn) .Returns(obj.Record1.Urn); repository .Setup(x => x.Select(obj.Record1.Urn)) .Returns(record.Object) .Verifiable(); Assert.Throws <RepositoryTestException>(() => obj.Verify(repository.Object)); repository.VerifyAll(); }
private static IRecord <T> ToRecord(XmlNode node) { if (null == node) { return(null); } if (null == node.Attributes) { return(null); } return(new Record <T> { Cacheability = node.Attributes["cacheability"].Value, Created = XmlConvert.ToDateTime(node.Attributes["created"].Value, XmlDateTimeSerializationMode.Utc), Etag = node.Attributes["etag"].Value, Expiration = node.Attributes["expiration"].Value, Key = AlphaDecimal.FromString(node.Attributes["key"].Value), Modified = XmlConvert.ToDateTime(node.Attributes["modified"].Value, XmlDateTimeSerializationMode.Utc), Status = XmlConvert.ToInt32(node.Attributes["status"].Value), Urn = node.Attributes["urn"].Value, Value = node.InnerXml.XmlDeserialize <T>() }); }
public void op_Verify_IRepository() { var key = AlphaDecimal.Random(); var obj = new RepositoryModifiedSinceKey <RandomObject> { Record1 = { Key = key } }; var repository = new Mock <IRepository <RandomObject> >(); repository .Setup(x => x.Insert(obj.Record1)) .Returns(obj.Record1) .Verifiable(); repository .Setup(x => x.ModifiedSince(key, DateTime.MaxValue)) .Returns(false) .Verifiable(); repository .Setup(x => x.ModifiedSince(key, DateTime.MinValue)) .Returns(true) .Verifiable(); obj.Verify(repository.Object); repository.VerifyAll(); }
protected override void OnVerify(IRepository <T> repository) { if (null == repository) { throw new ArgumentNullException("repository"); } repository.Insert(Record1); RepositoryException expected = null; try { Record2.Key = AlphaDecimal.Random(); repository.Update(Record2); } catch (RepositoryException exception) { expected = exception; } catch (Exception exception) { throw new RepositoryTestException(Resources.Repository_UnexpectedException_ExceptionMessage, exception); } if (null == expected) { throw new RepositoryTestException(Resources.Repository_ExpectExceptionWhenRecordKeyNotFound_UnitTestExceptionMessage.FormatWith("Update")); } }
public void op_ToString_whenRecordNullXml() { var key = AlphaDecimal.Random(); var record = new Record <string> { Cacheability = "public", Created = new DateTime(1999, 12, 31, 01, 00, 00, 00), Etag = "\"xyz\"", Expiration = "P1D", Key = key, Modified = new DateTime(2001, 12, 31, 01, 00, 00, 00), Status = 200, Urn = "urn://example.com/abc", Value = null }; var obj = new RecordFile(record); var expected = new StringBuilder(); expected.AppendLine("urn: urn://example.com/abc"); expected.AppendLine("key: " + key); expected.AppendLine("etag: \"xyz\""); expected.AppendLine("created: 1999-12-31T01:00:00Z"); expected.AppendLine("modified: 2001-12-31T01:00:00Z"); expected.AppendLine("cacheability: public"); expected.AppendLine("expiration: P1D"); expected.AppendLine("status: 200"); expected.AppendLine(string.Empty); var actual = obj.ToString(); Assert.Equal(expected.ToString(), actual); }
public void op_Verify_IRepository_whenModifiedSinceMaxDate() { var key = AlphaDecimal.Random(); var obj = new RepositoryModifiedSinceKey <RandomObject> { Record1 = { Key = key } }; var repository = new Mock <IRepository <RandomObject> >(); repository .Setup(x => x.Insert(obj.Record1)) .Returns(obj.Record1) .Verifiable(); repository .Setup(x => x.ModifiedSince(key, DateTime.MaxValue)) .Returns(true) .Verifiable(); Assert.Throws <RepositoryTestException>(() => obj.Verify(repository.Object)); repository.VerifyAll(); }
public void op_Verify_IRepository_whenFalse() { var key = AlphaDecimal.Random(); var obj = new RepositoryExistsKey <RandomObject> { Record1 = { Key = key } }; var repository = new Mock <IRepository <RandomObject> >(); repository .Setup(x => x.Insert(obj.Record1)) .Returns(obj.Record1) .Verifiable(); repository .Setup(x => x.Exists(key)) .Returns(false) .Verifiable(); Assert.Throws <RepositoryTestException>(() => obj.Verify(repository.Object)); repository.VerifyAll(); }
public void op_Verify_IRepository_whenUrnIsDifferent() { var key = AlphaDecimal.Random(); var obj = new RepositoryToUrnKey <RandomObject> { Record1 = { Key = key } }; var repository = new Mock <IRepository <RandomObject> >(); repository .Setup(x => x.Insert(obj.Record1)) .Returns(obj.Record1) .Verifiable(); repository .Setup(x => x.ToUrn(key)) .Returns("urn://example.com/" + Guid.NewGuid()) .Verifiable(); Assert.Throws <RepositoryTestException>(() => obj.Verify(repository.Object)); repository.VerifyAll(); }
public void op_Verify_IRepository_whenNullIsReturned() { var key = AlphaDecimal.Random(); var obj = new RepositorySelectKey <RandomObject> { Record1 = { Key = key } }; var repository = new Mock <IRepository <RandomObject> >(); repository .Setup(x => x.Insert(obj.Record1)) .Returns(obj.Record1) .Verifiable(); repository .Setup(x => x.Select(key)) .Returns(null as IRecord <RandomObject>) .Verifiable(); Assert.Throws <RepositoryTestException>(() => obj.Verify(repository.Object)); repository.VerifyAll(); }
public void op_Verify_IRepository() { var key = AlphaDecimal.Random(); var obj = new RepositorySelectKey <RandomObject> { Record1 = { Key = key } }; var repository = new Mock <IRepository <RandomObject> >(); repository .Setup(x => x.Insert(obj.Record1)) .Returns(obj.Record1) .Verifiable(); repository .Setup(x => x.Select(key)) .Returns(obj.Record1) .Verifiable(); obj.Verify(repository.Object); repository.VerifyAll(); }
public void op_Verify_IRepository_whenExists() { var obj = new RepositoryDeleteUrn <RandomObject> { Record1 = { Key = AlphaDecimal.Random() } }; var repository = new Mock <IRepository <RandomObject> >(); repository .Setup(x => x.Insert(obj.Record1)) .Returns(obj.Record1) .Verifiable(); repository .Setup(x => x.Delete(obj.Record1.Urn)) .Returns(true) .Verifiable(); repository .Setup(x => x.Exists(obj.Record1.Urn)) .Returns(true) .Verifiable(); Assert.Throws <RepositoryTestException>(() => obj.Verify(repository.Object)); repository.VerifyAll(); }
private static FileInfo GetFile(AlphaDecimal key) { return(FileRepositoryConfiguration .Directory() .GetFiles("{0}.record".FormatWith(key), SearchOption.AllDirectories) .FirstOrDefault()); }
public void op_Verify_IRepository() { var obj = new RepositoryToKeyUrn <RandomObject> { Record1 = { Key = AlphaDecimal.Random() } }; var repository = new Mock <IRepository <RandomObject> >(); repository .Setup(x => x.Insert(obj.Record1)) .Returns(obj.Record1) .Verifiable(); repository .Setup(x => x.ToKey(obj.Record1.Urn)) .Returns(obj.Record1.Key) .Verifiable(); obj.Verify(repository.Object); repository.VerifyAll(); }
private PostalAddressFileKey(SerializationInfo info, StreamingContext context) : this() { UniqueDeliveryPointReferenceNumber = AlphaDecimal.FromString(info.GetString("_urn")); UniqueMultipleResidenceReferenceNumber = AlphaDecimal.FromString(info.GetString("_umr")); }
private static object AddToCache(ICacheCollection cache) { var obj = new object(); cache.Add(AlphaDecimal.Random(), obj); return(obj); }
AbsoluteUri IRepository <T> .ToUrn(AlphaDecimal key) { var file = GetFile(key); return(null == file ? null : RecordFile.Load(file).ToRecord <T>().Urn); }
IRecord <T> IRepository <T> .Select(AlphaDecimal key) { var file = GetFile(key); return(null == file ? null : RecordFile.Load(file).ToRecord <T>()); }
private static T AddToCacheOfT <T>(ICacheCollection cache) { var obj = default(T); cache.Add(AlphaDecimal.Random(), obj); return(obj); }
bool IRepository <T> .Match(AlphaDecimal key, EntityTag etag) { var file = GetFile(key); return(null != file && string.Equals(etag, RecordFile.Load(file).ToRecord <T>().Etag, StringComparison.OrdinalIgnoreCase)); }
AbsoluteUri IRepository <T> .ToUrn(AlphaDecimal key) { var record = ToRecord(Select(key)); return(null == record ? null : record.Urn); }
public void op_Extract_FileInfo_DirectoryInfoMissing() { using (var temp = new TempDirectory()) { var source = new FileInfo("example.txt.gz"); var destination = temp.Info.ToDirectory(AlphaDecimal.Random()); Assert.Throws <DirectoryNotFoundException>(() => GZip.Extract(source, destination)); } }
public void op_Clear() { var obj = new MemoryCacheCollection { { AlphaDecimal.Random(), new object() } }; Assert.Equal(1, obj.Count); obj.Clear(); Assert.Equal(0, obj.Count); }
protected override void OnVerify(IRepository <T> repository) { if (null == repository) { throw new ArgumentNullException("repository"); } if (repository.Delete(AlphaDecimal.Random())) { throw new RepositoryTestException(Resources.Repository_ExpectWhenDoesNotExist_ExceptionMessage.FormatWith("Delete", "false")); } }
protected override void OnVerify(IRepository <T> repository) { if (null == repository) { throw new ArgumentNullException("repository"); } if (repository.ModifiedSince(AlphaDecimal.Random(), DateTime.MinValue)) { throw new RepositoryTestException(Resources.Repository_ModifiedSince_ReturnsTrue_ExceptionMessage); } }
bool IRepository <T> .ModifiedSince(AlphaDecimal key, DateTime value) { var record = Repository.Select(key); if (null == record) { return(false); } return(record.Modified.HasValue && record.Modified.Value > value); }
bool IRepository <T> .Delete(AlphaDecimal key) { var file = GetFile(key); if (null == file) { return(false); } file.Delete(); return(true); }
protected override void OnVerify(IRepository <T> repository) { if (null == repository) { throw new ArgumentNullException("repository"); } if (repository.Match(AlphaDecimal.Random(), "\"{0}\"".FormatWith(Guid.NewGuid()))) { throw new RepositoryTestException(Resources.Repository_Match_ReturnsTrue_ExceptionMessage); } }
public void op_Extract_FileInfoMissing_DirectoryInfo() { using (var temp = new TempDirectory()) { var source = new FileInfo(AlphaDecimal.Random()); // ReSharper disable AccessToDisposedClosure Assert.Throws <FileNotFoundException>(() => GZip.Extract(source, temp.Info)); // ReSharper restore AccessToDisposedClosure } }
public static string RawQueryString(this HttpRequestBase request, AlphaDecimal? token, string whence) { if (!string.IsNullOrEmpty(whence)) { whence = HttpUtility.UrlEncode(whence); } var buffer = new StringBuilder(); if (token.HasValue) { buffer.Append("[{0}]".FormatWith(token.Value)); } var parts = RawQueryStringParts(request); if (0 != parts.Length) { if ("[]" != parts[0]) { var existing = Token(parts[0]); if (!existing.HasValue) { buffer.AppendFormat(CultureInfo.InvariantCulture, "{0}{1}", 0 == buffer.Length ? string.Empty : "&", parts[0]); } } for (var i = 1; i < parts.Length; i++) { if (!parts[i].StartsWith("whence=", StringComparison.OrdinalIgnoreCase)) { buffer.AppendFormat(CultureInfo.InvariantCulture, "{0}{1}", 0 == buffer.Length ? string.Empty : "&", parts[i]); } } } if (!string.IsNullOrEmpty(whence)) { buffer.AppendFormat(CultureInfo.InvariantCulture, "{0}whence={1}", 0 == buffer.Length ? string.Empty : "&", whence); } return (0 == buffer.Length ? string.Empty : "?") + buffer; }
public void op_GetTypeCode() { const TypeCode expected = TypeCode.Int64; IConvertible value = new AlphaDecimal(); var actual = value.GetTypeCode(); Assert.Equal(expected, actual); }
public static string RawQueryString(this HttpRequestBase request, AlphaDecimal? token) { return request.RawQueryString(token, null); }
public void opImplicit_AlphaDecimal_short() { const short value = 0; var expected = new AlphaDecimal(); AlphaDecimal actual = value; Assert.Equal(expected, actual); }
public void opImplicit_AlphaDecimal_BigInteger() { var value = BigInteger.Zero; var expected = new AlphaDecimal(); AlphaDecimal actual = value; Assert.Equal(expected, actual); }
public void opImplicit_AlphaDecimal_GuidEmpty() { var expected = new AlphaDecimal(); AlphaDecimal actual = Guid.Empty; Assert.Equal(expected, actual); }
public void opInequality_AlphaDecimal_AlphaDecimal() { var obj = new AlphaDecimal(); var comparand = new AlphaDecimal(); Assert.False(obj != comparand); }
public void op_GetHashCode() { var expected = 0.GetHashCode(); var actual = new AlphaDecimal().GetHashCode(); Assert.Equal(expected, actual); }
public void op_ToString() { const string expected = "0"; // ReSharper disable SpecifyACultureInStringConversionExplicitly var actual = new AlphaDecimal().ToString(); // ReSharper restore SpecifyACultureInStringConversionExplicitly Assert.Equal(expected, actual); }
public void opEquality_AlphaDecimal_AlphaDecimal() { var obj = new AlphaDecimal(); var comparand = new AlphaDecimal(); Assert.True(obj == comparand); }