Repository navigation
Expand file tree
/
Copy pathIOTests.cs
More file actions
75 lines (66 loc) · 2.52 KB
/
Copy pathIOTests.cs
File metadata and controls
75 lines (66 loc) · 2.52 KB
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System.Linq;
using System.IO;
using System.Text;
using Bigtree.Algorithm.SVM;
using Bigtree.Algorithm.SVMTest;
namespace Bigtree.Algorithm.UnitTest.SVM
{
[TestClass]
public class IOTests
{
[TestMethod]
public void ReadProblem()
{
Problem expected = SVMUtilities.CreateTwoClassProblem(100);
Problem actual = Problem.Read("train0.problem");
Assert.AreEqual(expected, actual);
}
[TestMethod]
public void WriteProblem()
{
Problem prob = SVMUtilities.CreateTwoClassProblem(100);
using (MemoryStream stream = new MemoryStream())
using (StreamReader input = new StreamReader("train0.problem"))
{
Problem.Write(stream, prob);
string expected = input.ReadToEnd().Replace("\r\n", "\n");
string actual = Encoding.ASCII.GetString(stream.ToArray());
Assert.AreEqual(expected, actual);
}
}
[TestMethod]
public void ReadModel()
{
Problem train = SVMUtilities.CreateTwoClassProblem(100);
Parameter param = new Parameter();
RangeTransform transform = RangeTransform.Compute(train);
Problem scaled = transform.Scale(train);
param.KernelType = KernelType.LINEAR;
Training.SetRandomSeed(SVMUtilities.TRAINING_SEED);
Model expected = Training.Train(scaled, param);
Model actual = Model.Read("svm0.model");
Assert.AreEqual(expected, actual);
}
[TestMethod]
public void WriteModel()
{
Problem train = SVMUtilities.CreateTwoClassProblem(100);
Parameter param = new Parameter();
RangeTransform transform = RangeTransform.Compute(train);
Problem scaled = transform.Scale(train);
param.KernelType = KernelType.LINEAR;
Training.SetRandomSeed(SVMUtilities.TRAINING_SEED);
Model model = Training.Train(scaled, param);
using (MemoryStream stream = new MemoryStream())
using (StreamReader input = new StreamReader("svm0.model"))
{
Model.Write(stream, model);
string expected = input.ReadToEnd().Replace("\r\n", "\n");
string actual = Encoding.ASCII.GetString(stream.ToArray());
Assert.AreEqual(expected, actual);
}
}
}
}