public void StevensvPublicis()
        {
            var testContract = new ComLawContract <Promise>
            {
                Offer      = new SomeEmail(),
                Acceptance = o => o is SomeEmail ? new SomeEmailResponse() : null,
                Assent     = new MutualAssent
                {
                    IsApprovalExpressed = lp => true,
                    TermsOfAgreement    = lp => GetTerms()
                }
            };

            testContract.Consideration = new Consideration <Promise>(testContract)
            {
                IsGivenByOfferee  = (lp, p) => true,
                IsSoughtByOfferor = (lp, p) => true
            };


            var testSubject = new StatuteOfFrauds <Promise>(testContract);

            testSubject.Scope.IsYearsInPerformance = c => true;
            testSubject.IsSufficientWriting        = c => c.Offer is SomeEmail && c.Acceptance(c.Offer) is SomeEmailResponse;
            testSubject.IsSigned = c => c.Offer is SomeEmail && c.Acceptance(c.Offer) is SomeEmailResponse;
            var testResult = testSubject.IsValid(new Stevens(), new Publicis());

            //the statute of frauds written\signed bits are very easy with electronic emails and such
            Assert.IsFalse(testResult);
            Console.WriteLine(testSubject.ToString());
        }
Example #2
0
        public void McInerneyvCharterGolf()
        {
            var testContract = new ComLawContract <Promise>
            {
                Offer      = new CharterGolfCounterOfferEmpl(),
                Acceptance = o => o is CharterGolfCounterOfferEmpl ? new McInerneyContEmplAtCharter() : null,
                Assent     = new MutualAssent
                {
                    IsApprovalExpressed = lp => true,
                    TermsOfAgreement    = lp => GetTerms()
                }
            };

            testContract.Consideration = new Consideration <Promise>(testContract)
            {
                IsGivenByOfferee  = (lp, p) => true,
                IsSoughtByOfferor = (lp, p) => true
            };

            var testSubject = new StatuteOfFrauds <Promise>(testContract);

            //court finds it is in scope to statute of frauds
            testSubject.Scope.IsYearsInPerformance = c => true;

            var testResult = testSubject.IsValid(new CharterGolf(), new McInerney());

            //so it is a valid defense because it lacks sufficient writing (was oral agreement)
            Assert.IsTrue(testResult);
            Console.WriteLine(testSubject.ToString());
        }
        public void CrabtreevElizabethSales()
        {
            var testContract = new ComLawContract <Promise>
            {
                Offer      = new ElizabethSalesOfferTelephoneMemorandum(),
                Acceptance = o => o is ElizabethSalesOfferTelephoneMemorandum ? new AcceptElizabethOffer() : null,
                Assent     = new MutualAssent
                {
                    IsApprovalExpressed = lp => true,
                    TermsOfAgreement    = lp => GetTerms()
                }
            };

            testContract.Consideration = new Consideration <Promise>(testContract)
            {
                IsGivenByOfferee  = (lp, p) => true,
                IsSoughtByOfferor = (lp, p) => true
            };

            var testSubject = new StatuteOfFrauds <Promise>(testContract);

            //it is within the statute
            testSubject.Scope.IsYearsInPerformance = c => true;
            testSubject.IsSufficientWriting        = c => c.Offer is ElizabethSalesOfferTelephoneMemorandum;
            //this was the main doctrine point of this case, the signature-part
            //of the statute was scattered about but its overall intent and thereby assent are obvious
            testSubject.IsSigned = c => true;

            var testResult = testSubject.IsValid(new ElizabethSales(), new Crabtree());

            //the defendant was attempting to avoid contract enforcement by
            // saying it lacked signature part required by statute of frauds
            Assert.IsFalse(testResult);
            Console.WriteLine(testSubject.ToString());
        }
        public void GuenthervAmerTex()
        {
            var testContract = new ComLawContract <Promise>
            {
                Offer      = new LandNextToPottersCreekTx(),
                Acceptance = o => o is LandNextToPottersCreekTx ? new AcceptLandNextToPottersCreekTx() : null,
                Assent     = new MutualAssent
                {
                    IsApprovalExpressed = lp => true,
                    TermsOfAgreement    = lp => GetTerms()
                }
            };

            testContract.Consideration = new Consideration <Promise>(testContract)
            {
                IsGivenByOfferee  = (lp, p) => true,
                IsSoughtByOfferor = (lp, p) => true
            };

            var testSubject = new StatuteOfFrauds <Promise>(testContract)
            {
                IsSufficientWriting = c =>
                {
                    var o = c.Offer as LandNextToPottersCreekTx;
                    return(o?.IsCourtAgreeCouldMapLandOnGround ?? false);
                },
                IsSigned = c => true
            };

            testSubject.Scope.IsExecutorsPersonalResources = c => true;

            var testResult = testSubject.IsValid(new Guenther(), new AmerTex());

            //the court concludes the map is too vague to be used to plot the ground
            Assert.IsTrue(testResult);
            Console.WriteLine(testSubject.ToString());
        }