public void SpecialCases() { // Enhance JohnT: At some point we may want to intercept Sense.FullReferenceName, which uses HeadWord and // outline sense number. This is not currently necessary because, although it is marked as a Viewable property, // it is not currently used in the Dictionary view. // Don't show pictures of unpublished senses. int picsOfSensesFlid = Cache.MetaDataCacheAccessor.GetFieldId2(LexEntryTags.kClassId, "PicturesOfSenses", false); Assert.That(Cache.DomainDataByFlid.get_VecSize(m_hot.Hvo, picsOfSensesFlid), Is.EqualTo(1)); Assert.That(m_decorator.get_VecSize(m_hot.Hvo, picsOfSensesFlid), Is.EqualTo(0)); // Sense.LexSenseOutline: sense 2 of hot is not published. int senseOutlineFlid = Cache.MetaDataCacheAccessor.GetFieldId2(LexSenseTags.kClassId, "LexSenseOutline", false); Assert.That(Cache.DomainDataByFlid.get_StringProp(m_desirable.Hvo, senseOutlineFlid).Text, Is.EqualTo("3")); Assert.That(m_decorator.get_StringProp(m_desirable.Hvo, senseOutlineFlid).Text, Is.EqualTo("2")); Assert.That(Cache.DomainDataByFlid.get_StringProp(m_fastCar.Hvo, senseOutlineFlid).Text, Is.EqualTo("3.1")); Assert.That(m_decorator.get_StringProp(m_fastCar.Hvo, senseOutlineFlid).Text, Is.EqualTo("2.1")); // Sense.MLOwnerOutlineName int mlOwnerOutlineFlid = Cache.MetaDataCacheAccessor.GetFieldId2(LexSenseTags.kClassId, "MLOwnerOutlineName", false); Assert.That(Cache.DomainDataByFlid.get_MultiStringAlt(m_desirable.Hvo, mlOwnerOutlineFlid, Cache.DefaultVernWs).Text, Is.EqualTo("hot 3")); Assert.That(m_decorator.get_MultiStringAlt(m_desirable.Hvo, mlOwnerOutlineFlid, Cache.DefaultVernWs).Text, Is.EqualTo("hot 2")); Assert.That(Cache.DomainDataByFlid.get_MultiStringAlt(m_fastCar.Hvo, mlOwnerOutlineFlid, Cache.DefaultVernWs).Text, Is.EqualTo("hot 3.1")); Assert.That(m_decorator.get_MultiStringAlt(m_fastCar.Hvo, mlOwnerOutlineFlid, Cache.DefaultVernWs).Text, Is.EqualTo("hot 2.1")); Assert.That(Cache.DomainDataByFlid.get_MultiStringAlt(m_blank2.SensesOS[0].Hvo, mlOwnerOutlineFlid, Cache.DefaultVernWs).Text, Is.EqualTo("blank2")); Assert.That(m_decorator.get_MultiStringAlt(m_blank2.SensesOS[0].Hvo, mlOwnerOutlineFlid, Cache.DefaultVernWs).Text, Is.EqualTo("blank1")); // Entry.PublishAsMinorEntry int publishAsMinorEntryFlid = Cache.MetaDataCacheAccessor.GetFieldId2(LexEntryTags.kClassId, "PublishAsMinorEntry", false); Assert.That(Cache.DomainDataByFlid.get_BooleanProp(m_hotBlank.Hvo, publishAsMinorEntryFlid), Is.True); Assert.That(m_decorator.get_BooleanProp(m_hotBlank.Hvo, publishAsMinorEntryFlid), Is.False); Assert.That(m_decorator.get_BooleanProp(m_hotWater.Hvo, publishAsMinorEntryFlid), Is.True); }