aboutsummaryrefslogtreecommitdiff
path: root/src/ProtocolBuffers.Test/MessageUtilTest.cs
blob: 16495bf517bffdf6015ccebba8b087abc06bb0a4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
using System;
using System.Collections.Generic;
using System.Text;
using Google.ProtocolBuffers.TestProtos;
using NUnit.Framework;

namespace Google.ProtocolBuffers {
  [TestFixture]
  public class MessageUtilTest {

    [Test]
    [ExpectedException(typeof(ArgumentNullException))]
    public void NullTypeName() {
      MessageUtil.GetDefaultMessage((string)null);
    }

    [Test]
    [ExpectedException(typeof(ArgumentException))]
    public void InvalidTypeName() {
      MessageUtil.GetDefaultMessage("invalidtypename");
    }

    [Test]
    public void ValidTypeName() {
      Assert.AreSame(TestAllTypes.DefaultInstance, MessageUtil.GetDefaultMessage(typeof(TestAllTypes).AssemblyQualifiedName));
    }

    [Test]
    [ExpectedException(typeof(ArgumentNullException))]
    public void NullType() {
      MessageUtil.GetDefaultMessage((Type)null);
    }

    [Test]
    [ExpectedException(typeof(ArgumentException))]
    public void NonMessageType() {
      MessageUtil.GetDefaultMessage(typeof(string));
    }

    [Test]
    public void ValidType() {
      Assert.AreSame(TestAllTypes.DefaultInstance, MessageUtil.GetDefaultMessage(typeof(TestAllTypes)));
    }
  }
}