public void 正解判定テスト() { var ankimonItem = new AnkimonItem("", new [] { "a", "b", "." }.Select(x => new MondaiWord(x))); var ankimonRowContainer = new AnkimonRowContainer(); var wordCardContainer = ankimonRowContainer.WordCardContainer; ankimonRowContainer.AnkimonItem = ankimonItem; var a = new WordCard("a"); wordCardContainer.Items.Add(a); var b = new WordCard("b"); wordCardContainer.Items.Add(b); Assert.False(ankimonRowContainer.正解判定()); var d = new WordCard("."); wordCardContainer.Items.Add(d); Assert.True(ankimonRowContainer.正解判定()); }
public void Test2() { var ankimonRowContainer = new AnkimonRowContainer() { Left = 1, Top = 10, }; var label = ankimonRowContainer.Label; var wordCardContainer = ankimonRowContainer.WordCardContainer; // label Assert.AreSame(ankimonRowContainer.Items[0], label); Assert.AreEqual(DrawingObjectPosition.Static, label.Position); Assert.AreEqual(label.Height, ankimonRowContainer.Height); Assert.AreEqual ( new PointF(1, 10), new PointF(ankimonRowContainer.OuterLeft, ankimonRowContainer.OuterTop) ); // wordCardContainer Assert.AreSame(ankimonRowContainer.Items[1], wordCardContainer); Assert.AreEqual(DrawingObjectPosition.Absolute, wordCardContainer.Position); Assert.AreEqual ( new PointF(1 + label.OuterWidth, 10), new PointF(wordCardContainer.OuterLeft, wordCardContainer.OuterTop) ); var a = new WordCard("a"); var b = new WordCard("b"); wordCardContainer.Items.Add(a); wordCardContainer.Items.Add(b); // a // Assert.AreEqual(50, a.Width); Assert.AreEqual ( new PointF(wordCardContainer.OuterLeft, 10f), new PointF(a.OuterLeft, a.OuterTop) ); // b // Assert.AreEqual(50, b.Width); // リリースビルドだと誤差が出る。 { var s = new PointF(a.OuterRight, 10f); var t = new PointF(b.OuterLeft, b.OuterTop); Assert.AreEqual(s.X, t.X, 0.0001d); Assert.AreEqual(s.Y, t.Y, 0.0001d); } // aの幅変更 a.Width = 30; Assert.AreEqual ( new PointF(a.OuterRight, 10f), new PointF(b.OuterLeft, b.OuterTop) ); }
public void WordCardContainerにWordCard以外のものを入れたら例外() { var ankimonRowContainer = new AnkimonRowContainer(); var wordCardContainer = ankimonRowContainer.WordCardContainer; var a = new WordCard("a"); wordCardContainer.Items.Add(a); Assert.Throws<InvalidCastException>(() => { var b = new EigoTestLabelItem("b"); wordCardContainer.Items.Add(b); }); }