public void CanChangeAssociation()
        {
            ContentItem english1 = CreateOneItem<Items.TranslatedPage>(0, "english1", english);
            engine.Persister.Save(english1);

            var scope = new LanguageKeyScope(engine, english1.ID);
            ContentItem swedish1 = CreateOneItem<Items.TranslatedPage>(0, "swedish1", swedish);
            engine.Persister.Save(swedish1);

            ContentItem italian1 = CreateOneItem<Items.TranslatedPage>(0, "italian1", italian);
            engine.Persister.Save(italian1);
            scope.Dispose();

            ContentItem italian2 = CreateOneItem<Items.TranslatedPage>(0, "italian2", italian);
            engine.Persister.Save(italian2);

            ILanguageGateway gateway = engine.Resolve<ILanguageGateway>();
            gateway.Associate(new ContentItem[] { english1, italian2 });

            var translations = gateway.FindTranslations(english1);
            Assert.That(translations.Count(), Is.EqualTo(3));
            Assert.That(translations.Contains(english1));
            Assert.That(translations.Contains(swedish1));
            Assert.That(translations.Contains(italian2));
        }
Beispiel #2
0
        public void DoesntDeassociate_UnrelatedItems()
        {
            ContentItem english1 = CreateOneItem <Items.TranslatedPage>(0, "english1", english);

            engine.Persister.Save(english1);

            var         scope    = new LanguageKeyScope(engine, english1.ID);
            ContentItem swedish1 = CreateOneItem <Items.TranslatedPage>(0, "swedish1", swedish);

            engine.Persister.Save(swedish1);

            ContentItem italian1 = CreateOneItem <Items.TranslatedPage>(0, "italian1", italian);

            engine.Persister.Save(italian1);
            scope.Dispose();

            ContentItem italian2 = CreateOneItem <Items.TranslatedPage>(0, "italian2", italian);

            engine.Persister.Save(italian2);

            ILanguageGateway gateway = engine.Resolve <ILanguageGateway>();

            gateway.Associate(new ContentItem[] { swedish1, italian2 });

            var translations = gateway.FindTranslations(english1);

            Assert.That(translations.Count(), Is.EqualTo(3));
            Assert.That(translations.Contains(english1));
            Assert.That(translations.Contains(swedish1));
            Assert.That(translations.Contains(italian2));
        }