diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/Interop.COMAdmin.dll b/build/MSBuild.ExtensionPack.4.0.2.0/Interop.COMAdmin.dll new file mode 100644 index 00000000..b9383304 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/Interop.COMAdmin.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/Interop.IWshRuntimeLibrary.dll b/build/MSBuild.ExtensionPack.4.0.2.0/Interop.IWshRuntimeLibrary.dll new file mode 100644 index 00000000..2400e761 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/Interop.IWshRuntimeLibrary.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/Ionic.Zip.dll b/build/MSBuild.ExtensionPack.4.0.2.0/Ionic.Zip.dll new file mode 100644 index 00000000..7b11577f Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/Ionic.Zip.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/IronPython.Modules.dll b/build/MSBuild.ExtensionPack.4.0.2.0/IronPython.Modules.dll new file mode 100644 index 00000000..7d93410e Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/IronPython.Modules.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/IronPython.dll b/build/MSBuild.ExtensionPack.4.0.2.0/IronPython.dll new file mode 100644 index 00000000..26fe7e17 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/IronPython.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/IronRuby.Libraries.dll b/build/MSBuild.ExtensionPack.4.0.2.0/IronRuby.Libraries.dll new file mode 100644 index 00000000..65159680 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/IronRuby.Libraries.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/IronRuby.dll b/build/MSBuild.ExtensionPack.4.0.2.0/IronRuby.dll new file mode 100644 index 00000000..b19a2694 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/IronRuby.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.BizTalk.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.BizTalk.dll new file mode 100644 index 00000000..6166d6fc Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.BizTalk.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.BizTalk.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.BizTalk.pdb new file mode 100644 index 00000000..03f12d2b Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.BizTalk.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.BizTalk.xsd b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.BizTalk.xsd new file mode 100644 index 00000000..d0b503f6 --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.BizTalk.xsd @@ -0,0 +1,187 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Framework.xsd b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Framework.xsd new file mode 100644 index 00000000..485dad31 --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Framework.xsd @@ -0,0 +1,1653 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Executes .NET code dynamically. + + + + + + + Specifies the task action to do. + + + + + + + Compiles and executes code. + Required: @Code. + Optional: @Inputs, @Outputs, @Input1, @Input2, @Input3. + Outputs: "Output1", "Output2", "Output3", "OutputMethodId". + Rare Optional: @References, @UsingNamespaces, @NoDefaultParameters, @NoDefaultReferences, @NoDefaultUsingNamespaces. + + + + + + + Calls a method. The method must have been previously defined by "Define". + Required: @MethodId. + Optional: @Input1, @Input2, @Input3. + Outputs: "Output1", "Output2", "Output3". + + + + + + + Defines a method containing code. + Required: @Code. + Optional: @Inputs, @Outputs. + Outputs: "OutputMethodId". + Rare Optional: @References, @UsingNamespaces, @NoDefaultParameters, @NoDefaultReferences, @NoDefaultUsingNamespaces. + + + + + + + Creates a closure. + Required: @MethodId. + Outputs: "OutputClosureId". + + + + + + + Sets an argument value for a closure. + Required: @ClosureId, @Name, @InputValue. + + + + + + + Invokes a closure. + Required: @ClosureId. + + + + + + + Retrieves a result value from a closure. + Required: @ClosureId, @Name. + Outputs: "OutputValue" + + + + + + + Destroys a closure. + Required: @ClosureId. + + + + + + + + + + The actual method code. + Required for: "Run", "Define". + + + + + + + The input parameters for the method. + Optional for: "Run", "Define". + + + + + + + The output parameters for the method. + Optional for: "Run", "Define". + + + + + + + Additional assembly references for the method. + Optional for: "Run", "Define". + + + + + + + Additional namespace scope imports for the method. + Optional for: "Run", "Define". + + + + + + + If true, no default parameters are passed to the method. + Optional for: "Run", "Define". + + + + + + + If true, no default assembly references are linked to the method. + Optional for: "Run", "Define". + + + + + + + If true, no namespace scopes are imported for the method. + Optional for: "Run", "Define". + + + + + + + The method on which to perform the task action. + Required for: "Call", "Create". + + + + + + + The closure on which to perform the task action. + Required for: "SetInput", "Invoke", "GetOutput", "Destroy". + + + + + + + The name of the parameter to set or get. + Required for: "SetInput", "GetOutput". + + + + + + + The value to pass for this parameter. + Required for: "SetInput". + + + + + + + The value to pass for the first parameter. + Optional for: "Run", "Call". + + + + + + + The value to pass for the second parameter. + Optional for: "Run", "Call". + + + + + + + The value to pass for the third parameter. + Optional for: "Run", "Call". + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Iis7.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Iis7.dll new file mode 100644 index 00000000..30283a07 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Iis7.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Iis7.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Iis7.pdb new file mode 100644 index 00000000..55106cf2 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Iis7.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Iis7.xsd b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Iis7.xsd new file mode 100644 index 00000000..7419848e --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Iis7.xsd @@ -0,0 +1,121 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.JSharp.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.JSharp.dll new file mode 100644 index 00000000..dbf65433 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.JSharp.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.JSharp.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.JSharp.pdb new file mode 100644 index 00000000..a4602aab Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.JSharp.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.JSharp.xsd b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.JSharp.xsd new file mode 100644 index 00000000..c5c57337 --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.JSharp.xsd @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Loggers.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Loggers.dll new file mode 100644 index 00000000..6bf35035 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Loggers.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Loggers.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Loggers.pdb new file mode 100644 index 00000000..07ad5441 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Loggers.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.MSTFSBuild2008.xsd b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.MSTFSBuild2008.xsd new file mode 100644 index 00000000..ec204a2d --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.MSTFSBuild2008.xsd @@ -0,0 +1,745 @@ + + + + + + + + The Get task retrieves a read-only copy of the files and folders in a workspace by using specified options. + + + + + + + + + REQUIRED. Team Foundation Server URL. + + + + + + + The build URI. + + + + + + + REQUIRED. The workspace name. + + + + + + + The file versionspec. By default the versionspec used is T, or the latest version. + + + + + + + The items in the workspace. By default, Team Foundation Build gets all items in the workspace specified by the WorkspaceName property. + + + + + + + Specifies whether to overwrite writable files that are not checked out. + + + + + + + Populate the Gets, Replaces, Deletes and GetWarnings Item Groups + + + + + + + Specifies whether to display what would occur without actually performing the Get operation. + + + + + + + Specifies whether files are retrieved recursively. + + + + + + + Specifies whether the files are retrieved incrementally. + + + + + + + + + + + + The Label task attaches a label to the latest version of the files in the workspace. + + + + + + + + + REQUIRED. Team Foundation Server URL. + + + + + + + REQUIRED. The label name. By default, the name of the label created by Team Foundation Build is the same as the BuildNumber property. + + + + + + + The version of the file or folder. + + + + + + + Specifies the scope of the label + + + + + + + REQUIRED. The items to be labeled. + + + + + + + This corresponds to the /child option of tf.exe label command. + + + + + + + Specifies whether the files are labeled recursively. + + + + + + + The comment used for the label by Team Foundation Build. + + + + + + + + + + + + The GenCheckinNotesUpdateWorkItems task associates changesets and work items with a specified build. + + + + + + + + + REQUIRED. Team Foundation Server URL. + + + + + + + REQUIRED. The URI for the build definition. + + + + + + + The Team Foundation Build build number. + + + + + + + REQUIRED. The version number label to which the changesets and work items are associated. + + + + + + + The starting version number label from which the changesets and work items are associated. + + + + + + + Boolean property that specifies whether the Microsoft.VSTS.Build.IntegrationBuild of the associated work items should be updated with the build number. + + + + + + + + + + + + The CreateNewWorkItem task creates a new work item of the specified type and with the specified title and description. + + + + + + + + + REQUIRED. Team Foundation Server URL. + + + + + + + The Team Foundation Build build number. + + + + + + + REQUIRED. The work item description. + + + + + + + REQUIRED. The team project name. + + + + + + + REQUIRED. The work item title. + + + + + + + Specifies a list of field names and values for the created work item. + + + + + + + The work item type. + + + + + + + + + + + + The CreateWorkspaceTask task creates a workspace with the name and mapping file specified in the TFSBuild.proj file. + + + + + + + + + REQUIRED. Team Foundation Server URL. + + + + + + + REQUIRED. The URI for the build definition. + + + + + + + REQUIRED. The build directory. + + + + + + + REQUIRED. The solution root for directory for source files. + + + + + + + REQUIRED. The workspace name. + + + + + + + The comment used for the workspace. + + + + + + + + + + + + The DeleteWorkspaceTask task deletes the workspace left by the previous build. + + + + + + + + + REQUIRED. Team Foundation Server URL. + + + + + + + Indicates whether local items that are specified in the workspace mappings are deleted or not. + + + + + + + REQUIRED. The workspace name. + + + + + + + + + + + + The TestToolsTask task runs tests for an end-to-end build or for a desktop build. + + + + + + + + + The build configuration e.g. debug + + + + + + + The platform e.g. x86 + + + + + + + The Team Foundation Server URL. + + + + + + + The build number for the build. + + + + + + + The search path for test files. + + + + + + + Specifies where test results get uploaded. + + + + + + + The test metadata file. + + + + + + + The test configuration file. + + + + + + + The test list that is contained in the test metadata file. + + + + + + + The team project name. + + + + + + + The files that contain tests. + + + + + + + + + + + + The UpdateBuildNumberDropLocation updates the build number and drop location in the Team Foundation version control database. + + + + + + + + + REQUIRED. Team Foundation Server URL. + + + + + + + REQUIRED. The URI for the build definition. + + + + + + + REQUIRED. The new build number. + + + + + + + REQUIRED. The new drop location. + + + + + + + + + + + + The BuildStep task is a convenience task that adds, and potentially updates via the output ID property, a BuildStep. + + + + + + + + + REQUIRED. Team Foundation Server URL. + + + + + + + If specified, this is the Id of the build step that is updated. If not specified, a new build step is created. + + + + + + + REQUIRED. The URI for the build definition. + + + + + + + The name of the build step that this task adds. + + + + + + + The message that is displayed in the build report in the build steps section. + + + + + + + The status for the build step. + + + + + + + + + + + + The GetBuildProperties task outputs the initial values for the build properties. + + + + + + + + + REQUIRED. Team Foundation Server URL. + + + + + + + REQUIRED. The URI for the build definition. + + + + + + + + + + + + The SetBuildProperty task sets various properties for a build. + + + + + + + + + REQUIRED. Team Foundation Server URL. + + + + + + + REQUIRED. The URI for the build definition. + + + + + + + The build number. + + + + + + + The label name. + + + + + + + The Log Location. + + + + + + + + The compilation status. Valid values are Succeeded, Failed and Unknown. + + + + + + + + + + + + + + The drop location. + + + + + + + The build quality. + + + + + + + The build status. Valid values are NotStarted, InProgress, Succeeded, PartiallySucceeded, Failed, and Stopped. + + + + + + + + + + + + + + + + + The test status. Valid values are Succeeded, Failed, and Unknown. + + + + + + + + + + + + + + + + + + + The WorkspaceItemConverterTask task converts server items to local items and local items to server items. + + + + + + + + + REQUIRED. Team Foundation Server URL. + + + + + + + REQUIRED. The workspace name. + + + + + + + The workspace owner. + + + + + + + The server items that are converted to local items. + + + + + + + The local items that are converted to server items. + + + + + + + + \ No newline at end of file diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2005.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2005.dll new file mode 100644 index 00000000..b7a4d366 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2005.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2005.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2005.pdb new file mode 100644 index 00000000..1f457737 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2005.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2005.xsd b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2005.xsd new file mode 100644 index 00000000..94aa3939 --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2005.xsd @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2008.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2008.dll new file mode 100644 index 00000000..c5531116 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2008.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2008.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2008.pdb new file mode 100644 index 00000000..02e30163 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2008.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2008.xsd b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2008.xsd new file mode 100644 index 00000000..51e8ec5c --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sql2008.xsd @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.StyleCop.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.StyleCop.dll new file mode 100644 index 00000000..ba4f85e6 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.StyleCop.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.StyleCop.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.StyleCop.pdb new file mode 100644 index 00000000..d3603f2a Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.StyleCop.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.StyleCop.xsd b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.StyleCop.xsd new file mode 100644 index 00000000..04370bbf --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.StyleCop.xsd @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sync.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sync.dll new file mode 100644 index 00000000..8014be3a Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sync.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sync.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sync.pdb new file mode 100644 index 00000000..e84c135e Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sync.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sync.xsd b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sync.xsd new file mode 100644 index 00000000..a6741604 --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Sync.xsd @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.TaskFactory.Dlr.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.TaskFactory.Dlr.dll new file mode 100644 index 00000000..61e6358f Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.TaskFactory.Dlr.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.TaskFactory.Dlr.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.TaskFactory.Dlr.pdb new file mode 100644 index 00000000..c88be514 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.TaskFactory.Dlr.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.TaskFactory.PowerShell.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.TaskFactory.PowerShell.dll new file mode 100644 index 00000000..13d0dd41 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.TaskFactory.PowerShell.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.TaskFactory.PowerShell.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.TaskFactory.PowerShell.pdb new file mode 100644 index 00000000..6763baef Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.TaskFactory.PowerShell.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Tfs.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Tfs.dll new file mode 100644 index 00000000..619bff44 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Tfs.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Tfs.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Tfs.pdb new file mode 100644 index 00000000..46fc8711 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Tfs.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Tfs.xsd b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Tfs.xsd new file mode 100644 index 00000000..9a668ffd --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Tfs.xsd @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.VersionNumber.targets b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.VersionNumber.targets new file mode 100644 index 00000000..a723d57b --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.VersionNumber.targets @@ -0,0 +1,127 @@ + + + + + + 1 + 0 + + + DateString + MMdd + AutoIncrement + 00 + + + + + 1 + 0 + + + DateString + MMdd + AutoIncrement + 00 + + + + + + + + + + + + + + + + + + + + + + false + false + + + + + + + + + + + + + + + + $(CoreCompileDependsOn); + UpdateAssemblyInfoFiles + + + + + + + + + + + \ No newline at end of file diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Virtualisation.VirtualPc.xsd b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Virtualisation.VirtualPc.xsd new file mode 100644 index 00000000..61b48d0a --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.Virtualisation.VirtualPc.xsd @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.WindowsVirtualPC.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.WindowsVirtualPC.dll new file mode 100644 index 00000000..62196a4e Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.WindowsVirtualPC.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.WindowsVirtualPC.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.WindowsVirtualPC.pdb new file mode 100644 index 00000000..62295ffa Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.WindowsVirtualPC.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.dll b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.dll new file mode 100644 index 00000000..4ecd40a7 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.dll differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.dll.config b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.dll.config new file mode 100644 index 00000000..5ae72b83 --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.dll.config @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.pdb b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.pdb new file mode 100644 index 00000000..94c68931 Binary files /dev/null and b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.pdb differ diff --git a/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.tasks b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.tasks new file mode 100644 index 00000000..5c2f4042 --- /dev/null +++ b/build/MSBuild.ExtensionPack.4.0.2.0/MSBuild.ExtensionPack.tasks @@ -0,0 +1,131 @@ + + + + $(MSBuildProjectDirectory) + $(BuildPath)\..\..\BuildBinaries\ + $(MSBuildExtensionsPath)\ExtensionPack\4.0\ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/UnitTests/LinearAlgebraTests/Complex/DiagonalMatrixTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/DiagonalMatrixTests.cs index b9423638..cf969338 100644 --- a/src/UnitTests/LinearAlgebraTests/Complex/DiagonalMatrixTests.cs +++ b/src/UnitTests/LinearAlgebraTests/Complex/DiagonalMatrixTests.cs @@ -518,5 +518,69 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex var matrix = TestMatrices["Tall3x2"]; Assert.Throws(() => matrix.Determinant()); } + + /// + /// Test whether the index enumerator returns the correct values. + /// + [Test] + public override void CanUseIndexedEnumerator() + { + var matrix = TestMatrices["Singular3x3"]; + var enumerator = matrix.IndexedEnumerator().GetEnumerator(); + + enumerator.MoveNext(); + var item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(new Complex(1.0, 1.0), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(Complex.Zero, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(Complex.Zero, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(Complex.Zero, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(new Complex(1.0, 1.0), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(Complex.Zero, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(Complex.Zero, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(Complex.Zero, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(new Complex(2.0, 1.0), item.Item3); + } } } diff --git a/src/UnitTests/LinearAlgebraTests/Complex/MatrixTests.cs b/src/UnitTests/LinearAlgebraTests/Complex/MatrixTests.cs index 7bb4b3df..19031f3f 100644 --- a/src/UnitTests/LinearAlgebraTests/Complex/MatrixTests.cs +++ b/src/UnitTests/LinearAlgebraTests/Complex/MatrixTests.cs @@ -1787,5 +1787,69 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex matrix = TestMatrices["Tall3x2"]; AssertHelpers.AlmostEqual(7.35826643761172, matrix.L2Norm(), 14); } + + /// + /// Test whether the index enumerator returns the correct values. + /// + [Test] + public virtual void CanUseIndexedEnumerator() + { + var matrix = TestMatrices["Singular3x3"]; + var enumerator = matrix.IndexedEnumerator().GetEnumerator(); + + enumerator.MoveNext(); + var item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(new Complex(1.0, 1.0), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(new Complex(1.0, 1.0), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(new Complex(2.0, 1.0), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(new Complex(1.0, 1.0), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(new Complex(1.0, 1.0), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(new Complex(2.0, 1.0), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(new Complex(1.0, 1.0), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(new Complex(1.0, 1.0), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(new Complex(2.0, 1.0), item.Item3); + } } } diff --git a/src/UnitTests/LinearAlgebraTests/Complex32/DiagonalMatrixTests.cs b/src/UnitTests/LinearAlgebraTests/Complex32/DiagonalMatrixTests.cs index 55e4c8ef..d1ba3e6f 100644 --- a/src/UnitTests/LinearAlgebraTests/Complex32/DiagonalMatrixTests.cs +++ b/src/UnitTests/LinearAlgebraTests/Complex32/DiagonalMatrixTests.cs @@ -518,5 +518,69 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32 var matrix = TestMatrices["Tall3x2"]; Assert.Throws(() => matrix.Determinant()); } + + /// + /// Test whether the index enumerator returns the correct values. + /// + [Test] + public override void CanUseIndexedEnumerator() + { + var matrix = TestMatrices["Singular3x3"]; + var enumerator = matrix.IndexedEnumerator().GetEnumerator(); + + enumerator.MoveNext(); + var item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(new Complex32(1.0f, 1.0f), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(Complex32.Zero, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(Complex32.Zero, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(Complex32.Zero, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(new Complex32(1.0f, 1.0f), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(Complex32.Zero, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(Complex32.Zero, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(Complex32.Zero, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(new Complex32(2.0f, 1.0f), item.Item3); + } } } diff --git a/src/UnitTests/LinearAlgebraTests/Complex32/MatrixTests.cs b/src/UnitTests/LinearAlgebraTests/Complex32/MatrixTests.cs index 703fc028..1be67a4f 100644 --- a/src/UnitTests/LinearAlgebraTests/Complex32/MatrixTests.cs +++ b/src/UnitTests/LinearAlgebraTests/Complex32/MatrixTests.cs @@ -1787,5 +1787,69 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32 matrix = TestMatrices["Tall3x2"]; AssertHelpers.AlmostEqual(7.3582664f, matrix.L2Norm().Real, 6); } + + /// + /// Test whether the index enumerator returns the correct values. + /// + [Test] + public virtual void CanUseIndexedEnumerator() + { + var matrix = TestMatrices["Singular3x3"]; + var enumerator = matrix.IndexedEnumerator().GetEnumerator(); + + enumerator.MoveNext(); + var item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(new Complex32(1.0f, 1.0f), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(new Complex32(1.0f, 1.0f), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(new Complex32(2.0f, 1.0f), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(new Complex32(1.0f, 1.0f), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(new Complex32(1.0f, 1.0f), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(new Complex32(2.0f, 1.0f), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(new Complex32(1.0f, 1.0f), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(new Complex32(1.0f, 1.0f), item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(new Complex32(2.0f, 1.0f), item.Item3); + } } } diff --git a/src/UnitTests/LinearAlgebraTests/Double/DiagonalMatrixTests.cs b/src/UnitTests/LinearAlgebraTests/Double/DiagonalMatrixTests.cs index 1e60252b..20b6796f 100644 --- a/src/UnitTests/LinearAlgebraTests/Double/DiagonalMatrixTests.cs +++ b/src/UnitTests/LinearAlgebraTests/Double/DiagonalMatrixTests.cs @@ -518,5 +518,69 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double var matrix = TestMatrices["Tall3x2"]; Assert.Throws(() => matrix.Determinant()); } + + /// + /// Test whether the index enumerator returns the correct values. + /// + [Test] + public override void CanUseIndexedEnumerator() + { + var matrix = TestMatrices["Singular3x3"]; + var enumerator = matrix.IndexedEnumerator().GetEnumerator(); + + enumerator.MoveNext(); + var item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(1.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(0.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(0.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(0.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(1.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(0.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(0.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(0.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(2.0, item.Item3); + } } } diff --git a/src/UnitTests/LinearAlgebraTests/Double/MatrixTests.Arithmetic.cs b/src/UnitTests/LinearAlgebraTests/Double/MatrixTests.Arithmetic.cs index 0d19f7b3..75f35ba4 100644 --- a/src/UnitTests/LinearAlgebraTests/Double/MatrixTests.Arithmetic.cs +++ b/src/UnitTests/LinearAlgebraTests/Double/MatrixTests.Arithmetic.cs @@ -472,7 +472,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double } /// - /// Subtract operator when right side has fewer columns throws ArgumentOutOfRangeException + /// Subtract operator when right side has fewer columns throws ArgumentOutOfRangeException /// [Test] public void SubtractOperatorWhenRightSideHasFewerColumnsThrowsArgumentOutOfRangeException() @@ -483,7 +483,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double } /// - /// Subtract operator when right side has fewer rows throws ArgumentOutOfRangeException + /// Subtract operator when right side has fewer rows throws ArgumentOutOfRangeException /// [Test] public void SubtractOperatorWhenRightSideHasFewerRowsThrowsArgumentOutOfRangeException() @@ -769,7 +769,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double } /// - /// Can nomalize columns of a matrix. + /// Can normalize columns of a matrix. /// /// The norm under which to normalize the columns under. [Test, Sequential] @@ -794,7 +794,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double } /// - /// Can nomalize rows of a matrix. + /// Can normalize rows of a matrix. /// /// The norm under which to normalize the rows under. [Test, Sequential] diff --git a/src/UnitTests/LinearAlgebraTests/Double/MatrixTests.cs b/src/UnitTests/LinearAlgebraTests/Double/MatrixTests.cs index 435df077..bc81a4e9 100644 --- a/src/UnitTests/LinearAlgebraTests/Double/MatrixTests.cs +++ b/src/UnitTests/LinearAlgebraTests/Double/MatrixTests.cs @@ -1728,5 +1728,69 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double matrix = TestMatrices["Tall3x2"]; AssertHelpers.AlmostEqual(7.182727033856683, matrix.L2Norm(), 14); } + + /// + /// Test whether the index enumerator returns the correct values. + /// + [Test] + public virtual void CanUseIndexedEnumerator() + { + var matrix = TestMatrices["Singular3x3"]; + var enumerator = matrix.IndexedEnumerator().GetEnumerator(); + + enumerator.MoveNext(); + var item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(1.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(1.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(2.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(1.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(1.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(2.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(1.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(1.0, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(2.0, item.Item3); + } } } diff --git a/src/UnitTests/LinearAlgebraTests/Single/DiagonalMatrixTests.cs b/src/UnitTests/LinearAlgebraTests/Single/DiagonalMatrixTests.cs index 7ba9455a..c3b6b7cb 100644 --- a/src/UnitTests/LinearAlgebraTests/Single/DiagonalMatrixTests.cs +++ b/src/UnitTests/LinearAlgebraTests/Single/DiagonalMatrixTests.cs @@ -517,5 +517,69 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single var matrix = TestMatrices["Tall3x2"]; Assert.Throws(() => matrix.Determinant()); } + + /// + /// Test whether the index enumerator returns the correct values. + /// + [Test] + public override void CanUseIndexedEnumerator() + { + var matrix = TestMatrices["Singular3x3"]; + var enumerator = matrix.IndexedEnumerator().GetEnumerator(); + + enumerator.MoveNext(); + var item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(1.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(0.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(0.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(0.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(1.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(0.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(0.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(0.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(2.0f, item.Item3); + } } } diff --git a/src/UnitTests/LinearAlgebraTests/Single/MatrixTests.cs b/src/UnitTests/LinearAlgebraTests/Single/MatrixTests.cs index ee2eacba..5611fc6b 100644 --- a/src/UnitTests/LinearAlgebraTests/Single/MatrixTests.cs +++ b/src/UnitTests/LinearAlgebraTests/Single/MatrixTests.cs @@ -1728,5 +1728,69 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single matrix = TestMatrices["Tall3x2"]; AssertHelpers.AlmostEqual(7.182727033856683f, matrix.L2Norm(), 7); } + + /// + /// Test whether the index enumerator returns the correct values. + /// + [Test] + public virtual void CanUseIndexedEnumerator() + { + var matrix = TestMatrices["Singular3x3"]; + var enumerator = matrix.IndexedEnumerator().GetEnumerator(); + + enumerator.MoveNext(); + var item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(1.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(1.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(0, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(2.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(1.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(1.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(1, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(2.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(0, item.Item2); + Assert.AreEqual(1.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(1, item.Item2); + Assert.AreEqual(1.0f, item.Item3); + + enumerator.MoveNext(); + item = enumerator.Current; + Assert.AreEqual(2, item.Item1); + Assert.AreEqual(2, item.Item2); + Assert.AreEqual(2.0f, item.Item3); + } } }