Browse Source

add custom output test

tags/v0.40-tf2.4-tstring
lsylusiyao Esther Hu 4 years ago
parent
commit
66ef235f51
1 changed files with 55 additions and 0 deletions
  1. +55
    -0
      test/TensorFlowNET.Keras.UnitTest/OutputTest.cs

+ 55
- 0
test/TensorFlowNET.Keras.UnitTest/OutputTest.cs View File

@@ -0,0 +1,55 @@
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static Tensorflow.Binding;
using static Tensorflow.KerasApi;
using Tensorflow.Keras;

namespace Tensorflow.Keras.UnitTest
{
[TestClass]
public class OutputTest
{
[TestMethod]
public void OutputRedirectTest()
{
using var newOutput = new System.IO.StringWriter();
tf_output_redirect = newOutput;
var model = keras.Sequential();
model.add(keras.Input(shape: 16));
model.summary();
string output = newOutput.ToString();
Assert.IsTrue(output.StartsWith("Model: sequential"));
tf_output_redirect = null; // don't forget to change it to null !!!!
}

[TestMethod]
public void SwitchOutputsTest()
{
using var newOutput = new System.IO.StringWriter();
var model = keras.Sequential();
model.add(keras.Input(shape: 16));
model.summary(); // Console.Out

tf_output_redirect = newOutput; // change to the custom one
model.summary();
string firstOutput = newOutput.ToString();
Assert.IsTrue(firstOutput.StartsWith("Model: sequential"));

// if tf_output_reditect is StringWriter, calling "set" will make the writer clear.
tf_output_redirect = null; // null means Console.Out
model.summary();

tf_output_redirect = newOutput; // again, to test whether the newOutput is clear.
model.summary();
string secondOutput = newOutput.ToString();
Assert.IsTrue(secondOutput.StartsWith("Model: sequential"));

Assert.IsTrue(firstOutput == secondOutput);
tf_output_redirect = null; // don't forget to change it to null !!!!
}
}
}

Loading…
Cancel
Save