Permalink
Browse files

Adaptation of UT projects to the old structure.

  • Loading branch information...
1 parent 6b8cfa9 commit 45dc007bf270286f6a6905efc2a6908c83b042d6 pawel-kaplanski committed Sep 4, 2012
Showing with 62 additions and 523 deletions.
  1. +0 −81 test/FluentCassandra.MoreTests/FluentCassandra.MoreTests.csproj
  2. +0 −36 test/FluentCassandra.MoreTests/Properties/AssemblyInfo.cs
  3. +0 −212 test/FluentCassandra.MoreTests/Tools.cs
  4. +0 −8 test/FluentCassandra.MoreTests/app.config
  5. +6 −1 test/FluentCassandra.StressTest/FluentCassandra.StressTest.csproj
  6. +35 −0 test/FluentCassandra.StressTest/Main.cs
  7. 0 test/FluentCassandra.StressTest/{Program.cs → StressTest1.cs}
  8. +9 −7 test/{FluentCassandra.UltraStressTest/Program.cs → FluentCassandra.StressTest/StressTest2.cs}
  9. +1 −1 test/{FluentCassandra.MoreTests → FluentCassandra.Tests}/CassandraCql3DatabaseSetup.cs
  10. +1 −1 test/{FluentCassandra.MoreTests → FluentCassandra.Tests}/CompatibilityCassandraDatabaseSetup.cs
  11. +7 −0 test/FluentCassandra.Tests/FluentCassandra.Tests.csproj
  12. +1 −1 test/{FluentCassandra.MoreTests → FluentCassandra.Tests}/GenericDatabaseSetup.cs
  13. +1 −2 test/{FluentCassandra.MoreTests/Operations → FluentCassandra.Tests/Linq}/Cql3LinqTest.cs
  14. 0 test/{FluentCassandra.MoreTests → FluentCassandra.Tests}/Operations/Cql3Test.cs
  15. 0 test/{FluentCassandra.MoreTests → FluentCassandra.Tests}/Operations/Cql3vs2CompatibilityTest.cs
  16. +1 −0 test/FluentCassandra.Tests/app.config
  17. +0 −87 test/FluentCassandra.UltraStressTest/FluentCassandra.UltraStressTest.csproj
  18. +0 −36 test/FluentCassandra.UltraStressTest/Properties/AssemblyInfo.cs
  19. +0 −47 test/FluentCassandra.UltraStressTest/Properties/app.manifest
  20. +0 −3 test/FluentCassandra.UltraStressTest/app.config
@@ -1,81 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
- <ProductVersion>8.0.30703</ProductVersion>
- <SchemaVersion>2.0</SchemaVersion>
- <ProjectGuid>{05682974-C961-4A22-9F44-052859F00C15}</ProjectGuid>
- <OutputType>Library</OutputType>
- <AppDesignerFolder>Properties</AppDesignerFolder>
- <RootNamespace>FluentCassandra.MoreTests</RootNamespace>
- <AssemblyName>FluentCassandra.MoreTests</AssemblyName>
- <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
- <TargetFrameworkProfile>
- </TargetFrameworkProfile>
- <FileAlignment>512</FileAlignment>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
- <PlatformTarget>x86</PlatformTarget>
- <DebugSymbols>true</DebugSymbols>
- <DebugType>full</DebugType>
- <Optimize>false</Optimize>
- <OutputPath>bin\Debug\</OutputPath>
- <DefineConstants>DEBUG;TRACE</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
- <PlatformTarget>x86</PlatformTarget>
- <DebugType>pdbonly</DebugType>
- <Optimize>true</Optimize>
- <OutputPath>bin\Release\</OutputPath>
- <DefineConstants>TRACE</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- </PropertyGroup>
- <PropertyGroup>
- <StartupObject />
- </PropertyGroup>
- <ItemGroup>
- <Reference Include="System" />
- <Reference Include="System.configuration" />
- <Reference Include="System.Core" />
- <Reference Include="System.Numerics" />
- <Reference Include="System.Xml.Linq" />
- <Reference Include="System.Data.DataSetExtensions" />
- <Reference Include="Microsoft.CSharp" />
- <Reference Include="System.Data" />
- <Reference Include="System.Xml" />
- <Reference Include="xunit">
- <HintPath>..\..\packages\xunit.1.9.0.1566\lib\xunit.dll</HintPath>
- </Reference>
- </ItemGroup>
- <ItemGroup>
- <Compile Include="CompatibilityCassandraDatabaseSetup.cs" />
- <Compile Include="CassandraCql3DatabaseSetup.cs" />
- <Compile Include="GenericDatabaseSetup.cs" />
- <Compile Include="Operations\Cql3LinqTest.cs" />
- <Compile Include="Operations\Cql3Test.cs" />
- <Compile Include="Operations\Cql3vs2CompatibilityTest.cs" />
- <Compile Include="Properties\AssemblyInfo.cs" />
- <Compile Include="Tools.cs" />
- </ItemGroup>
- <ItemGroup>
- <ProjectReference Include="..\..\src\FluentCassandra.csproj">
- <Project>{EAA32600-3C2A-4B34-B9B2-5764F280FCE3}</Project>
- <Name>FluentCassandra</Name>
- </ProjectReference>
- </ItemGroup>
- <ItemGroup>
- <None Include="app.config" />
- </ItemGroup>
- <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
- <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
- Other similar extension points exist, see Microsoft.Common.targets.
- <Target Name="BeforeBuild">
- </Target>
- <Target Name="AfterBuild">
- </Target>
- -->
-</Project>
@@ -1,36 +0,0 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-// General Information about an assembly is controlled through the following
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
-[assembly: AssemblyTitle("FluentCassandra.MoreTests")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("FluentCassandra.MoreTests")]
-[assembly: AssemblyCopyright("Copyright © 2012")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// Setting ComVisible to false makes the types in this assembly not visible
-// to COM components. If you need to access a type in this assembly from
-// COM, set the ComVisible attribute to true on that type.
-[assembly: ComVisible(false)]
-
-// The following GUID is for the ID of the typelib if this project is exposed to COM
-[assembly: Guid("e0aaf347-f43f-41b9-8633-d47e094c92b0")]
-
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-//
-// You can specify all the values or you can default the Build and Revision Numbers
-// by using the '*' as shown below:
-// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
@@ -1,212 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-
-namespace FluentCassandra.MoreTests
-{
- public class KeyAttribute : Attribute
- {
- public int Level;
- }
-
-
- public static class Tools
- {
- /// <summary>
- /// Hex string lookup table.
- /// </summary>
- private static readonly string[] HexStringTable = new string[]
-{
- "00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "0A", "0B", "0C", "0D", "0E", "0F",
- "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "1A", "1B", "1C", "1D", "1E", "1F",
- "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "2A", "2B", "2C", "2D", "2E", "2F",
- "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "3A", "3B", "3C", "3D", "3E", "3F",
- "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "4A", "4B", "4C", "4D", "4E", "4F",
- "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "5A", "5B", "5C", "5D", "5E", "5F",
- "60", "61", "62", "63", "64", "65", "66", "67", "68", "69", "6A", "6B", "6C", "6D", "6E", "6F",
- "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", "7A", "7B", "7C", "7D", "7E", "7F",
- "80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "8A", "8B", "8C", "8D", "8E", "8F",
- "90", "91", "92", "93", "94", "95", "96", "97", "98", "99", "9A", "9B", "9C", "9D", "9E", "9F",
- "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "AA", "AB", "AC", "AD", "AE", "AF",
- "B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "BA", "BB", "BC", "BD", "BE", "BF",
- "C0", "C1", "C2", "C3", "C4", "C5", "C6", "C7", "C8", "C9", "CA", "CB", "CC", "CD", "CE", "CF",
- "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "D8", "D9", "DA", "DB", "DC", "DD", "DE", "DF",
- "E0", "E1", "E2", "E3", "E4", "E5", "E6", "E7", "E8", "E9", "EA", "EB", "EC", "ED", "EE", "EF",
- "F0", "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "FA", "FB", "FC", "FD", "FE", "FF"
-};
- /// <summary>
- /// Returns a hex string representation of an array of bytes.
- /// http://blogs.msdn.com/b/blambert/archive/2009/02/22/blambert-codesnip-fast-byte-array-to-hex-string-conversion.aspx
- /// </summary>
- /// <param name="value">The array of bytes.</param>
- /// <returns>A hex string representation of the array of bytes.</returns>
- public static string ToHex(this byte[] value)
- {
- StringBuilder stringBuilder = new StringBuilder();
- if (value != null)
- {
- foreach (byte b in value)
- {
- stringBuilder.Append(HexStringTable[b]);
- }
- }
-
- return stringBuilder.ToString();
- }
-
- static readonly Dictionary<Type, string> CQLTypeNames = new Dictionary<Type, string>() {
- { typeof(Int32), "int" },
- { typeof(Int64), "bigint" },
- { typeof(String), "text" },
- { typeof(byte[]), "blob" },
- { typeof(Boolean), "boolean" },
- { typeof(Decimal), "decimal" },
- { typeof(Double), "double" },
- { typeof(Single), "float" },
- { typeof(Guid), "uuid" },
- };
-
- public static string Encode(object obj)
- {
- if (obj is String) return Encode(obj as String);
- else if (obj is Boolean) return Encode((Boolean)obj);
- else if (obj is byte[]) return Encode((byte[])obj);
- else if (obj is Double) return Encode((Double)obj);
- else if (obj is Single) return Encode((Single)obj);
- else if (obj is Decimal) return Encode((Decimal)obj);
- else return obj.ToString();
- }
-
- public static string Encode(string str)
- {
- return '\'' + str.Replace("\'", "\'\'") + '\'';
- }
-
- public static string Encode(bool val)
- {
- return '\'' + (val ? "true" : "false") + '\'';
- }
-
- public static string Encode(byte[] val)
- {
- return val.ToHex();
- }
-
- public static string Encode(Double val)
- {
- return val.ToString(new CultureInfo("en-US"));
- }
-
- public static string Encode(Single val)
- {
- return val.ToString(new CultureInfo("en-US"));
- }
-
- public static string Encode(Decimal val)
- {
- return val.ToString(new CultureInfo("en-US"));
- }
-
- public static string GetCreateCQL(Type rowType)
- {
- StringBuilder ret = new StringBuilder();
- ret.Append("CREATE TABLE ");
- ret.Append(rowType.Name);
- ret.Append("(");
-
- SortedDictionary<int, string> keys = new SortedDictionary<int, string>();
- var props = rowType.GetProperties();
- foreach (var prop in props)
- {
- ret.Append(prop.Name);
- ret.Append(" ");
- ret.Append(CQLTypeNames[prop.PropertyType]);
- ret.Append(",");
- var mea = prop.GetCustomAttributes(typeof(KeyAttribute), true).FirstOrDefault() as KeyAttribute;
- if (mea != null)
- {
- keys.Add(mea.Level, prop.Name);
- }
- }
- ret.Append("PRIMARY KEY(");
- bool first = true;
- foreach (var kv in keys)
- {
- if (first) first = false;
- else
- ret.Append(",");
- ret.Append(kv.Value);
- }
- ret.Append("));");
- return ret.ToString();
- }
-
- public static string GetInsertCQL(object row)
- {
- var rowType = row.GetType();
- StringBuilder ret = new StringBuilder();
- ret.Append("INSERT INTO ");
- ret.Append(rowType.Name);
- ret.Append("(");
-
- var props = rowType.GetProperties();
- bool first = true;
- foreach (var prop in props)
- {
- if (first) first = false; else ret.Append(",");
- ret.Append(prop.Name);
- }
- ret.Append(") VALUES (");
- first = true;
- foreach (var prop in props)
- {
- if (first) first = false; else ret.Append(",");
- ret.Append(Encode(prop.GetValue(row, null)));
- }
- ret.Append(");");
- return ret.ToString();
- }
-
- public static string GetDeleteCQL(object row)
- {
- var rowType = row.GetType();
-
- StringBuilder ret = new StringBuilder();
- ret.Append("DELETE FROM ");
- ret.Append(rowType.Name);
- ret.Append(" WHERE ");
-
- SortedDictionary<int, string> keys = new SortedDictionary<int, string>();
- var props = rowType.GetProperties();
- bool first = true;
- foreach (var prop in props)
- {
- var mea = prop.GetCustomAttributes(typeof(KeyAttribute), true).FirstOrDefault() as KeyAttribute;
- if (mea != null)
- {
- if (first) first = false; else ret.Append(" AND ");
- ret.Append(prop.Name);
- ret.Append("=");
- ret.Append(Encode(prop.GetValue(row, null)));
- }
- }
- ret.Append(";");
- return ret.ToString();
- }
-
- public static T GetRowFromCqlRow<T>(dynamic cqlRow)
- {
- T row = (T)typeof(T).GetConstructor(new Type[] { }).Invoke(new object[] { });
- var props = typeof(T).GetProperties();
- foreach (var prop in props)
- {
- dynamic val;
- cqlRow.TryGetColumn(prop.Name.ToLower(), out val);
- prop.SetValue(row, val.GetValue(prop.PropertyType), null);
- }
- return row;
- }
- }
-
-}
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<configuration>
- <appSettings>
- <add key="TestServer" value="localhost"></add>
- <add key="TestPort" value="9160"></add>
- <add key="TestKeySpace" value="moreandmoretesting"></add>
- </appSettings>
-</configuration>
@@ -34,6 +34,9 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
+ <PropertyGroup>
+ <StartupObject>FluentCassandra.StressTest.Program</StartupObject>
+ </PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
@@ -48,7 +51,9 @@
</Reference>
</ItemGroup>
<ItemGroup>
- <Compile Include="Program.cs" />
+ <Compile Include="Main.cs" />
+ <Compile Include="StressTest1.cs" />
+ <Compile Include="StressTest2.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
@@ -0,0 +1,35 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace FluentCassandra.StressTest
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ Console.Error.WriteLine("Stress Test 1");
+ try
+ {
+ StressTest.StressTest1.Test();
+ }
+ catch (Exception ex)
+ {
+ Console.Error.WriteLine(ex.Message);
+ Console.Error.WriteLine(ex.StackTrace);
+ }
+ Console.Error.WriteLine("");
+ Console.Error.WriteLine("Stress Test 2");
+ try
+ {
+ StressTest.StressTest2.Test();
+ }
+ catch (Exception ex)
+ {
+ Console.Error.WriteLine(ex.Message);
+ Console.Error.WriteLine(ex.StackTrace);
+ }
+ }
+ }
+}
Oops, something went wrong.

0 comments on commit 45dc007

Please sign in to comment.