This repository has been archived on 2024-11-28. You can view files and clone it, but cannot push or open issues or pull requests.
Incam_SGD/ktwebservice/nunit/folder.cs

180 lines
5.6 KiB
C#

using NUnit.Framework;
using System;
using System.IO;
namespace MonoTests.KnowledgeTree
{
[TestFixture]
public class FolderTest : KTTest
{
private int _folder_id;
private int _subfolder_id;
[SetUp]
public void SetUp()
{
}
[TearDown]
public void TearDown()
{
}
[Test]
public void GetFolderDetail()
{
kt_folder_detail response = this._kt.get_folder_detail(this._session, 1);
Assert.AreEqual(0, response.status_code);
Assert.AreEqual(1, response.id);
Assert.AreEqual("Root Folder", response.folder_name);
Assert.AreEqual(0, response.parent_id);
Assert.AreEqual("/", response.full_path);
}
[Test]
public void AddFolder()
{
kt_folder_detail response = this._kt.create_folder(this._session, 1, "kt_unit_test");
Assert.AreEqual(0,response.status_code);
this._folder_id = response.id;
response = this._kt.create_folder(this._session, this._folder_id, "subfolder");
Assert.AreEqual(0,response.status_code);
this._subfolder_id = response.id;
}
[Test]
public void GetFolderByName()
{
kt_folder_detail response = this._kt.get_folder_detail_by_name(this._session, "/kt_unit_test");
Assert.AreEqual(0,response.status_code);
Assert.AreEqual(this._folder_id, response.id);
response = this._kt.get_folder_detail_by_name(this._session, "kt_unit_test");
Assert.AreEqual(0,response.status_code);
Assert.AreEqual(this._folder_id, response.id);
response = this._kt.get_folder_detail_by_name(this._session, "kt_unit_test/subfolder");
Assert.AreEqual(0,response.status_code);
Assert.AreEqual(this._subfolder_id,response.id);
response = this._kt.get_folder_detail_by_name(this._session, "kt_unit_test/subfolder2");
Assert.IsFalse(response.status_code == 0);
}
[Test]
public void GetFolderContents()
{
kt_folder_contents response = this._kt.get_folder_contents(this._session, this._folder_id, 1, "DF");
Assert.AreEqual(0,response.status_code);
Assert.AreEqual(this._folder_id,response.folder_id);
Assert.AreEqual("kt_unit_test", response.folder_name);
Assert.AreEqual("kt_unit_test", response.full_path);
kt_folder_contents response2 = this._kt.get_folder_contents(this._session, this._subfolder_id, 1, "DF");
Assert.AreEqual(0, response2.status_code);
Assert.AreEqual(this._subfolder_id, response2.folder_id);
Assert.AreEqual("subfolder", response2.folder_name);
Assert.AreEqual("kt_unit_test/subfolder", response2.full_path);
}
[Test]
public void RenameFolder()
{
kt_response response = this._kt.rename_folder(this._session, this._subfolder_id, "subfolde'r2");
Assert.AreEqual(0, response.status_code);
kt_folder_detail response2 = this._kt.get_folder_detail(this._session, this._subfolder_id);
Assert.AreEqual(0, response2.status_code);
Assert.AreEqual(this._subfolder_id, response2.id);
Assert.AreEqual("subfolde-r2", response2.folder_name);
Assert.AreEqual(this._folder_id, response2.parent_id);
Assert.AreEqual("kt_unit_test/subfolde-r2", response2.full_path);
}
[Test]
public void RemoveFolder()
{
kt_response response = this._kt.delete_folder(this._session, this._folder_id, "unit testing remove");
Assert.AreEqual(0, response.status_code);
}
[Test]
public void AddFolderWithSpecialCharacters()
{
kt_folder_detail response = this._kt.create_folder(this._session, 1, "kt.unit.test");
Assert.AreEqual(0,response.status_code);
Assert.AreEqual("kt.unit.test",response.folder_name);
response = this._kt.create_folder(this._session, 1, "kt ' unit \" test");
Assert.AreEqual(0,response.status_code);
Assert.AreEqual("kt - unit - test",response.folder_name);
// this fails because the previous folder makes a folder with the same name because of invalid character substitution
response = this._kt.create_folder(this._session, 1, "kt - unit - test");
Assert.AreEqual(22,response.status_code);
// Assert.AreEqual("kt - unit - test",response.folder_name);
response = this._kt.get_folder_detail_by_name(this._session, "/kt ' unit \" test");
Assert.AreEqual(0,response.status_code);
Assert.AreEqual("kt - unit - test",response.folder_name);
}
[Test]
public void CopyFolder()
{
kt_folder_detail response = this._kt.create_folder(this._session, 1, "kt_unit_test2");
Assert.AreEqual(0,response.status_code);
this._folder_id = response.id;
response = this._kt.create_folder(this._session, 1, "subfolder");
Assert.AreEqual(0,response.status_code);
this._subfolder_id = response.id;
response = this._kt.copy_folder(this._session, this._folder_id, this._subfolder_id, "copy reason");
Assert.AreEqual(0,response.status_code);
Assert.AreEqual(this._subfolder_id,response.parent_id);
Assert.AreEqual("kt_unit_test2",response.folder_name);
}
[Test]
public void MoveFolder()
{
kt_folder_detail response = this._kt.create_folder(this._session, 1, "kt_unit_test3");
Assert.AreEqual(0,response.status_code);
this._folder_id = response.id;
response = this._kt.create_folder(this._session, 1, "subfolder3");
Assert.AreEqual(0,response.status_code);
this._subfolder_id = response.id;
response = this._kt.move_folder(this._session, this._folder_id, this._subfolder_id, "move reason");
Assert.AreEqual(0,response.status_code);
Assert.AreEqual(this._folder_id,response.id);
Assert.AreEqual(this._subfolder_id,response.parent_id);
Assert.AreEqual("kt_unit_test3",response.folder_name);
}
}
}